사토시 나카모토의 비트코인 백서 전문 해설. 9페이지짜리 논문이 어떻게 은행 없는 화폐 시스템을 설계했는지 섹션별로 분석합니다.
import InfoBox from '@components/shortcodes/InfoBox.astro';
2008년 10월 31일, 사토시 나카모토라는 이름의 익명 인물이 암호학 메일링 리스트에 9페이지짜리 논문 한 편을 게시했습니다. 제목은 "Bitcoin: A Peer-to-Peer Electronic Cash System". 이메일 본문은 단 한 줄이었습니다:
"신뢰할 수 있는 제3자 없이 작동하는 전자 화폐 시스템을 제안합니다."
그로부터 17년이 지난 지금, 이 9페이지는 1.3조 달러 규모의 네트워크를 만들어냈습니다. 그런데 실제로 백서를 읽어본 사람은 놀라울 정도로 적습니다. 9페이지밖에 안 되는데 말이죠.
이 글에서는 백서의 각 섹션을 순서대로 짚으며, 사토시가 어떤 문제를 풀려고 했고, 어떤 해결책을 제시했는지 해설합니다.
"인터넷 상거래는 거의 전적으로 신뢰할 수 있는 제3자로서의 금융 기관에 의존한다."
사토시가 지적한 핵심 문제는 간단합니다: 온라인에서 누군가에게 돈을 보내려면 반드시 은행이나 결제 회사(비자, 페이팔 등)를 거쳐야 합니다. 이 중개자는:
현금은 이런 문제가 없습니다. 지폐를 건네면 거래가 끝납니다. 되돌리기, 중개자 개입, 개인정보 수집이 없습니다. 하지만 현금은 인터넷으로 보낼 수 없습니다.
사토시의 질문: 인터넷에서 현금처럼 작동하는 전자 화폐를 만들 수 있는가?
백서의 "거래" 섹션은 비트코인의 핵심 구조를 설명합니다. 비트코인에서 "코인"이란 실제로 디지털 서명의 연쇄(chain of digital signatures)입니다.
A가 B에게 비트코인을 보내면:
문제는 이중지불(double spending)입니다. 디지털 데이터는 복사가 가능하니까요. A가 같은 비트코인을 B와 C에게 동시에 보내면 어떻게 되는가? 기존 시스템에서는 은행이 이를 방지합니다. 사토시는 은행 없이 이를 해결해야 했습니다.
해결책의 첫 번째 조각: 거래들을 시간순으로 정리하는 것. 사토시는 거래 묶음(블록)에 타임스탬프를 찍고, 각 블록이 이전 블록의 해시를 포함하도록 했습니다.
이것이 블록체인입니다. 각 블록이 이전 블록을 참조하므로, 과거 블록을 변경하려면 그 이후의 모든 블록을 다시 만들어야 합니다.
타임스탬프만으로는 부족합니다. 누가 블록을 만들 자격이 있는가? 아무나 블록을 만들 수 있다면 공격자가 가짜 블록을 만들어 역사를 조작할 수 있습니다.
사토시의 답: 계산 작업을 요구합니다. 블록을 만들려면 특정 조건을 만족하는 해시를 찾아야 합니다. 이 과정은 엄청난 전력과 컴퓨팅 파워를 소모합니다. 이것이 채굴입니다.
핵심 통찰: 블록을 만드는 데 비용이 들기 때문에, 과거를 변경하려면 그 이후의 모든 작업을 다시 해야 합니다. 정직한 채굴자들이 더 많은 컴퓨팅 파워를 보유하는 한, 공격자는 정직한 체인을 따라잡을 수 없습니다.
백서에서 가장 짧은 섹션 중 하나지만 비트코인의 운영 방식을 정의합니다:
가장 긴 체인이 승리합니다. 두 채굴자가 동시에 블록을 찾으면 일시적 분기가 생기지만, 다음 블록이 추가되면 더 긴 쪽이 정본으로 채택됩니다.
채굴자는 왜 정직하게 행동하는가? 사토시의 답은 게임 이론적입니다:
공격자가 다른 사람의 비트코인을 훔치는 것보다 정직하게 채굴하는 것이 더 이익이 되도록 설계되어 있습니다. 규칙을 따를 때 보상이 주어지고, 규칙을 어기면 투자한 전력이 낭비됩니다.
사토시는 이미 블록체인이 커질 것을 예상했습니다. 해결책: 오래된 거래는 머클 트리로 압축하여 블록 헤더만 보존할 수 있습니다.
이 섹션이 오늘날의 SPV(간편 결제 검증) 지갑 - 스마트폰 지갑이 전체 블록체인 없이 작동하는 원리 - 의 이론적 근거입니다.
풀노드를 운영하지 않는 사용자도 거래를 검증할 수 있습니다. 블록 헤더만 다운로드하고, 머클 증명을 통해 특정 거래가 블록에 포함되었는지 확인합니다.
사토시는 이 방식의 한계도 인정했습니다: 네트워크가 정직한 노드에 의해 통제되는 동안만 신뢰할 수 있다고요. 이것이 풀노드 운영이 중요한 이유입니다.
비트코인 거래는 여러 입력과 여러 출력을 가질 수 있습니다. 10,000사토시짜리 코인으로 3,000사토시를 보내면, 3,000은 수신자에게, 나머지는 거스름돈으로 자신에게 돌아옵니다. 이것이 UTXO 모델입니다.
사토시는 프라이버시 섹션에서 중요한 구분을 합니다. 기존 은행: 거래 정보를 은행이 보관하고 외부에 공개하지 않음. 비트코인: 거래는 공개되지만 신원과 주소의 연결을 끊음으로써 프라이버시를 유지합니다.
실전적 조언도 있습니다: "각 거래에 새 키 쌍을 사용해야 한다." 이것이 비트코인 지갑이 매번 새 주소를 생성하는 이유입니다.
백서의 마지막 기술 섹션은 수학입니다. 공격자가 정직한 체인을 따라잡을 확률을 계산합니다. 결론: 공격자가 네트워크 해시파워의 50% 미만을 보유하면, 블록이 추가될수록 따라잡을 확률이 기하급수적으로 감소합니다.
6확인이면 공격 성공 확률이 사실상 0에 수렴합니다. 이것이 "6확인이면 안전하다"는 관행의 수학적 근거입니다.
백서의 마지막 단락:
"우리는 신뢰에 의존하지 않는 전자 거래 시스템을 제안했다."
9페이지. 수식 몇 개. 참고문헌 8개. 이것이 전부입니다. 화려한 마케팅도, 로드맵도, 팀 소개도 없습니다. 문제 정의, 해결책, 수학적 증명. 그것으로 충분했습니다.