﻿---
title: "전송 수수료 토큰의 위험"
description: "전송 수수료 토큰은 실제 수령량이 전송량보다 적을 수 있고 매수, 매도, 지갑 간 전송에 서로 다른 수수료를 적용할 수 있습니다. 라우터 지원, 권한, 시뮬레이션, 소액 왕복 테스트를 확인하는 방법을 설명합니다."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 전송 수수료 토큰의 위험

> 교육 목적으로만 제공되며 투자 조언이 아닙니다. 투자로 인해 손실이 발생할 수 있습니다.

<a id="answer"></a>

## 핵심 답변

전송 수수료 토큰은 전송 로직 안에서 가치의 일부를 차감하므로 수령인이 받는 수량이 `transfer` 또는 `transferFrom`에 전달된 수량보다 적을 수 있습니다. 차감분은 소각, 재분배, 다른 지갑으로 전송되거나 유동성에 투입될 수 있습니다. 발신자, 수신자, 거래 상황에 따라 규칙이 달라질 수도 있습니다.

주요 위험은 공시된 수수료율에만 있지 않습니다. 매수, 매도, 지갑 간 전송 요율이 서로 다를 수 있고, 특정 주소는 면제되거나 차단될 수 있으며, 특권 계정이 규칙을 변경할 수도 있습니다. 따라서 견적이나 성공적인 매수만으로는 나중에 합리적인 비용으로 매도할 수 있다고 입증되지 않습니다.

<a id="mechanism"></a>

## 작동 방식

일반적인 자동화 시장조성자 라우터는 명목 입력량으로 각 출력량을 계산할 수 있습니다. 반면 Uniswap V2 Router02는 전송 수수료 토큰 전용 스왑 함수를 제공하며, 페어 잔액 변동에서 실제 입력량을 추론하고 수령인의 잔액 증가분을 `amountOutMin`과 비교합니다. 호환성은 토큰 기호만이 아니라 정확한 라우터, 경로, 토큰 동작에 달려 있습니다.

토큰 수수료는 풀 수수료 및 가격 충격과 복합적으로 작용합니다. 다중 홉 경로는 전송 로직을 여러 번 실행할 수 있고, 면제 규칙이나 매수·매도 판별 때문에 실효 요율이 방향에 따라 달라질 수 있습니다. 현재 온체인 상태를 기준으로 진입과 청산 비용을 따로 추정해야 합니다.

<a id="example"></a>

## 예시

거래자가 1,000 USDC를 사용한다고 가정합니다. 풀 수수료와 가격 충격으로 가치가 2% 줄고, 이어서 5%의 매수 수수료가 부과됩니다: `1,000 × 0.98 × 0.95 = 931`. 시장 가격이 그대로인 상태에서 10%의 매도 수수료와 추가 2%의 거래 마찰을 적용하면 약 US$821를 돌려받습니다: `931 × 0.90 × 0.98 ≈ 821`. 시장 가격이 하락하지 않아도 왕복 손실은 약 18%입니다.

이는 설명을 위한 예시이지 견적이 아닙니다. 차감 순서는 다를 수 있으며 수수료율, 유동성, 경로, 컨트랙트 상태도 두 거래 사이에 변할 수 있습니다. 추정치에 의존하기 전에 현재 컨트랙트와 풀 상태를 읽고 동일한 지갑과 정확한 경로로 시뮬레이션해야 합니다.

<a id="risks"></a>

## 위험 및 점검 사항

- 컨트랙트 주소와 배포된 코드를 확인합니다. 수수료 로직, 면제, 차단 목록, 최대 수수료 제한, 소유자 역할, 업그레이드 통제, 일시 정지 권한을 식별합니다.
- 견적 출력량과 시뮬레이션에서 수령인 잔액이 변한 양을 비교합니다. 경로의 모든 라우터와 홉이 전송 수수료 동작을 명시적으로 처리하는지 확인합니다.
- 같은 지갑에서 매도를 시뮬레이션한 다음 전액을 잃어도 감당할 수 있는 소액으로만 왕복 테스트를 합니다. 테스트 성공은 이후 규칙이나 유동성이 그대로 유지된다는 보장이 아닙니다.
- `amountOutMin`을 실제로 받아들일 수 있는 손실 한도에 맞춥니다. 0으로 설정하거나 슬리피지를 반복해서 넓히면 가격 보호가 사라지지만 리버트, 차단 목록, 과도한 토큰 수수료를 우회하지는 못합니다.
- 신뢰할 수 있는 최악의 순청산가치를 기준으로 포지션 규모를 정합니다. 매도 시뮬레이션 실패, 미검증 코드, 불투명한 권한, 또는 관리자가 실질적인 지연 없이 수수료를 올리거나 전송을 막을 수 있다면 진행하지 않습니다.

<a id="misconceptions"></a>

## 흔한 오해

- 오해 1: 전송 수량이나 이벤트가 실제 수령량을 증명한다. 수령인의 잔액 변화를 확인해야 합니다. 전송 수수료 연동 코드가 잔액 차이를 쓰는 데에는 이유가 있습니다.
- 오해 2: Gas나 슬리피지를 높이면 어떤 매도든 성공한다. Gas는 거래 포함 여부에, 슬리피지는 최저 가격에 영향을 주지만 어느 쪽도 컨트랙트 로직을 우회하지 못합니다.
- 오해 3: 소유권을 포기하면 토큰을 변경할 수 없다. 프록시 관리자, 다른 특권 역할, 외부 설정 컨트랙트가 여전히 동작을 통제할 수 있으므로 실효 권한 경로를 모두 확인해야 합니다.

<a id="related"></a>

## 관련 주제

- [암호화폐 지수 가격](/ko/crypto/index-price-crypto/)
- [암호화폐 거래 슬리피지](/ko/crypto/slippage-crypto/)
- [토큰 컨트랙트 주소 확인 방법](/ko/crypto/token-contract-verification/)
- [거래 시뮬레이션](/ko/crypto/transaction-simulation/)

<a id="sources"></a>

## 출처

- [Uniswap V2 Router02](https://github.com/Uniswap/v2-periphery/blob/master/contracts/UniswapV2Router02.sol) - Uniswap (확인일: 2026-08-20)
- [FeeOnTransferDetector.sol](https://github.com/Uniswap/util-contracts/blob/main/src/FeeOnTransferDetector.sol) - Uniswap (확인일: 2026-08-20)
- [SC01:2026 Access Control Vulnerabilities](https://scs.owasp.org/sctop10/SC01-AccessControlVulnerabilities/) - OWASP (확인일: 2026-08-20)

Source: https://wiki.fcontext.com/ko/crypto/fee-on-transfer-token-risk/index.mdx
