Un token Honeypot este o criptomonedă rău intenționată creată de dezvoltatori care introduc în mod intenționat restricții sau uși din spate în contractul inteligent. Acest lucru permite utilizatorilor obișnuiți să cumpără token-ul, dar îi împiedică să-l vânde (sau face ca vânzarea să fie supusă unor comisioane extrem de mari/mecanisme pe lista neagră), prinzând efectiv fondurile lor în portofel. La suprafață, astfel de jetoane pot părea legitime - pot avea perechi de lichidități, logo-uri de jetoane și promovare activă a comunității - dar odată ce un utilizator achiziționează jetonul pe un schimb descentralizat, descoperă curând că vânzarea este respinsă sau taxele de tranzacție sunt atât de mari încât devine imposibil să-și recupereze investiția.
Cum să evitați pierderile și cum să verificați
Puteți introduce adresa contractului jetonului într-un explorator blockchain, cum ar fi OKLINK (așa cum se arată în exemplul de mai jos). Dacă jetonul este un Honeypot, va fi de obicei marcat corespunzător.
2. Deoarece noi token-uri sunt lansate pe blockchain în fiecare zi și este posibil ca exploratorii să nu se actualizeze la timp, puteți efectua o autoverificare manuală folosind următoarele metode.
Verificați fila Citiți contractul:
owner() — Dacă returnează o altă valoare decât 0x000..., înseamnă că proprietarul încă mai are controlul.
totalSupply() și balanceOf() — Verificați distribuția inițială a simbolului.
Căutați funcții sau variabile precum isExcludedFromFee(address), isBlacklisted(address), maxTxAmount() și tradingEnabled() (diferitele contracte pot folosi nume diferite, dar au scopuri similare).
În fila Scrieți contract (accesibil numai dacă aveți permisiunea):
Verificați dacă există funcții de scriere sensibile, cum ar fi setFeePercent, setBlacklist, renounceOwnership sau setTradingEnabled. Dacă acestea există și pot fi apelate doar de proprietar, tokenul prezintă un risc ridicat.
Căutați codul sursă pentru următoarele cuvinte cheie (fără diferențiere între majuscule și minuscule sau cu caractere de subliniere): listă neagră, isBot, onlyOwner, setFee, maxTx, excludedFromFee, trading, swapAndLiquify, transferFrom, approve, mint, burn, renuntare, rn` lichie``
Acordați o atenție deosebită implementării transfer, _transfer și transferFrom — verificați dacă tratează diferit to == pair sau from == pair (pentru a distinge între operațiunile de cumpărare și vânzare).
Dacă găsiți cod precum
cere(!_este pe lista neagră[din]); if (to == pair) { taxă = 99; }
acesta este un steagul roșu clar.
Verificați dacă contractul apelează un router (de exemplu, Pancake/Uniswap Router) și dacă procesul de „swap” include o logică complexă, cum ar fi „lockTheSwap” sau „_tax”, care ar putea împiedica schimbarea normală.

