Cấp quyền Approve là gì? Cách dùng Revoke.cash bảo vệ ví crypto
Giải thích chi tiết cơ chế Approve (cấp quyền) trên ví crypto, rủi ro bị rút tiền khi cấp quyền không giới hạn, và hướng dẫn sử dụng Revoke.cash để thu hồi quyền truy cập bảo vệ tài sản.
15 tháng 04 2026

Mỗi lần bạn swap token trên Uniswap, gửi tiền vào một giao thức DeFi, hay mua NFT trên một marketplace mới, MetaMask sẽ hiện lên một cửa sổ yêu cầu bạn Approve (Cấp quyền). Phần lớn người dùng nhấn "Confirm" mà không đọc nội dung. Đây là một trong những thói quen nguy hiểm nhất trong thế giới crypto, vì chỉ cần một lần Approve sai, toàn bộ tài sản trong ví có thể bị rút sạch mà bạn không hề hay biết.
Tóm tắt nhanh (TL;DR): Approve là thao tác cấp quyền cho một hợp đồng thông minh được phép sử dụng token trong ví của bạn. Nếu bạn cấp quyền "Unlimited" (không giới hạn) cho một hợp đồng độc hại, nó có thể rút toàn bộ token bất kỳ lúc nào mà không cần sự đồng ý lần hai. Revoke.cash là công cụ miễn phí giúp bạn kiểm tra và thu hồi các quyền Approve đã cấp.
1. Cơ chế Approve hoạt động như thế nào?
Trên Blockchain Ethereum và các mạng tương thích EVM, khi bạn muốn một ứng dụng sử dụng token của mình (ví dụ: swap USDT sang ETH trên Uniswap), bạn cần thực hiện hai bước riêng biệt:
Bước 1: Approve (Cấp quyền): Bạn cho phép hợp đồng thông minh của Uniswap được quyền truy cập và sử dụng USDT trong ví. Đây là một giao dịch riêng biệt trên Blockchain, bạn phải trả phí Gas cho bước này.
Bước 2: Swap (Thực hiện giao dịch): Sau khi đã có quyền, Uniswap mới thực sự di chuyển USDT từ ví bạn sang bể thanh khoản và trả lại ETH.
Vấn đề nằm ở đâu? Mặc định, nhiều ứng dụng DeFi yêu cầu bạn Approve với số lượng Unlimited (không giới hạn). Nghĩa là dù bạn chỉ muốn swap 100 USDT, bạn lại cấp quyền cho hợp đồng đó truy cập toàn bộ USDT trong ví, không giới hạn số lượng và không giới hạn thời gian.
Hãy hình dung Approve giống như bạn đưa cho ai đó chìa khóa tủ két sắt. Ban đầu bạn chỉ muốn họ lấy ra 100 USD, nhưng thực tế bạn đã giao cho họ quyền mở tủ bất kỳ lúc nào và lấy bao nhiêu tùy thích.

2. Tại sao Approve Unlimited lại nguy hiểm?
Quyền Approve tồn tại vĩnh viễn trên Blockchain cho đến khi bạn chủ động thu hồi. Điều này tạo ra nhiều kịch bản rủi ro:
Kịch bản 1: Hợp đồng bị hack
Bạn Approve USDT cho một giao thức DeFi uy tín ngày hôm nay. Sáu tháng sau, giao thức đó bị hacker khai thác lỗ hổng bảo mật. Hacker sử dụng quyền Approve mà bạn đã cấp trước đó để rút toàn bộ USDT trong ví, dù bạn đã rút hết tài sản khỏi giao thức từ lâu.
Ví dụ thực tế: Tháng 3 năm 2023, giao thức Multichain bị khai thác, hacker đã sử dụng các quyền Approve cũ để rút khoảng 126 triệu USD từ ví người dùng.
Kịch bản 2: Dự án lừa đảo cố tình
Bạn tương tác với một dApp mới, website trông chuyên nghiệp, được quảng bá rộng rãi trên Twitter. Khi kết nối ví, dApp yêu cầu Approve token. Hợp đồng thông minh được viết sẵn backdoor, cho phép nhà phát triển rút tiền từ tất cả địa chỉ đã Approve bất kỳ lúc nào.
Kịch bản 3: Quyền Approve bị lãng quên
Theo thời gian, một ví hoạt động tích cực có thể tích lũy hàng chục đến hàng trăm quyền Approve cho các hợp đồng khác nhau. Phần lớn các quyền này không còn cần thiết nhưng vẫn tồn tại, tạo ra bề mặt tấn công ngày càng lớn.
3. Hướng dẫn sử dụng Revoke.cash từng bước
Revoke.cash là công cụ miễn phí, mã nguồn mở, cho phép bạn kiểm tra và thu hồi tất cả quyền Approve đã cấp.
Bước 1: Truy cập và kết nối ví
- Truy cập revoke.cash (kiểm tra kỹ URL, cẩn thận website giả mạo).
- Nhấn "Connect Wallet" và kết nối MetaMask.
- Chọn mạng lưới bạn muốn kiểm tra (Ethereum, Arbitrum, Polygon, BNB Chain...).
Bước 2: Kiểm tra danh sách Approve
- Revoke.cash sẽ quét toàn bộ lịch sử giao dịch và hiển thị danh sách tất cả các hợp đồng mà bạn đã cấp quyền.
- Mỗi dòng hiển thị: Token đã Approve, Hợp đồng được cấp quyền, Số lượng cho phép (Limited hoặc Unlimited).
Bước 3: Thu hồi quyền không cần thiết
- Với mỗi quyền Approve bạn muốn thu hồi, nhấn nút "Revoke".
- MetaMask sẽ yêu cầu bạn xác nhận giao dịch thu hồi. Lưu ý: mỗi lần Revoke là một giao dịch on-chain, bạn phải trả phí Gas.
- Sau khi giao dịch được xác nhận, hợp đồng đó sẽ không còn quyền truy cập token của bạn.
Mẹo tiết kiệm phí khi Revoke
- Thực hiện Revoke trên mạng Layer 2 (Arbitrum, Polygon) trước vì phí Gas rất thấp (dưới 0.1 USD/giao dịch).
- Trên Ethereum Mainnet, chọn thời điểm Gas thấp (9:00-15:00 giờ Việt Nam ngày thường).
- Ưu tiên Revoke các quyền Approve Unlimited cho token có giá trị lớn (USDT, USDC, ETH...).

