"사토시의 서" 제4장 written by 필 샴페인
비트코인(Bitcoin)에 대해 잘못 알려져 있는 것들이 많다. 백서(White Paper)가 존재하지만, 너무나 간결하게 써져 있기 때문에, 오히려 제대로 이해하는 것이 쉽지 않은 것 같다.
비트코인과 사토시 나카모토에 대해서 찾아볼 수 있는 자료는 매우 한정적이고 접근조차 어렵다. 그래서 비트코인에 관한 무수한 이야기 중, 무엇이 사실이고 거짓인지 분간하는 것은 여간 쉬운 일이 아니다. 인터넷에서 검색되는 가공된 자료들은 이미 그 자체가 오염되어 있을 가능성이 매우 높아 그리 추천하지 않는다.
지난 2월, 이러한 어려움을 덜어줄 반가운 소식을 접하였다. "사토시의 서" 한국어 번역본의 출간이다. 이 책은 2014년 필 샴페인에 의해 출간되었는데, 저자는 사토시 나카모토가 남긴 흔적들을 광범위하게 조사하고 주제별로 묶어 정리했다. 인터넷 상에 출처도 없이 떠도는 내용을 가지고 비트코인을 장님 코끼리 만지듯 접근하기보다는, 사토시가 직접 남긴 흔적들을 읽고, 진짜로 무엇을 만들고자 했는지 그리고 어떠한 미래를 상상했던 것인지에 대해 알아보는 것이 훨씬 효율적이고 가치 있는 일이라 생각한다.
2019년 11월 출간된 "프로그래밍 비트코인"을 깊이있게 읽고 공부해 보고자 모였던 멤버들에게 이 소식을 전했다. 멤버 다수가 기꺼이 "사토시의 서"를 함께 읽고 스터디하는 것에 동참하기로 했다. (2020년 이 책을 읽고, 스터디 모임에서 정리했던 자료들을 블로그 형태로 기록하였다.)
1장 서론, 2장 비트코인의 작동 원리, 3장 사토시의 첫 번째 메일에 대해 깊이 논의할 내용은 없다. 다음 4장의 제목은 "확장성 문제들"이다. 2014년 당시에도 비트코인의 확장성에 대해서는 많은 이슈가 있었기 때문에 꽤 앞서 소개되었다고 생각된다.
이 장에서는 비트코인 첫 번째 블록이 채굴되기 이전인 2008년 11월의 메일을 소개한다. 이 메일을 통해 사토시는 이미 많은 것을 내다보고 있었음을 짐작할 수 있다.
1. 비자(Visa)를 예를 들며 일평균 1억 건의 트랜잭션과, 이를 처리하기 위해 필요한 100GB의 대역폭을 언급한다. 이는 비트코인 네트워크가 성장하기에 필요한 시간에 맞춰, 그때쯤이면 충분한 대역폭이 가능해져 별 문제없을 것으로 예측하였다. 그리고 그 예측은 적중하였다.
2. 수억 명(hundreds of millions of people)이 일평균 1억 건의 트랜잭션을 만들어내고, 그 정보의 양이 상당할 것을 예측한다. 이를 위해 비트코인 백서 8장에 소개된 간소화된 지급 검증(SPV, Simplified Payment Verification)을 통해 안전하게 사용하는 것이 가능하다고 설명한다.
3. 새로운 코인을 채굴하고 싶은 사람들만이 노드를 작동시킬 것이고, 그들은 서버 팜(Server Farm)을 가진 전문가 집단이 될 것이라 언급하였다. 이 또한 적중하였다. 지금은 일반적인 사용자 그 누구도 채굴을 하지 않는다. 이는 비용 대비 효율이 결코 나오지 않기 때문이다.
수억 명이 일평균 1억 건의 트랜잭션을 만들어 낼 것이라는 사토시의 예측과는 다르게 BTC 네트워크는 일평균 최대 약 42~48만 건의 트랜잭션을 처리했을 뿐이다. 2016년 이후로 처리량은 16~38만 건 수준에 머물러 있다. 그리고 대다수의 사람들은 이것이 비트코인의 한계이며, 이 문제를 해결하기 위한 다른 솔루션이 필요하다고 얘기를 한다.
사토시의 예측이 틀렸던 것인지, 혹은 다른 이유로 대규모 트랜잭션 처리가 막혀있는 것은 아닌지 확인이 필요해 보인다. 이를 위해 책에서 아직 소개되지 않은 사토시의 흔적들을 좀 더 찾아보았다.
1) 2010년 7월 17일 Insti라는 사용자는 Bitcoin snack machine을 언급하며, 빠른 트랜잭션 처리 문제에 대해 문의한다. 이에 대해 사토시는 다음과 같이 대답한다.
https://bitcointalk.org/index.php?topic=423.msg3819#msg3819
(전문화된)결제 처리 회사(payment processing company)가 10초 이내로 빠르게 트랜잭션을 분배하고 검증해 줄 수 있을 것으로 예측하였다. 모두가 두려워하는 이중 지출(double spending)의 위험에 대해서는, 충분히 연결되어 있는 (전문화된)노드들이 있기에 해결이 가능함을 암시한다.
이에 대한 부연설명을 해보자면, 비트코인 네트워크는 만달라 네트워크(Mandala Network)로 구성되어 있다.
전문화된 노드(마이너)와 결제 처리 회사 등은 완전 그래프(네트워크 중심)를 만들고 있기 때문에, 이중 지출 시도는 쉽게 모니터링되고 걸러질 수 있다. 대부분의 사용자는 중심 노드 중 1~2개만 연결되어 있어도, 빠르고 안전하게 네트워크를 사용할 수 있다.
일반적으로 최소 1 컨펌, 혹은 6 컨펌이 돼야 트랜잭션이 안전하게 사용될 수 있다는 상식과는 매우 차이가 있음을 알 수 있다.
2) 2010년 7월 22일 Red라는 사용자는 10분에 35,000건, 하루 약 5백만 건의 거래가 가능한지에 대해 질문을 하였다.
https://bitcointalk.org/index.php?topic=532.msg6269#msg6269
2010년 당시에는 대다수의 비트코인 사용자는 직접 노드를 운영했다. 사토시는 당시의 그러한 상황을 언급하며, 향후 소수의 (전문화된)서버 팜(Server Farm)의 등장과 일반 사용자는 채굴을 하지 않고, 트랜잭션만 생성하는 클라이언트 노드로 구성될 것이라고 다시 한번 얘기했다.
https://bitcointalk.org/index.php?topic=532.msg6306#msg6306
앞서 소개한 비트코인 스낵 머신 스레드를 언급하며, 자신이 설계한 비트코인 네트워크에 대해 다시 한번 설명한다. 그리고 이러한 설명을 하는 것에 지쳤는지, 이를 믿지 못하더라도 설득할 시간이 없다고(아마 더 중요한 개발을 마무리해야 하므로) 답변을 마무리하였다.
사토시는 분명 처음부터 대규모 확장성을 염두하고 비트코인을 설계하였음을 다시 한번 확인할 수 있는 대목이다.
그리고 사토시는 2010년 12월 이후 포럼에서 자취를 감추었다. 마지막 소통은 비트코인 개발자 개빈 안드레센에게 보낸 개인 메일로 알려져 있다.
3) 마이크 헌(Mike Hearn)
"비트코인 실험의 결론"(한글번역: 링크)이란 글로 널리 알려져 있는 개발자 마이크는 2013년 3월 6일 블록 크기를 제한해 둔 것에 대한 조치가 필요하다는 글을 포럼에 썼다. 조치가 없는 경우, 수수료가 점점 더 비싸질 것이라 예상도 하였다.
https://bitcointalk.org/index.php?topic=149668.0
마이크는 사토시가 Paypal, Visa와 경쟁할 계획을 세웠다고 얘기하며, 2009년 4월 사토시에게 받았던 메일 내용을 공개한다.
https://bitcointalk.org/index.php?topic=149668.msg1596879#msg1596879
사토시는 마이크에게 보낸 메일에서 비트코인은 더 적은 비용으로도 Visa보다 더 크게 확장할 수 있다고 언급하였다. 그리고 무어의 법칙을 언급하며, 빠른 속도로 비트코인이 채택된다 하더라고, 트랜잭션의 수보다 하드웨어의 속도가 더 앞설 것이라고도 예측하였다.
참고로 이 이후, 블록 사이즈는 일부 커지기는 했으나 2015년 1MB로 늘린 이후 더 커지지 못하였고, 마이크의 예상대로 트랜잭션 수수료는 한없이 높아져만 갔다.
그리고 마이크는 2016년 1월 블록 사이즈를 키우는 것에 반대하는 채굴자들, 사토시가 제시한 이상을 믿지 않는 개발자들, 소수에 의해 장악된 비트코인, 악의적이고 의도적인 공격 등에 실망하며, "비트코인은 망했다"며 글을 썼다. 아이러니하게도, 이후 비트코인은 세상에 널리 알려지며, BTC의 경우 엄청난 가격 상승이 발생했다. 그래서 덕분에 꽤 조롱을 받기도 했었다.
(참고) blockmaxsize limit
2012년 7월: 250kb
2013년 11월: 750kb
2015년 6월: 1Mb
2017년 8월: Segwit 작동
https://en.bitcoin.it/wiki/Scalability_FAQ
지금의 BTC는 분명히 사토시가 제시한 모습과는 크게 다르다. 백서의 제목처럼 Electronic Cash로써의 기능은 극히 제한된 채 Digital Gold 혹은 가치저장수단으로 널리 알려져 있다. 수수료도 너무나 비싸 Payment(결제)는 극히 제한된 경우에만 가능하다. 그리고 10초 이내 지급 확인이 가능하다는 사토시의 설명과는 전혀 다르게, 최소 1 컨펌(약 10분)은 기다려야 한다는 것을 누구나 상식처럼 알고 있는 상황이기도 하다.
비트코인 백서 그대로의 모습이 아닌 BTC의 경우, 이를 Bitcoin이 아닌 다른 이름을 붙여야 한다는 소수 의견이 존재한다. 그리고 BTC와는 달리, 비트코인 백서 그대로의 Protocol 유지하고, 사토시의 비전을 실현한다는 프로젝트도 존재한다. 이 프로젝트의 네트워크에서는 종종 수백 MB 사이즈의 블록이 채굴되고, 수천~수만 트랜잭션이 하나의 블록안에 담기기도 한다. 그리고 제로 컨펌으로 트랜잭션을 자유롭게 사용중이다.
https://whatsonchain.com/block-height/678301
무엇보다 10분에 1MB 수준으로 제한된 상태 값만을 저장하는 네트워크이기 때문에, 자원의 효율적 사용이라는 측면에서 빠져나가기 힘든 문제를 내포하고 있다. 이 모든 것이 사토시가 제시했던 모습과 전혀 다르다는 것은 부인하기 힘든 사실이다.