살 수는 있는데 팔 수 없는 토큰을 흔히 ‘허니팟’이라고 부릅니다. 원리는 단순합니다. ERC-20 토큰은 각각 하나의 스마트 계약이고, 계약을 쓴 사람이 그 계약이 할 일을 정합니다. 표준은 잔액이 모자랄 때 전송을 실패시키라고 권할 뿐, 그 밖의 조건으로 전송을 막거나 수수료를 떼는 코드를 금지하지 않습니다. 그래서 계약 코드가 특정 주소의 매도만 막거나 매도 때 큰 몫을 떼도록 짜여 있으면 화면에서는 정상 토큰처럼 보여도 팔리지 않습니다. 이 글은 ethereum.org, ERC-20 표준(EIP-20), OpenZeppelin 문서로 확인한 구조만 설명하며 특정 토큰을 사기로 판정하지 않습니다.
확인 기준일 2026-10-27 · 다음 확인 예정 2027-01-27
토큰은 계약 코드가 규칙을 정합니다
ethereum.org의 스캠 토큰 안내는 모든 ERC-20 토큰이 스마트 계약으로 구현되며, 누구나 같은 이름과 기호를 쓴 계약을 배포할 수 있다고 설명합니다. 또 “계약을 쓰는 사람이 계약이 무엇을 할지 정한다”고 적습니다. 이름과 기호, 심지어 유명 주소가 보유자로 보이는 것도 정상 토큰의 증거가 되지 않는다고 안내합니다.
ERC-20 표준은 transfer가 Transfer 이벤트를 내야 하고, 보내는 사람의 잔액이 모자라면 실패해야 한다(SHOULD throw)고 정합니다. 동시에 호출하는 쪽은 반환값 false를 처리해야 한다고 적습니다. 즉 표준은 최소한의 모양을 정할 뿐, 전송 조건을 더 붙이는 것을 막지 않습니다. 반환값이 실제 전송 결과와 다를 수 있는 문제는 ERC-20 전송 성공 반환값과 실제 잔액 변화 글에서 따로 다뤘습니다.
전송 규칙을 바꾸는 자리
널리 쓰이는 OpenZeppelin ERC20 구현 문서는 전송·발행·소각에 대한 모든 맞춤 규칙을 _update 함수를 바꿔서 넣으라고 안내합니다. 같은 문서는 내부 전송 함수가 자동 수수료나 삭감 같은 기능을 구현하는 데 쓰일 수 있다고 예를 듭니다. 이 자리는 정상적인 기능에도 쓰이지만, 같은 자리에 주소별 차단이나 과도한 매도 수수료를 넣을 수도 있습니다.
| 유형 | 화면에서 보이는 현상 | 확인할 곳 |
|---|---|---|
| 주소별 전송 차단 | 매수는 되지만 매도 거래가 실패함 | 계약 소스의 전송 함수 조건문 |
| 매도 시 수수료 부과 | 매도는 되지만 받는 금액이 거의 없음 | 수수료율 변수와 변경 권한 |
| 운영자만 바꿀 수 있는 설정 | 처음엔 팔리다가 나중에 막힘 | 소유자 전용 함수와 권한 이전 여부 |
위 표는 구조를 설명하려는 예시입니다. 실제 토큰이 어떤 유형인지는 검증된 소스 코드를 읽어야 알 수 있고, 소스가 공개되지 않은 계약은 화면만으로 판단할 수 없습니다. 거래 실패 메시지가 가스 부족이나 슬리피지 초과 때문일 수도 있으므로 Out of gas와 슬리피지 실패 구분 글도 함께 보세요.
ethereum.org가 권하는 확인 순서
- 계약 주소 확인: 정상 토큰은 발행 조직의 공식 웹사이트에 계약 주소가 있습니다. 같은 이름의 토큰이 여러 개면 주소로 구분합니다.
- 유동성 확인: 정상 토큰은 탈중앙 거래소의 유동성 풀이 큽니다. 안내의 예시에서는 가짜 토큰을 아주 조금만 사도 가격이 90% 넘게 움직였습니다.
- 블록 탐색기 표시 확인: Etherscan은 커뮤니티가 신고한 스캠 토큰을 표시합니다. 다만 안내는 Etherscan도 권위 있는 판정 기관이 아니라고 덧붙입니다.
- 에어드롭 주의: 모르는 토큰이 지갑에 들어오고 받으러 오라는 사이트로 유도하면, 서명 요청이 자산을 넘기는 거래일 수 있습니다.
토큰을 새 계약으로 옮긴다는 공지를 볼 때 확인할 점은 토큰 마이그레이션 공지 검증법 글에 정리했습니다.
자주 묻는 질문
매도가 안 되면 곧 사기 토큰인가요?
단정할 수 없습니다. 가스 부족, 슬리피지 설정, 거래 정지 기간 같은 다른 이유로도 매도가 실패합니다. 계약 소스와 실패 사유를 확인해야 합니다.
ERC-20 표준인데 왜 전송을 막을 수 있나요?
ERC-20 표준은 기본 함수의 모양과 잔액 부족 시 실패 같은 최소 규칙을 정할 뿐, 추가 조건을 금지하지 않습니다. 계약을 쓴 사람이 전송 규칙을 정합니다.
이름과 기호가 유명 토큰과 같으면 안전한가요?
아닙니다. ethereum.org는 누구나 같은 이름과 기호로 계약을 배포할 수 있다고 안내합니다. 발행 조직의 공식 사이트에서 계약 주소를 확인해야 합니다.