4. Cách Approve thông minh để giảm thiểu rủi ro
Thay vì Revoke sau khi đã cấp quyền, cách tốt nhất là Approve đúng ngay từ đầu:
- Đặt giới hạn cụ thể: Khi MetaMask hiển thị cửa sổ Approve, nhấn vào "Edit Permission" hoặc "Use Custom Spend Limit" và nhập chính xác số token bạn cần sử dụng (ví dụ: 100 USDT thay vì Unlimited).
- Kiểm tra địa chỉ hợp đồng: Trước khi Approve, đối chiếu địa chỉ hợp đồng hiển thị trên MetaMask với địa chỉ chính thức trên trang web dự án hoặc Etherscan.
- Sử dụng công cụ mô phỏng: Các tiện ích mở rộng như Pocket Universe hoặc Fire sẽ mô phỏng giao dịch và cảnh báo nếu Approve có thể gây rủi ro.
- Lịch trình Revoke định kỳ: Đặt lịch kiểm tra Revoke.cash ít nhất 1 lần/tuần hoặc sau mỗi lần tương tác với một dApp mới.
5. Các công cụ kiểm tra Approve khác ngoài Revoke.cash
| Công cụ | Mạng hỗ trợ | Đặc điểm |
|---|---|---|
| Revoke.cash | EVM (Ethereum, Arbitrum, Polygon...) | Mã nguồn mở, giao diện đơn giản |
| Etherscan Token Approval Checker | Ethereum | Tích hợp sẵn trên Etherscan |
| Debank | Multi-chain | Dashboard quản lý DeFi tổng hợp |
| Rabby Wallet | EVM | Tích hợp cảnh báo Approve ngay trong ví |
CÂU HỎI THƯỜNG GẶP (FAQ) DÀNH CHO NHÀ ĐẦU TƯ
Revoke xong thì lần sau dùng lại dApp đó có phải Approve lại không?
Có. Sau khi Revoke, hợp đồng sẽ mất quyền truy cập token. Lần tiếp theo bạn muốn sử dụng dApp đó, bạn phải Approve lại. Điều này tạo thêm một lần trả phí Gas, nhưng đổi lại sự an toàn cao hơn đáng kể.
Approve và "Connect Wallet" có giống nhau không?
Hoàn toàn khác nhau. "Connect Wallet" chỉ cho phép dApp đọc thông tin ví (địa chỉ, số dư), không có quyền di chuyển tài sản. Approve mới là thao tác cấp quyền cho hợp đồng thông minh được phép sử dụng token của bạn. Tuy nhiên, sau khi Connect, dApp sẽ thường yêu cầu Approve tiếp. Đó mới là bước nguy hiểm.
Tại sao nhiều dApp lại yêu cầu Approve Unlimited?
Lý do chính là tiết kiệm phí Gas cho người dùng. Nếu mỗi lần swap 100 USDT đều phải Approve lại, bạn sẽ phải trả phí Gas gấp đôi cho mỗi giao dịch. Approve Unlimited giúp bạn chỉ trả phí Approve một lần duy nhất. Tuy nhiên, sự tiện lợi này đi kèm rủi ro bảo mật. Các dApp uy tín đang dần hỗ trợ tùy chọn Approve có giới hạn.
Tóm lại
Cơ chế Approve là tính năng cần thiết để DeFi hoạt động, nhưng cũng là lỗ hổng bảo mật lớn nhất nếu người dùng không cảnh giác. Quy tắc đơn giản: chỉ Approve số lượng token bạn thực sự cần, chỉ Approve cho các dApp đã được kiểm chứng, và kiểm tra Revoke.cash định kỳ để thu hồi quyền không còn sử dụng. Ngoài Approve, thiết bị cá nhân của bạn cũng là một mục tiêu tấn công mà nhiều nhà đầu tư thường xem nhẹ.
Đọc tiếp: Mã độc Malware nhắm vào ví Crypto - Cách bảo vệ điện thoại và máy tính
Bài viết có hữu ích?



