Bethropic

더스트: 출금할 수 없는 잔액, 그리고 그것이 존재하는 이유

patientmantle조회 1
🌐 이 글의 원문은 영어로 작성되었습니다· AI 번역원문 보기

금액이 아니라 행위에 대한 수수료

은행은 비율이나 정액 수수료를 부과하며, 어느 쪽이든 수수료는 금액의 함수입니다. 블록체인은 공간에 대해 과금합니다. 비트코인 트랜잭션은 모든 노드가 영원히 저장해야 하는 수백 바이트에 불과하며, 채굴자는 이를 바이트 단위로 가격을 책정합니다. 이더리움 트랜잭션은 트리거하는 연산에 비례해 가스를 소비하며, 발신자가 그 가스 비용을 지불합니다. 두 경우 모두 이동되는 가치는 가격 결정에 들어가지 않습니다. 동일한 트랜잭션 형태에서 1사토시를 보내는 것과 1비트코인을 보내는 것의 비용은 같습니다.

이것이 더스트의 근본 원인입니다. 수수료는 행위에 의해 고정되고 잔액은 임의로 작을 수 있기 때문에, 이동시키는 것이 무의미해지는 잔액 하한선이 항상 존재합니다: 수수료가 그 잔액을 다 먹어버리기 때문입니다. 네트워크가 바쁜 날에는 이 임계값이 수수료와 함께 상승하며, 일요일에는 이동시킬 가치가 있던 잔액이 월요일에는 그렇지 않을 수 있습니다. 수수료 관련 글에서는 수수료가 왜 변동하는지를 다루고, 이 글은 수수료가 남기는 것에 대해 다룹니다.

더스트는 어디에서 오는가

  • 잔여분. 잔액 대부분을 출금하면 남은 금액에서 수수료가 차감되어, 그 자체로는 결코 가치가 없던 단편이 생겨납니다.
  • 반올림. 거래소와 사이트는 잔액을 몇 자리 소수점까지만 표시하지만 실제로는 더 많은 자릿수를 보유합니다. 표시되지 않는 부분은 실재하는 금액이며, 그 정의상 더스트입니다.
  • 부분 체결 및 환전. 한 코인을 다른 코인으로 거래하면 주문 끝에 남는 자투리는 판매한 코인에서 더스트가 됩니다.
  • 낯선 이들. 몇 센트어치의 요청하지 않은 송금은 관대함이 아닙니다. 이는 광고이거나, 당신의 주소들을 연결시키려는 시도이거나, 주소 오염(address poisoning)의 첫 단계입니다. 즉 당신의 거래 내역에 유사 주소를 심어놓는 것입니다. 건드리지 마십시오.

비트코인에는 이 임계값의 공식 버전이 있습니다. 참조 소프트웨어를 실행하는 노드는 더스트 한도(dust limit)보다 낮은 가치의 출력을 생성하는 트랜잭션을 중계하지 않습니다. 표준 출력의 경우 몇백 사토시 수준입니다. 이런 출력은 그것이 담고 있는 금액보다 사용하는 데 더 많은 비용이 들며, 그렇지 않으면 원장을 영원히 어지럽히게 되기 때문입니다. 이 한도는 프로토콜의 규칙이라기보다는 네트워크 정책이지만, 실제로는 일정 크기 이하에서는 비트코인 결제 자체가 불가능함을 의미합니다.

이 사이트의 최소 금액

출금 창은 하나의 필드에 동일한 논리를 담고 있습니다. 사이트가 지원하는 각 코인에는 최소 출금액과 수수료가 있으며, 둘 다 코인의 최소 단위로 저장되고, 폼 아래의 경고 문구에서는 일반 단위로 환산되어 표시됩니다. 최소액 미만의 출금은 브라우저 단계에서 거부되며, 최소액과 코인 이름을 명시하는 메시지가 표시되고, 지갑 서비스에는 아예 도달하지 않습니다.

엔진 검증됨store/CoinStore.ts: 각 코인은 fee, minWithdraw, minDeposit을 최소 단위 정수로 보유하며, minWithdrawView와 feeView는 표시를 위해 10^precision으로 나눕니다. component/common/popup/wallet/deposit.tsx와 withdraw.tsx: 금액 검증기는 selectCoin.minWithdrawView보다 낮은 값을 minWithdraw 메시지와 함께 거부합니다; 출금 경고는 선택한 코인에 대해 {min}과 {fee}를 출력합니다.

