Bỏ qua đến nội dung chính

Token Honeypot là gì?

Đã cập nhật cách đây hơn 2 tuần

Token Honeypot là một loại tiền điện tử độc hại được tạo ra bởi các nhà phát triển cố tình chèn các hạn chế hoặc cửa hậu vào hợp đồng thông minh. Điều này cho phép người dùng bình thường mua token nhưng ngăn họ bán nó (hoặc khiến việc bán phải chịu phí cực cao / cơ chế danh sách đen), khiến tiền của họ bị mắc kẹt trong ví.
Bề ngoài, các token này có vẻ hợp pháp — chúng có thể có các cặp thanh khoản, biểu tượng token và quảng bá cộng đồng sôi nổi — nhưng một khi người dùng mua token trên sàn giao dịch phi tập trung, họ sớm phát hiện ra rằng việc bán bị từ chối hoặc phí giao dịch quá cao khiến việc thu hồi vốn đầu tư trở nên bất khả thi.

Cách tránh thua lỗ và cách kiểm tra

  1. Bạn có thể nhập địa chỉ hợp đồng của token vào một trình khám phá blockchain như OKLINK (như trong ví dụ bên dưới). Nếu token là Honeypot, nó thường sẽ được đánh dấu tương ứng.

  2. Vì các token mới được ra mắt trên blockchain hàng ngày, và các trình khám phá có thể không cập nhật kịp thời, bạn có thể thực hiện kiểm tra thủ công bằng các phương pháp sau.

    Kiểm tra trong tab Hợp đồng Đọc (Read Contract):

    owner() — Nếu nó trả về một giá trị khác 0x000, có nghĩa là chủ sở hữu vẫn còn quyền kiểm soát.

    totalSupply()balanceOf() — Xác minh phân phối token ban đầu.

    Tìm kiếm các hàm hoặc biến như isExcludedFromFee(address), isBlacklisted(address), maxTxAmount(), và tradingEnabled() (các hợp đồng khác nhau có thể sử dụng tên khác nhau, nhưng chúng phục vụ các mục đích tương tự).

    Trong tab Hợp đồng Ghi (Write Contract) (chỉ truy cập được nếu bạn có quyền):

    Kiểm tra xem có các hàm ghi nhạy cảm như
    setFeePercent, setBlacklist, renounceOwnership, hoặc setTradingEnabled hay không.
    Nếu chúng tồn tại và chỉ có thể được gọi bởi chủ sở hữu, token đó mang rủi ro cao.

    Tìm kiếm mã nguồn cho các từ khóa sau (không phân biệt chữ hoa chữ thường hoặc có dấu gạch dưới):
    blacklist, isBot, onlyOwner, setFee, maxTx, excludedFromFee, trading, swapAndLiquify, transferFrom, approve, mint, burn, renounceOwnership, liquidity.

    Đặc biệt chú ý đến việc triển khai transfer, _transfer, và transferFrom — kiểm tra xem chúng có xử lý to == pair hoặc from == pair khác nhau hay không (để phân biệt giữa các thao tác mua và bán).

    Nếu bạn tìm thấy mã như

    require(!_isBlacklisted[from]);   if (to == pair) { fee = 99; }

    đây là một dấu hiệu cảnh báo rõ ràng.

    Kiểm tra xem hợp đồng có gọi một router hay không (ví dụ: Pancake/Uniswap Router) và liệu quy trình swap có bao gồm logic phức tạp như lockTheSwap hoặc _tax hay không, điều này có thể ngăn chặn việc hoán đổi bình thường.

Nội dung này có giải đáp được câu hỏi của bạn không?