본문으로 건너뛰기
buybitcoinsmart

용어집 / 주소와 키

주소 재사용

주소 재사용이란 무엇입니까?
주소 재사용은 같은 비트코인 주소로 2건 이상의 결제를 받는 것을 뜻하며, 그러면 그 주소로 한 번이라도 결제한 모든 사람 사이의 연결이 영구적으로 공개됩니다.

비트코인 주소는 무료이고 사실상 무제한이며, 프로토콜 어디에도 주소를 두 번 사용하는 것을 막는 장치는 없습니다. 사토시의 백서는 10절에서 이에 반대하는 논거를 제시하며, 결제가 공통 소유자에게 묶이지 않도록 트랜잭션마다 새 키 쌍을 쓸 것을 권했습니다. 재사용은 가명 원장을 검색 가능한 개인의 재무 기록으로 바꾸는 원인입니다.

작동 방식

블록체인은 공개 색인이고, 주소는 그 색인의 키입니다. 모든 블록 탐색기는 주소 검색창을 제공하며, 전체 이력을 한 페이지에 돌려줍니다. 들어온 결제 각각, 나간 결제 각각, 누적 잔액, 타임스탬프가 모두 나옵니다. 그 페이지를 불러오는 데 드는 비용은 없고 누구의 허가도 필요하지 않습니다.

주소를 한 번 사용하면 한 개의 행이 생깁니다. 마흔 번 사용하면 같은 수신자에게 확실히 속하는 마흔 개의 행이 생기고, 각 지불자는 나머지 서른아홉 개의 행을 읽을 수 있습니다. 이것을 알아내기 위해 깨뜨린 것은 아무것도 없습니다. 원장은 설계상 공개되어 있고, 이용 가능한 유일한 프라이버시는 문자열에 이름을 붙이기 어렵다는 점뿐입니다.

재사용은 주소 뒤에 있는 키에 대해 알려진 것도 바꿉니다. pay-to-public-key-hash 또는 pay-to-witness-public-key-hash 출력에서 주소는 해시에 확정되고 공개 키는 첫 지출 전까지 공개되지 않습니다. 한 번 지출하면 그 키는 영원히 온체인에 남습니다. 이후에도 같은 주소로 계속 받으면 그 뒤의 모든 코인은 숨겨진 공개 키가 아니라 노출된 공개 키 뒤에 놓이게 되며, 이는 아무런 이득도 없이 더 약한 위치에 서는 것입니다.

지갑들은 사용자가 생각할 필요 없이 오래전에 이 문제를 해결했습니다. BIP-32 계정은 수신 브랜치에만 2,147,483,648개의 주소를 보유하며, 수신 화면은 결제가 있을 때마다 다음 미사용 주소로 넘어갑니다. Bitcoin Core는 주소를 사용된 것으로 표시하고 다시 내주지 않습니다. 오늘날 의도적으로 주소를 재사용한다는 것은 대개 자신의 이력에서 옛 주소를 복사해 오는 일입니다.

비트코인을 구매할 때 이것이 중요한 이유

신원을 확인한 모든 거래소는 출금 주소를 컴플라이언스 기록에 보관하며, 재사용은 그 하나의 기록이 보유한 모든 자산을 아우르게 하는 원인입니다.

1년 동안 같은 주소로 52번 출금하면 거래소와 그 분석 업체, 그리고 둘 중 어디에든 소환장이나 제출 명령을 보내는 모든 사람에게 저축 전체를 풀어내는 하나의 실마리를 건네는 셈입니다. 매번 새 주소로 출금하면 같은 주체들은 서로 연결되지 않은 52개의 출력을 보게 되고, 그 관계는 페이지에서 읽어내는 것이 아니라 추론해야 합니다. 추론은 종종 가능합니다. 그것은 또한 수고가 드는 일이며, 증거는 아닙니다.

출금 화이트리스트는 이 조언을 복잡하게 만들며, 그렇지 않은 척하는 것은 정직하지 않습니다. Kraken, Binance 및 대부분의 대형 거래소는 출금을 저장된 주소 목록으로 제한할 수 있게 하며, 이는 계정을 탈취한 사람에 대한 강력한 방어이고, 동시에 주소 재사용 쪽으로 밀어붙입니다. 실현 가능한 절충은 하나가 아니라 같은 지갑의 여러 주소를 화이트리스트에 등록하고 그 화이트리스트를 유지하는 것입니다. 계정 탈취는 체인 분석보다 더 많은 지갑을 비웁니다.

기업은 이 문제의 가장 노골적인 형태와 마주합니다. QR 코드 하나를 인쇄해 카운터에 붙여 두는 가게는 모든 고객에게 일일 매출과 잔액을 보여주고 있습니다. 결제 처리 업체가 청구서마다 확장 공개 키로 새 주소를 도출하는 이유가 바로 이것이며, 고정 주소 하나를 공개하는 기부 페이지는 때로 그것을 깨닫지 못한 채 프라이버시 대신 공개성을 택한 것입니다.