최소액은 당신 소유물에 대한 제한이 아닙니다. 그 이하의 모든 금액도 여전히 당신의 잔액이며, 여전히 베팅할 수 있고, 선을 넘길 만큼 충분한 금액이 더해지는 순간 출금할 수 있습니다. 이는 네트워크에서 당신의 돈을 소비하면서도 아무것도 손에 쥐어주지 못하는 트랜잭션, 즉 자신의 수수료보다 작은 출금을 수행하는 것을 거부하는 것일 뿐입니다.

더스트를 어떻게 처리할 것인가

  • 베팅하거나 채우십시오. 최소액 미만의 잔액도 여기서는 다른 잔액과 마찬가지로 베팅에 사용될 수 있습니다; 도달할 수 없는 것은 오직 네트워크뿐입니다. 최소액을 넘길 때까지 추가하는 것이 또 다른 해결책입니다.
  • 더 적은 횟수로, 더 큰 금액을 출금하십시오. 각 송금은 행위 수수료를 한 번씩 지불합니다. 잔액을 작은 출금들로 나누면 양쪽 끝에서 더스트가 생성됩니다.
  • 금액보다 수수료를 먼저 확인하십시오. 수수료가 보내는 금액의 눈에 띄는 비율이라면 그 송금은 비용이 큽니다; 수수료가 금액을 초과한다면 사이트는 거부할 것이며, 그렇지 않기를 바라서도 안 됩니다.
  • 스스로 보내지 않은 더스트와는 절대 상호작용하지 마십시오. 쓸어 담지 마십시오, 응답하지 마십시오, 그리고 그것이 나타난 행에서 어떤 주소도 복사하지 마십시오.

최소액과 수수료는 코인별, 네트워크별로 다르며 네트워크 상황에 따라 변할 수 있습니다; 출금 창은 현재 값을 표시합니다. 이 글은 그 메커니즘을 설명하는 것이며, 특정 금액에 대한 약속이 아닙니다.

자주 묻는 질문

크립토에서 더스트(dust)란 무엇인가요?

보낼 때 드는 네트워크 수수료가 잔액과 같거나 그보다 커서 옮길 가치가 없는 잔액을 말합니다. 나머지, 반올림, 부분 체결, 그리고 때로는 원치 않는 전송에서 생겨납니다.

왜 네트워크 수수료는 금액에 비례하지 않나요?

블록체인은 거래의 가치가 아니라 트랜잭션의 크기나 연산량에 대해 수수료를 부과하기 때문입니다. 같은 트랜잭션 형태라면 1사토시를 보내는 것과 1비트코인을 보내는 것의 비용은 동일합니다.

이 사이트에는 왜 최소 출금액이 있나요?

각 코인마다 최소 출금액과 수수료가 가장 작은 단위로 저장되어 있으며, 출금 창에 표시됩니다. 최소 금액보다 적은 출금은 네트워크 수수료만 소비하고 아무것도 전달되지 않으므로, 출금 창에서 전송 전에 거부됩니다.

최소 금액보다 적은 잔액은 사라지나요?

아니요. 여전히 본인 소유이며, 스테이킹할 수 있고, 잔액이 최소 금액을 초과하면 출금할 수 있습니다.

누군가 제가 요청하지 않은 아주 적은 금액을 보냈습니다. 이게 뭔가요?

대부분 주소 포이즈닝(address-poisoning) 시도이거나 당신의 주소들을 연결하려는 시도입니다. 상호작용하지 마시고, 그 트랜잭션에서 주소를 절대 복사하지 마세요.

출처 및 참고자료

  • Bitcoin Core — 더스트 출력 정책 (비경제적 출력에 대한 릴레이 임계값)
  • Betkyo 클라이언트 소스: store/CoinStore.ts (fee, minWithdraw, minDeposit, View getter들), component/common/popup/wallet/withdraw.tsx (최소 금액 확인 및 경고 문구)
더스트: 출금할 수 없는 잔액, 그리고 그것이 존재하는 이유

댓글 (0)

아직 댓글이 없습니다.