Hợp đồng thông minh
Tất cả các hợp đồng on-chain sẽ được triển khai tại TGE (Q1–Q2 2027). Trước TGE, trang này là một đặc tả hướng tới tương lai.
Bộ hợp đồng
| Hợp đồng | Mạng | Mục đích |
|---|---|---|
POP_Jetton | TON | Token $POP (chuẩn Jetton TEP-74) |
POP_Vesting | TON | Wrapper vesting theo từng bucket, thực thi cliff + giải phóng tuyến tính |
Round_Merkle_Registry | TON | Lưu trữ Merkle Root (gốc Merkle) cho từng Round (vòng), hỗ trợ xác minh bằng chứng |
Dispute_Resolver | TON | Cửa sổ tranh chấp 24 giờ, phạt operator khi có thách thức hợp lệ |
Treasury | TON | Giải ngân quỹ do DAO kiểm soát |
Governance | TON | Quadratic Voting (bỏ phiếu bậc hai) + hệ thống đề xuất dựa trên danh tiếng |
Burn_Address | TON | Nhận $POP từ phí đốt; không thể chi tiêu một cách xác minh được |
Ad_Settlement_Verifier | TON | Bộ xác minh Groth16 cho các lượt xem quảng cáo được chứng thực bằng zk (Giai đoạn 2) |
Đặc tả Jetton $POP
- Chuẩn: TEP-74 (TON Jetton)
- Metadata: TEP-64 on-chain metadata
- Tên: CashPop
- Ký hiệu: $POP
- Số thập phân: 9 (phù hợp với quy ước TON)
- Tổng cung: 10.000.000.000 × 10^9 = 10^19 đơn vị cơ sở
- Có thể mint: Không (giới hạn tại thời điểm triển khai)
- Có thể burn: Có (bởi bất kỳ holder nào, không yêu cầu đặc quyền)
- Có thể nâng cấp: Không (bản thân Jetton là bất biến; các wrapper có thể phát triển)
Logic hợp đồng Vesting
Mỗi bucket phân bổ nhận một instance POP_Vesting riêng. Tham số cho mỗi instance:
beneficiary: địa chỉ được phép claimtotal_amount: tổng số Jetton bị khóacliff_end: timestamp trước đó không được phép claimlinear_end: timestamp tại đó 100% có thể claimclaimed: tổng số đã claim
Số lượng có thể giải phóng tại thời điểm t:
releasable(t) =
if t < cliff_end: 0
elif t >= linear_end: total_amount
else: total_amount * (t - cliff_end) / (linear_end - cliff_end)Trừ đi số đã claim. Không có mở khóa sớm trong bất kỳ điều kiện nào.
Round Merkle Registry (Sổ đăng ký Merkle của Round)
Round Engine (Công cụ Round) cam kết một Merkle Root (gốc Merkle) 32 byte cho mỗi Round (vòng), được gộp hàng ngày vào một giao dịch TON duy nhất:
struct RoundBatch {
uint64 batch_id;
bytes32[] round_roots; // tối đa 1.440 root mỗi batch (60s × 1440 = 24h)
uint64 first_round_id;
}Bất kỳ người dùng nào cũng có thể gửi:
- ID Round
r - Đường dẫn bằng chứng Merkle
p - Kết quả đã claim
(participant, commit, reveal, weight)
Hợp đồng xác minh bằng chứng Merkle so với root trên chuỗi. Nếu hợp lệ, kết quả được công nhận; nếu không hợp lệ, người dùng có thể mở tranh chấp.
Dispute Resolver (Bộ giải quyết tranh chấp)
Khi có tranh chấp hợp lệ:
- Round (vòng) được đánh dấu là vô hiệu.
- Operator bị phạt 1.000 $POP từ stake đã ký quỹ vào Treasury (Kho bạc).
- Người dùng bị ảnh hưởng được hoàn tiền từ Prize Pool (Quỹ giải thưởng) của Round.
- Round (vòng) được giải quyết lại từ nhật ký Engine chính tắc.
Hợp đồng Governance (Quản trị)
Ba hợp đồng:
Proposal_Registry: lưu trữ các đề xuất, theo dõi vòng đời.Vote_Tallying: kiểm phiếu quadratic-vote (bỏ phiếu bậc hai) với trọng số danh tiếng.Execution_Module: thực thi các đề xuất đã được thông qua (thay đổi tham số, giải ngân Treasury).
Xem Governance để biết vòng đời đầy đủ.
Kế hoạch kiểm toán
- Đánh giá nội bộ: liên tục, bởi nhóm giao thức + cố vấn bên ngoài.
- Kiểm toán bên ngoài 1: nhắm mục tiêu vào Trail of Bits, Q3 2026.
- Kiểm toán bên ngoài 2: nhắm mục tiêu vào OtterSec, Q4 2026.
- Bug bounty: ra mắt tại TGE với phân bổ Treasury lên tới 500.000 USD cho mỗi lỗi nghiêm trọng.
Các hợp đồng sẽ không triển khai lên mainnet nếu không có hai cuộc kiểm toán bên ngoài sạch sẽ.