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

Token Honeypot là gì?

Đã cập nhật hôm nay

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 thông 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), thực chất là khóa chặt tiền của họ trong ví.
Bề ngoài, các token như vậy có vẻ hợp pháp — chúng có thể có các cặp thanh khoản, logo token và quảng bá cộng đồng tích cực — nhưng một khi người dùng mua token trên sàn giao dịch phi tập trung, họ sẽ 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 đến mức không thể thu hồi vốn đầu tư của họ.

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 trình khám phá chuỗi khối 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. Do các token mới được ra mắt trên blockchain mỗi 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ể tự kiểm tra thủ công bằng các phương pháp sau.

    Kiểm tra trong tab Read Contract:

    owner() — Nếu nó trả về một giá trị khác 0x000, điều đó 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()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 Write Contract (chỉ có thể truy cập 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 những thứ này tồn tại và chỉ có thể được chủ sở hữu gọi, token có 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 đỏ rõ ràng.

    Kiểm tra xem hợp đồng có gọi trình điều khiển định tuyến (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 thông thường.

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