재사용된 기부 주소가 드러내는 것

공개 프로필에 주소 하나를 게시하고 1년 동안 그대로 두면, 읽어낼 수 있는 결과는 불편합니다.

누구나 받은 금액을 사토시 단위까지 합산하고, 개별 결제를 세고, 각 결제가 들어온 분까지 읽을 수 있습니다. 신원 확인된 거래소 계좌에서 곧바로 지불한 기부자는 자신의 기부금과 연결될 수 있고, 그 옆에서 다른 모든 기부금을 보게 됩니다. 결국 지출할 때, 그 트랜잭션은 어떤 코인을 골랐는지, 얼마가 거스름돈으로 돌아왔는지, 어디로 갔는지를, 그 주소가 이름으로 자신의 것임을 이미 아는 사람들에게 드러냅니다.

BIP-352에 규정된 사일런트 페이먼트는 그 맞교환에 대한 현대적 답입니다. 이전과 똑같이 고정 문자열 하나를 공개하고, 각 발신자는 그것으로 서로 다른 온체인 주소를 계산하므로, 공개 식별자는 일정하게 유지되는 반면 체인에는 결제들 사이에 공통점이 전혀 나타나지 않습니다. 합의 변경이 필요 없고 두 지갑 모두의 지원만 필요하며, 그래서 이용 가능 여부가 보편적이지 않고 들쭉날쭉합니다.

주소 재사용 vs 입력 병합

주소 재사용은 한 주소로 들어온 결제들을 연결하고, 입력 병합은 여러 주소로 들어온 코인들을 연결합니다. 병합은 하나의 트랜잭션이 두 개 이상의 입력을 함께 지출할 때마다 일어나며, 이는 모든 관찰자에게 한 주체가 그 모두의 키를 보유했음을 알려줍니다. 체인 분석 업체들이 공통 입력 소유 휴리스틱이라고 부르는 규칙입니다. 두 문제는 서로를 악화시킵니다. 신중한 주소 위생은 모든 것을 한꺼번에 지출하는 스윕 한 번으로 무너지며, 코인 컨트롤은 두 번째 문제에 대한 답이지 첫 번째 문제에 대한 답이 아닙니다.

주소 재사용 vs 더스팅 공격

주소 재사용은 스스로 초래하는 것이고, 더스팅 공격은 남이 귀하에게 하는 것입니다. 공격자는 수백 사토시를 수천 개의 주소로 보내고 수신자들이 그 더스트를 더 큰 트랜잭션에 병합하기를 기다리며, 그렇게 하면 더스트를 받은 주소가 나머지 코인과 연결됩니다. 재사용은 공격자가 필요 없고, 링크 하나가 아니라 전체 결제 이력을 노출하므로 훨씬 더 많이 누설합니다. 둘 다 같은 방식으로 처리합니다. 들어올 때는 새 주소를, 나갈 때는 신중한 입력 선택을 씁니다.

혼동하기 쉬운 용어

자주 묻는 질문

비트코인 주소를 재사용하는 것은 위험합니까?

대가로 치르는 것은 보안이 아니라 프라이버시입니다. 재사용한 주소로 보낸 코인은 그대로 안전하지만, 그 주소를 가진 모든 사람이 해당 주소에서의 전체 내역, 즉 잔액과 모든 결제의 시점까지 읽을 수 있습니다.

열 때마다 지갑이 새 주소를 표시하는 이유는 무엇입니까?

지갑은 시드에서 파생된 주소 브랜치의 주소들을 차례로 사용하는데, 이것이 BIP-32에 따른 기본 동작입니다. 이전 주소도 여전히 작동하고 여전히 본인의 것이므로, 수신 화면이 다음 주소로 넘어가게 두어도 잃는 것은 없습니다.

제 거래소에서는 출금 주소를 1개만 화이트리스트에 등록할 수 있습니다. 어떻게 해야 합니까?

화이트리스트를 유지하십시오. 계정 탈취는 체인 분석보다 코인을 잃는 훨씬 흔한 경로이므로, 잠긴 출금 주소의 안전성이 대개 프라이버시 비용보다 큽니다. 플랫폼이 허용한다면 같은 지갑의 주소 여러 개를 화이트리스트에 등록하십시오.

주소 재사용을 되돌릴 수 있습니까?

아닙니다. 체인은 영구적이므로 이미 공개된 연결은 공개된 채로 남습니다. 할 수 있는 일은 연결을 더하지 않는 것입니다. 앞으로의 결제는 새 주소로 받고, 오래된 코인과 새 코인을 한 트랜잭션에서 함께 쓰지 마십시오.

다음에 읽을 글

관련 용어

주소와 키 분야의 다른 용어

이 페이지를 영어로 읽기