TRC20 và hàm approve()
TRC20 là tiêu chuẩn token của TRON, mô phỏng ERC20 Ethereum. Token như USDT, USDC, WTRX, BTT triển khai giao diện chung gồm transfer, balanceOf, approve, allowance và transferFrom.
Khi gọi approve(spender, amount) trên hợp đồng TRC20, bạn ủy quyền địa chỉ cụ thể — thường là smart contract — rút tối đa amount token từ ví bằng transferFrom. Approval lưu on-chain trong mapping allowance của hợp đồng token và tồn tại cho đến khi bạn thay đổi hoặc revoke.
Hợp đồng USDT quan trọng nhất trên TRON là TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t do Tether phát hành. Vì USDT là mục tiêu chính của drainer, theo dõi approval trên hợp đồng này nên là ưu tiên của mọi người dùng TRON.
Allowance so với quyền sở hữu
Cấp approval không chuyển quyền sở hữu token. Bạn vẫn giữ USDT trong ví. Điều thay đổi là spender được phép khởi tạo chuyển khoản trong giới hạn allowance mà không cần ví ký từng lần.
Hãy tưởng tượng như ủy quyền thẻ tín dụng cho khách sạn: khách sạn có thể trừ tới số đã ủy quyền, nhưng tiền vẫn trong tài khoản cho đến khi họ thực sự trừ. Drainer là "merchant" độc hại trừ toàn bộ số ủy quyền — thường là cả số dư nếu bạn cấp unlimited approval.
Bạn có thể kiểm tra allowance bằng cách gọi allowance(owner, spender) trên hợp đồng token, hoặc dùng RevokeUSDT scanner để liệt kê mọi approval cùng lúc.
Tại sao dApp yêu cầu approval
Sàn DEX, giao thức cho vay và cầu nối cần approval để vận hành hiệu quả:
- Swap DEX — SunSwap và router tương tự rút USDT từ ví vào hợp đồng swap khi bạn giao dịch.
- Cho vay — JustLend và nền tảng khác chuyển token đã approve vào pool khi nạp.
- Staking và farming — hợp đồng yield cần quyền khóa token trong vault.
Không có approval, bạn phải ký giao dịch transfer riêng cho mỗi lần swap hoặc nạp — không thực tế với quy trình smart contract tự động. Đổi lại là bảo mật: mỗi approval là quyền lâu dài, vượt ra ngoài phiên trình duyệt.
Giải thích unlimited approval
Nhiều dApp yêu cầu approval "unlimited" bằng cách đặt amount bằng giá trị tối đa uint256 (2256 − 1). Tránh lặp giao dịch approve trong tương lai — một chữ ký bao phủ mọi lần nạp hoặc swap sau.
Với giao thức đáng tin, đã audit mà bạn dùng thường xuyên, unlimited approval là pattern UX phổ biến. Nguy hiểm khi người dùng cấp unlimited USDT cho:
- Site phishing mạo dApp hợp pháp
- Trang airdrop hoặc mint NFT giả
- Hợp đồng độc hại triển khai để drain
- Dự án mới bị xâm phạm hoặc chưa audit
Unlimited approval nghĩa là spender có thể lấy toàn bộ USDT bất cứ lúc nào, không cần nhắc lại. RevokeUSDT đánh dấu unlimited allowance để bạn đánh giá và revoke nhanh. Xem cách trong hướng dẫn revoke USDT.
Approval hiển thị trên TRON thế nào
Khi ký giao dịch approve trong TronLink, TRON mainnet ghi sự kiện Approval trên hợp đồng token. Indexer và công cụ như RevokeUSDT đọc sự kiện này để dựng bức tranh đầy đủ về allowance đang hoạt động.
Sự thật quan trọng về approval TRON:
- Approval theo từng hợp đồng token và spender — USDT cho SunSwap tách biệt với USDC cho cùng router.
- Approval không tự hết hạn — tồn tại đến khi revoke hoặc ghi đè.
- Đặt approve amount mới thay thế allowance trước đó cho spender đó.
- Revoke nghĩa là gọi
approve(spender, 0).
Chi tiết hợp đồng USDT TRC20
Tether USD (USDT) chính thức trên TRON mainnet:
- Hợp đồng:
TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t - Decimals: 6 (1 USDT = 1.000.000 đơn vị cơ sở)
- Tiêu chuẩn: TRC20
Luôn xác minh bạn approve đúng hợp đồng USDT. Scammer đôi khi triển khai token giả tên tương tự. Kiểm tra địa chỉ hợp đồng trên TronScan và đối chiếu danh sách chính thức Tether.
Khi xem approval trong RevokeUSDT, mục USDT tham chiếu hợp đồng này. Mọi unlimited approval cho spender lạ trên TR7NHqje… nên được ưu tiên revoke cao.
Approval vs transfer: biết sự khác biệt
Tấn công phishing thường gây nhầm lẫn bằng preview giao dịch có vẻ vô hại. Phân biệt quan trọng:
- approve — cấp quyền chi tiêu; token vẫn trong ví cho đến khi spender hành động.
- transfer — gửi token ngay sang địa chỉ khác.
- transferFrom — spender di chuyển token bằng approval có sẵn (bạn có thể không thấy tx — drainer gửi).
Nếu TronLink hiển thị yêu cầu approve trên site không tin, hãy từ chối. Nếu đã approve, revoke ngay qua scanner và đọc chống TRC20 drainer.
Thực hành tốt cho TRC20 approval
- Ưu tiên approval có giới hạn khi dApp hỗ trợ chỉ định số lượng.
- Revoke approval của dApp không còn dùng.
- Quét ví hàng tháng bằng RevokeUSDT.
- Không approve trên site truy cập qua DM, email hoặc quảng cáo mạng xã hội.
- Bookmark URL dApp chính thức thay vì tìm Google.
TRC20 approval là primitive DeFi mạnh mẽ trở thành gánh nặng khi hiểu sai. Audit thường xuyên và revoke kịp thời quyền cũ hoặc đáng ngờ là biện pháp phòng thủ hiệu quả nhất ngoài cold storage.
Xem mọi TRC20 approval
RevokeUSDT quét TRON mainnet và liệt kê mọi allowance đang hoạt động — kể cả quyền USDT unlimited — trong một dashboard.
Quét ví của bạn