반응형
출처: 안상욱님 페이스북
이 글은 '비트코인 코어' 개발자 Mike Hearn이 2016년 1월14일 미디움에 올린 The resolution of the Bitcoin experiment를 번역한 겁니다. 읽기 쉽게 의역한 부분 많습니다. 문맥을 고려해도 틀린 부분이 있으면 댓글 달아주세요.
나는 5년 넘게 비트코인 개발자로 일했다. 내가 작성한 비트코인이라는 소프트웨어는 수백 만 명에 달하는 사용자와 수백 명의 개발자가 사용했다. 내 말 한마디가 몇몇 스타트업의 탄생으로 직결되기도 했다. 나는 Sky TV와 BBC 뉴스에서 비트코인을 주제로 이야기했다. 나는 <이코노미스트>지에 종종 비트코인 전문가이자 주요 개발자로 인용됐다. 나는 SEC(미국 증권거래위원회)와 은행가, 카페에서 만난 일반인에게 비트코인을 설명했다.
처음부터 나는 언제나 같은 말을 했다. 비트코인은 일개 실험이고, 다른 모든 실험이 그렇듯, 비트코인 역시 실패할 수 있다. 그러니 손실을 입어선 안 되는 자산을 함부로 투자하지 말라고 말이다. 인터뷰에서도, 콘퍼런스 발표에서도, 이메일에서도 이 말을 반복했다. Gavin Andresen과 Jeff Garzik 같은 다른 유명 개발자도 같았다.
그러나 비트코인이 실패할 수 있다는 가능성을 알고 있었다고 할지라도, 지금 당장 비트코인이 망해가고 있다는 불가피한 결론이 나를 큰 슬픔으로 몰아넣는다. 비트코인의 기초가 무너졌다. 단기적으로 가격이 어떻게 변할지 몰라도, 장기적으로는 내리막길을 걸을 거다. 내가 가진 비트코인을 모두 처분하고 나는 비트코인 개발에서 손 떼려 한다.
왜 비트코인이 실패했는가? 비트코인 커뮤니티가 실패했기 때문이다. 비트코인이라는 새로운 분산된 화폐가 지닌 두 가지 특성, 구조적으로 몇몇 주요 기관에 의존하지 않고 ‘대마불사’ 논리에서 벗어났다는 점이 오히려 더 심각한 문제를 낳았다. 비트코인 시스템은 한 손에 꼽을 만큼 적은 사람에게 장악 당했다. 더 나쁜 점은 비트코인 네트워크가 기술적으로 붕괴하기 일보 직전이라는 점이다. 이런 결과를 예방해야 할 매커니즘은 망가져버렸다. 그 결과, 비트코인이 기존 금융 시스템보다 낫다고 여길 이유가 사라졌다.
생각해보자. 비트코인을 전혀 들어본 적 없다면, 아래와 같은 결제 네트워크를 생각해보라. 이런 결제 시스템을 믿을 수 있겠는가?
- 지금 가진 돈을 옮길 수 없다
- 높은 수수료를 물어야하는데, 수수료율을 예측할 수 없으며 심지어 빠르게 증가한다
- 구매자가 물건을 들고 가게 문을 나선 뒤에 단추 한 번만 누르면 결제를 취소할 수 있다(당신이 이 ‘기능'을 모른다고 해도 상관 없다. 비트코인이 이를 허용하도록 바꾸기만 하면 그만이다)
- 거대한 백로그(backlogs)와 신뢰할 수 없는 결제에 시달린다
- 중국이 통제한다
- 이를 개발 중인 회사와 사람들이 내전을 벌인다
내가 감히 예측컨데 답은 ‘아니오'다.
교착상태가 코 앞에 닥쳤다
비트코인 생태계가 어떻게 변해왔는지 잘 모르는 분들을 위해 2016년 1월 비트코인 네트워크가 어떤 모습인지 잠깐 살펴보자.
비트코인 블록체인은 가득찼다. 여러 파일의 묶음인 블록체인이 어떻게 ‘가득 차'는지 궁금하겠지. 답은 간단하다. 순전히 임의로 만든 블록당 1MB라는 저장공간이 가득찼다는 얘기다. 먼 옛날에 거칠게 만들어둔 용량 제한이 지금껏 제거되지 않았다. 그 결과 지금 비트코인 블록체인 네트워크의 용량은 거의 고갈됐다.
여기 블록 크기 그래프를 살펴봐라.
지난 6월 누군가 비트코인 네트워크를 공격하기 위해 거래를 폭증시켰던 분산서비스거부(DDoS) 공격 와중에 비트코인 블록체인은 한계점을 찍었다. 이런 걸 ‘스트레스 테스트'라고 부른다. 당시 약 700KB 정도의 거래 (또는 초당 3회 이하 결제)가 이뤄졌다. 이를 비트코인이 실제로 처리할 수 있는 거래량의 한계라고 봐도 무방하겠다.
주의: 어디선가 초당 7회 거래가 비트코인의 한계라고 읽었을지도 모르겠다. 초당 7회라는 숫자는 2011년께 나온 오래된 수치다. 비트코인 거래는 그때보다 훨씬 더 복잡해졌다. 그래서 실제 수치는 훨씬 낮다.
실제 한계가 이론적 한계인 1000KB가 아니라 700KB인 까닭은 승인 대기 중인 거래가 쌓여 있음에도 불구하고 채굴자가 종종 허용된 것보다 작은, 심지어 빈 블록을 만들어내기 때문이다. 이런 문제는 중국의 ‘만리장성' 방화벽의 검열 시스템이 데이터 전송을 방해하기 때문으로 보인다. 게다가 1초 안에 처리해야 하지 않나
자세히 들여다보면 트래픽이 2015년 여름 끝자락부터 계속 증가하는 모습이 보일 거다. 이건 예견된 바다. 지난해 3월에 나는 비트코인의 계절적 성장 패턴에 관한 글을 썼다.
주간 평균 블록 사이즈를 보자:
평균 블록 크기가 거의 한계에 다달았다. 당연히도 블록 크기가 한계에 달했기 때문에 비트코인이 거래 요청을 처리하지 못하는 구간이 빈번하게 나타났다. 심지어 승인을 기다리는 거래 내역이 줄지어 설 때도 있었다. 이런 상황은 아래 블록 크기 표에서 잘 드러난다. (채굴자가 제시한 750KB 크기 블록들은 그들의 소프트웨어에서 제대로 조정되지 않은 것이다):
처리 용량이 바닥난 네트워크는 신뢰할 수 없게 된다. 수많은 온라인 공격이 그저 대상 컴퓨터에 트래픽을 쏟아붇는 단순한 수법을 택하는 이유다. 비트코인 네트워크는 크리스마스부터 거래량이 늘어나 불안해지기 시작했다. 피크 타임에 거래 승인이 밀리는 일은 이제 일상이 됐다.
비트코인 기반 사업을 벌이는 ProHashing의 뉴스 한 건을 인용한다:
몇몇 고객이 오늘 아침 Chris에게 비트코인 결제가 실행되지 않는 이유를 물었다...
이 문제는 이런 뜻이다. 이제 공식적으로 비트코인 네트워크를 신뢰하는 게 불가능해졌다. 통해 거래가 제대로 처리될지, 언제쯤 처리될지 알 수 없기 때문이다. 네트워크가 너무 혼잡하기 때문에 거래량이 조금만 치솟아도 네트워크 상태에 지대한 영향을 미칠 지경이다. 60분에서 14시간 사이 무작위로 거래가 승인될테니 기다리라는 말을 받아들일 수 있는 사람이 있을까?
레딧에 사람들이 ‘위기는 없다’는 게시물을 올리는 사실이 우스꽝스럽다. 사람들은 내가 어떤 연유에서든 사태의 심각성을 과장했다며 내가 어제 올린 포스트를 비판한다. 그런 사람들이 과연 매일 같이 돈을 보내려고 비트코인 네트워크를 쓰기는 할까?
ProHashing은 크리스마스와 새해 사이에 거래 내역을 잃어버릴 뻔했다. 이번에는 비트코인 거래소에서 자사 전자지갑으로 송금이 지연됐다.
비트코인은 이런 상황이 생길 경우 자동으로 우선 순위를 조정하도록 설계돼 있다. 송금 수수료를 올려 수수료를 안 내는 사용자보다 우선해 거래를 처리하도록 하는 거다.하지만 이런 문제가 계속 발생하는 사실을 보면 이런 매커니즘이 효과가 없는 것으로 보인다. 그러면 비트코인 네트워크의 거래 비용만 급속도로 증가할 거다. 한 때 비트코인은 낮은 수수료, 심지어 수수료를 물지 않는 거래를 큰 장점으로 여겼다. 하지만 채굴자에게 내는 수수료가 신용카드 수수료를 초과하는 일이 점점 빈번해진다.
왜 블록 용량을 키우지 않았을까? 중국 채굴자가비트코인 블록체인을 장악했기 때문이다. 이들 중 두 명이 50%가 넘는 해시 파워를 좌지우지한다. 최근 한 콘퍼런스에서 동시에 무대 위에 오른 몇몇 사람이 전체의 95%가 넘는 해시 파워를 갖고 있었다. 이들이 블록체인의 성장을 허용하지 않는다.
왜 이들은 블록 용량을 키우는 데 반대하는가? 몇 가지 이유가 있다. 첫 번째는 ‘비트코인 코어' 소프트웨어를 만드는 개발자들이 필수적인 변화를 도입하기를 거부해왔기 때문이다. 또 다른 이유는 채굴자가 변화를 거부하기 때문이다. 그들의 관점에서는 기존과 다른 블록체인을 도입하는 일이 ‘반역'이다. 이들은 새로운 블록체인이 형성돼 ‘쪼개져' 나가면 투자자가 겁에 질릴까 두려워 한다. 이들은 현재 문제를 무시하고 지금 이대로 현상을 유지하는 쪽을 택했다.
마지막 이유는 중국 인터넷이다. 중국 인터넷은 정부의 검열망 때문에 사실상 인터넷에서 분리돼 있다. 따라서 국제 인터넷망과 데이터를 교환하는 일이 제대로 실행되지 않는다. 인터넷 속도가 모바일 인터넷보다 느려지는 일이 다반사다. 전국의 인터넷망이 싸구려 호텔 와이파이보다 느려진 와중에 사진을 전송받는다고 상상해보라. 바로 지금, 중국 채굴자가 매 블록을 만들때 마다 보상으로 주어지는 1만1000달러어치 비트코인 25개를 차지하려고 자기 네트워크를 국제 인터넷망과 맞물려 놓으려 안간힘을 쓰고 있다. 이들은 비트코인 네트워크가 더 인기를 얻을 경우 채굴 난이도가 높아져 소득원을 잃어버릴까봐 두려워 한다. 이런 경제적 인센티브가 중국 채굴자가 비트코인이 더 대중적으로 되는 것을 가로막는 이유다.
많은 비트코인 사용자와 구경꾼이 이 지경에 이르기 직전까지도 이런 문제가 어떻게든 해결되리라 짐작했다. 블록체인 용량 제한도 당연히 증가됐으리라 여겼다. 결국, 한때 블록체인을 금융의 미래상으로 부각시켰던 비트코인 커뮤니티가 블록체인을 유아기에 옭아매려 의도적으로 자살하는 길을 택한 걸까? 믿기 어렵겠지만 바로 이것이 지금 벌어지는 일이다.
내전이 벌어진 결과, 미국에서 가장 크고 잘 알려진 비트코인 스타트업 코인베이스는 비트코인 공식 웹사이트에서 삭제됐다. 줄을 잘못 섰기 때문이다. 비트코인 커뮤니티 포럼에서도 추방당했다. 커뮤니티의 일부가 수백 만 명에게 비트코인이라는 화폐를 소개했던 사람들을 무자비하게 기습할 때 무슨 일이 일어날 지는 불 보듯 뻔하다. 만사가 미쳐 돌아가겠지.
무슨 일이 일어나는지 아무도 모른다
당신이 어린 일을 들어보지 못했다고 자책하지는 마라. 당신 만이 아니다. 2015년부터 지금껏 벌어진 일 가운데 가장 신경쓰이는 일은 투자자와 사용자에게 전달되던 정보가 매말랐다는 것이다.
8개월도 안 되는 기간에 비트코인은 투명하고 개방적인 커뮤니티에서 검열이 난무하고 비트코이너끼리 서로 공격하는 무간지옥으로 전락했다. 이런 변화는 내가 지금껏 경험한 어떤 일보다도 끔찍하다. 그래서 나는 비트코인 커뮤니티와 연관된 일을 하는 것이 불편해졌다.
비트코인은 투자수단으로 만들어지지 않았다. 손실을 감내할 수 없을 정도로 투자해선 안 될 실험적인 화폐였다. 이 점은 언제나 명확하게 설명돼 왔다. 나는 비트코인의 복잡성을 걱정하지는 않았다. 투자자에게 필요한 정보가 충분하기 때문이다. 가내 수공업으로 만든 책을 비롯해 콘퍼런스, 동영상, 웹사이트가 사람들이 비트코인을 깊이 이해할 만큼 충분하다.
하지만 이제 상황이 달라졌다.
비트코인 소지자 대다수는 주류 미디어에서 정보를 얻는다. 비트코인 가격이 치솟을 때마다 언론은 가격 상승 소식을 전했다. 그러면 거품이 생겼다.
비트코인 뉴스가 신문과 잡지까지 도달하는 과정은 단순하다: 커뮤니티 포럼에서 뉴스가 태어난다. 그럼 이 뉴스가 더 전문화된 커뮤니티나 기술 뉴스 웹사이트로 전파된다. 이때 종합지 기자가 이 뉴스를 포착하고 자기 버전으로 가공한다. 나는 이런 일이 계속 일어나는 걸 목격했다. 종종 기자와 뉴스를 두고 토론을 벌임으로써 내가 뉴스의 일부가 되기도 했다.
2015년 8월 심각한 경영상 문제 때문에 비트코인 P2P 네트워크를 작동시키는 프로그램을 유지보수하는 ‘Bitcoin Core' 프로젝트가 블록 크기를 늘리는 버전을 배포하지 않으리라는 사실이 확실해졌다. 그 이유는 복잡하니 아래 따로 논의하자. 하지만 분명한 점은 커뮤니티가 새로운 사용자를 계속 확보할 능력이 필요했다는 점이다. 그래서 (나를 포함해) 오랫동안 비트코인을 만져온 개발자는 한데 모여 블록 크기를 키우는데 필요한 코드를 작성했다. BIP101다. 우리는 이 수정안을 비트코인 기본 지갑(Bitcoin XT)에 반영해 배포했다. 우리가 판올림한 비트코인 기본 지갑을 채택함으로써 채굴자는 블록 크기를 늘리는데 동의할 수 있었다. 채굴자 가운데 75%가 블록 크기를 늘리는 데 동의하면 이것이 정론으로 채택될 수 있었다.
어떤 이유에서인지 Bitcoin XT 배포는 몇몇 사람의 심기를 매우 불편하게 만들었다. 그 중 한 사람은 bitcoin.org와 가장 큰 비트코인 포럼의 관리자였다. 그는 표현의 자유라는 미명하에 종종 그가 관리하는 포럼에서 불법 활동을 논의하도록 묵인하곤 했다. 그러나 XT가 나왔을 때, 그는 놀라운 결정을 내렸다. 그는 XT가 ‘개발자의 합의'를 대표하지 않는다며 진짜 비트코인이 아니라고 주장했다. 그는 투표가 기형적인 일이라고 말했다. 아래 같은 이유를 들면서 말이다.
“민주주의의 부재야말로 비트코인의 가장 위대한 속성 중 하나다”
그래서 그는 XT를 완전히 죽이기 위해 어떤 일이든 불사하겠다고 마음 먹었다. 비트코인 주요 커뮤니케이션 채널을 검열하는데서 시작했다. 그가 관리하는 토론 포럼에서 ‘Bitcoin XT’를 거론하는 글은 모두 삭제됐다. XT는 공식 bitcoin.org 웹사이트 어디에도 언급되거나 링크될 수 없었다. 이런 검열이 일어나지 않는 다른 포럼을 일러주려던 사용자는 당연히도 차단당했다. 수많은 사용자가 포럼에서 추방당해 자신의 견해를 표현할 권리를 빼앗겼다.
당연히도 사람들은 분노했다. 그 분노를 느껴보고 싶다면 이 성명문에 달린 댓글을 읽어보라.
결국 몇몇 사용자는 검열당하지 않는 새 포럼을 찾아 나섰다. 이 포럼을 읽어 내려가면 서글퍼진다. 지난 몇 달 동안 나는 매일 같이 이들이 물리쳤을 검열과 복종에 분개하는 게시물을 봤다.
하지만 XT나 검열에 관한 소식을 접할 수 없다는 사실 자체가 사용자에게 문제를 야기했다.
사상 처음으로 투자자는 지금 무슨 일이 일어나는지 확실히 알아낼 길을 잃어버렸다. 다른 의견은 체계적으로 묵살당했다. Bitcoin Core가 무슨 역할을 하는지 기술적으로 논의하는 일마저 금지당했다. 그 자리는 괴상한 논리가 차지했다. 그리고 비트코인 붐에 휩쓸려 가볍게 뛰어든 많은 사람들은 비트코인 시스템이 한계에 치닫는다는 사실을 모름이 분명했다.
이 때문에 나는 상당히 걱정했다. 수 년 동안 정부는 채권과 투자 시장 주변에 수많은 법을 만들었다. 비트코인은 채권이 아니다. 나는 비트코인이 그런 법에 구애받으리라 믿지 않는다. 정부 당국의 정신은 간단 명료하다: 반드시 투자자에게 충분한 정보를 전달하라는 것이다. 만일 제대로 설명받지 못한 투자자가 투자액을 잃으면, 곧바로 정부의 눈총이 뒤따른다.
왜 비트코인 코어에 한계를 만드는가
사람이 문제다.
Satoshi가 비트코인에서 손을 뗄 때, 그는 지금 Bitcoin Core라 불리는 프로그램의 관리 권한을 초기 기여자인 Gavin Andresen한테 넘겼다. Gavin은 큰 그림을 볼 줄 아는 단호하고, 경험 많은 리더다. 그의 기술적 판단력을 믿었기에 나는 거의 8년 동안 일했던 구글에서 나올 용기를 얻었다. 단 하나의 문제가 있었다. 그리 큰 문제는 아니었다. Satoshi는 Gavin한테 그 일을 하고 싶냐고 묻지 않았다. 사실 Gavin은 원치 않았다. 그래서 Gavin은 첫 번째 개발자 4명에게 코드 접근 권한을 나눠줬다. 이 개발자 명단은 순식간에 추려졌다. Gavin에게 어떤 일들이 생기더라도 비트코인 개발 프로젝트가 무난히 계속 진행될 수 있도록 하기 위한 조치였다. 근본적으로 이들이 선택된 이유는 당시 주변에 있던 쓸모 있는 사람이었기 때문이다.
그들 중 한 명인 Gregory Maxwell은 별난 시각을 지녔다. 그는 비트코인이 수학적으로 불가능하다고 주장했다. 더 문제는 따로 있다. 그는 Satoshi가 제시한 이상을 믿지 않았다.
비트코인 프로젝트를 처음 발표했을 때 Satoshi는 블록체인이 어떻게 대량 결제를 버티도록 확장될 수 있는지 질문 받았다. 당연히 비트코인이라는 아이디어가 먹혀들기 시작하면 내려받아야 하는 데이터 양이 넘칠 수도 있잖나. 이건 비트코인 초창기의 유명한 비판이었다. Satoshi는 이 질문에 완전히 준비된 답을 내놓았다. 그는 이렇게 말했다:
대역폭이 당신이 생각하는것 만큼 제한되어 있지 않을 수도 있다. 만약 네트워크가 [VISA만큼 커진다면] 몇 년 걸릴지도 모른다. 그리고 그 때 인터넷으로 HD 영화 두 편을 전송하는 것과 맞먹는 일은 별로 큰 일이 아닐 것으로 보인다.
이건 간단한 논쟁이다. 현존하는 결제 네트워크가 거래를 어떻게 처리하는지 보고 비트코인이 이런 일을 따라하려면 무엇이 필요한지 보라는 거다. 그리고 네트워크의 성장은 하룻밤 사이에 일어나지 않는다는 사실을 꼬집는 지적이다. 미래의 네트워크와 컴퓨터는 지금보다 발전돼 있겠지. 사실 봉투의 뒷면 계산법(back-of-envelope calculation)이 이런 점을 암시했다. 그는 대역폭 뿐 아니라 다른 많은 요소를 종합해 봐도 “절대 한계점에 부딪히지 않을 거야”라고 나에게 말했다.
Maxwell은 이런 생각에 동의하지 않았다. 2014년 12월 한 인터뷰에서 발췌했다:
Maxsell은 비트코인이 성장해도 분산에 관한 문제는 줄어들지 않을 것이라고 지적했다. “네트워크의 거래량을 논할 때 확장성과 분산성은 내재적으로 상충합니다.”
그는 "문제는 비트코인의 거래량이 증가할수록, 고유 비용 때문에 더 큰 회사들이 비트코인 노드를 운영하는 유일한 업체들이 될 것이다”라고 지적했다.
이런 생각에 따르면, 비트코인이라는 아이디어는 망할 운명을 타고 태어났다. 사용자가 많아진다는 것은 곧 분산도가 떨어진다는 의미다. 이건 네트워크에 위험한 일이다. 이 문제는 실용적 사용의 비율이 낮고 성장이 느리지만 기술이 시간이 지남에 따라 발전한다는 사실을 무시한다. 이 주장을 반박하는데 나와 Gavin은 시간을 많이 쏟아부었다. 이로서 당연하지만 미친 결론이 나온다: 만약 분산이 비트코인을 이롭게 만드는 요소이고 성장이 분산을 위협한다면, 비트코인은 성장하면 안 된다.
대신 Maxwell이 결론지었듯 비트코인은 지금 같이 블록체인 기반 시스템이 아니라 모호하게 정의된 정산 레이어 같은 것이 돼야 한다.
개미지옥에 빠져들다
일개 회사라면 조직의 목표에 동의하지 않는 사람은 간단히 처리된다. 해고하면 그만이다.
하지만 비트코인 코어는 회사가 아니라 오픈 소스 프로젝트다. Gavin이 개발자 5명에게 코드를 수정할 권한을 내주고 리더가 되지 않겠다고 결심한 뒤로 이들 중 누구를 내치려는 조치가 발현된 적은 없었다. 비트코인 코어 개발진을 꾸릴 때 이들이 프로젝트의 목표에 동의하는지 확인하는 면접 같은 조치도 없었다.
비트코인이 인기를 얻어 트래픽이 1MB 한계에 육박함에 따라 개발자 사이에선 블록 크기 제한을 키워야 한다는 논의가 종종 벌어졌다. 하지만 이런 논쟁은 금방 감정적으로 변질됐다. 블록 크기를 늘리면 분산화라는 가치를 거스르기 때문에 위험하다는 지적이 잇따랐다. 다른 조그마한 집단과 마찬가지로 사람들은 충돌을 피하는 쪽을 택했다. 깡통을 길 밖으로 내던졌다.
Maxwell이 다른 개발자 몇 명을 고용해 자기 회사를 세우자 복잡한 일은 날이 한층 더 꼬였다. 당연히도 이들의 견해는 새 사장과 궤를 같이 했다.
공동으로 관리하는 소프트웨어를 판올림하는 일은 시간이 걸린다. 그래서 Gavin은 아직 8개월이 남은 시점인 지난 2015년 5월, 이 문제를 단박에 정면돌파해야 한다고 결심했다. 그는 블록 용량 확대에 반대하는 의견에 일일히 반박하는 글을 작성하기 시작했다.
하지만 이 문제가 불거짐에 따라 Bitcoin Core 개발진은 속절 없이 구설수에 올랐다. Maxwell과 휘하 개발자는 블록 용량 확대를 생각하는 일조차 무차별적으로 반대했다. 이 주제를 애초에 입 밖으로 낼 생각도 없었다. 이들은 ‘합의' 없이는 어떤 일도 결정해선 안 된다고 고집을 피웠다. 블록 용량을 키운 비트코인 코인 새 버전을 만들어야 할 개발자들은 승자와 패자가 갈릴 수 밖에 없는 갈등에 연관되기를 두려워했다.
이런 연유로, 거래소와 사용자와 지갑 개발자와 채굴자 등 모든 업계 관계자가 블록 용량이 늘어나리라 짐작하는 와중에도 코어 개발자 5명 가운데 3명은 블록 용량에 손대길 거부했다.
교착상태다.
이런 상황에도 시간은 성실하게 흘러갔다.
XT 사용자를 노린 대규모 DDoS 공격
정보망이 차단됐지만 Bitcoin XT는 발표된 뒤 며칠새 전체 네트워크 노드 가운데 15%에게 채택됐다. 마이닝풀 가운데 최소한 한 곳은 BIP101에 동의하는지 채굴자 사이에 투표를 부쳤다.
바로 이 때 분산서비스거부(DDoS) 공격이 시작됐다. 이 공격은 일대 인터넷을 마비시킬 정도로 강력했다.
“나는 DDoS 공격을 당했어요. 이 대규모 DDoS 공격은 내가 속한 (지역) ISP 전체를 무너뜨렸습니다. 이 범죄자들 때문에 지난 여름 다섯 마을 주민들이 몇 시간 동안 인터넷을 쓰지 못했어요. 이것이 내가 비트코인 노드 호스팅을 중단한 결정적인 이유입니다.”
데이터센터가 통째로 차단당한 사례도 있다. 그 데이터센터 안에서 작동하던 XT 노드 한 곳이 작동을 중단하기 전까지 공격이 계속됐다. 대략 3분의 1 정도 되는 노드가 이런 방식으로 공격당해 인터넷에서 제거 당했다.
심하게는 BIP101 수정안을 채택한 한 마이닝풀이 공격당해 운영을 멈추기도 했다. 메시지는 분명하다. 블록 용량 확대안을 지지하거나, 사용자에게 동의 여부를 묻기만 해도 공격당하리라는 것이다.
가해자들은 여전히 바깥을 활보한다. XT가 발표된 뒤 몇 달 뒤 코인베이스가 비트코인 코어 개발진을 기다리다 지쳤다며 XT를 가동할 것이라고 발표했다. 코인베이스 역시 한동안 DDoS 공격에 시달려 인터넷에서 격리당했다.
짝퉁 콘퍼런스
DDoS 공격과 검열이 공공연하게 벌어지고 있는데도 XT는 추진력을 얻어갔다. 이런 움직임은 Bitcoin Core에 위협을 가할 지도 모를 일이었다. 그래서 몇몇 개발자는 ‘비트코인 확대(Scaling Bitcoin)’라는 이름으로 콘퍼런스를 잇따라 개최하기로 결정했다. 8월과 12월이었다. 이들은 필수불가결한 ‘합의'에 도달하는 것이 콘퍼런스의 목표라고 주장했다. 전문가 사이에서 나온 합의를 싫어할 사람은 없을 거다. 안 그런가?
나는 이들을 보자마자 방해공작에 불과하다고 확신했다. 지금껏 블록 용량 확대를 언급하기조차 꺼리던 사람들이 콘퍼런스에 참가한다고 마음을 바꿀 리는 없기 때문이다. 더군다나 이 콘퍼런스는 네트워크 업그레이드에 쓸 시간도 몇 달도 안 남은 겨울 초입에 시작됐다. 마냥 콘퍼런스가 열리길 기다리며 소중한 몇 개월을 흘려버리는 일은 전체 비트코인 네트워크의 안정성을 위협하는 짓이었다. 사실 첫 번째 콘퍼런스는 쓸데없었다. 구체적인 제안을 논의하는 게 금지당했기 때문이다.
그래서 나는 안 갔다.
불행히도 이 전술은 굉장한 효과를 거뒀다. 비트코인 커뮤니티가 완전히 이들 손아귀에 놀아났다. 채굴자나 스타트업과 얘기하면 XT를 가동하지 않는 이유로 보통 “Core 개발진이 12월에 용량을 확대하기를 기다리기 때문"이라고 답했다. 이들은 커뮤니티가 분열됐다는 뉴스를 접할 때마다 비트코인 시세가 떨어질까봐 전전긍긍했다. 비트코인 가격이 결국 이들의 밥줄이잖나.
마지막 콘퍼런스가 용량 제한을 확대할 어떤 계획도 제시하지 않고 왔다 갔다. 코인베이스나 BTCC 같은 몇몇 회사가 자신들이 놀아났다는 사실을 깨달았다. 그러나 너무 늦은 뒤였다. 커뮤니티가 기다리는 동안 일일 거래량은 자연스레 25만 건이 늘어났다.
무계획
블록 크기 증가에 찬성하는 두 Bitcoin Core 개발자 Jeff Garzik과 Gavin Andresen은 커뮤니티 안에서 대단한 영향력을 행사했다. 이들은 가장 오랫동안 Bitcoin Core 개발에 기여해온 사람이기도 하다. 두 사람은 얼마 전 함께 “비트코인은 합의를 향한 급행열차에 올랐다(Bitcoin is Being Hot-Wired for Settlement)"라는 게시물을 작성했다.
Jeff와 Gavin은 보통 나보다 부드럽게 의견을 개진한다. 나는 내가 본 대로 말하는 성격이지만 Gavin은 섬세하고 우직한 편이다. 그래서 이들이 함께 쓴 게시물에서 보이는 강한 어조는 이례적이다. 두 사람은 누구를 향해 주먹을 내지르지는 않았다.
지금 비트코인 커뮤니티에서 갑론을박하는 로드맵에도 일리는 있다. 더 많은 거래량을 처리할 계획도 들어 있다. 하지만 이건 중대한 단점을 충분히 설명하고 인정하지 못한다.
Bitcoin Core 블록 크기는 변하지 않는다; 이 지점에는 전혀 논란의 여지가 없다.
이상적이고 투명한 오픈 소스 환경이라면 BIP가 세상에 나왔겠지만, 이런 일은 일어나지 않았다.
Scaling Bitcoin 워크숍의 대외명분 중 하나는 혼란스러운 코어 블록 크기 논란을 질서정연한 의사 결정 과정으로 정리해내는 것이다. 이런 일은 벌어지지 않았다. 뒤돌아보니 ‘Scaling Bitcoin은 블록 크기 결정을 지연시키기만 했다. 그 와중에 거래 수수료는 계속 치솟고, 블록 용량은 고갈됐다.
이들이 지적한 대로 논점을 흐리는 일은 점점 더 보편화됐다. 예를 들어 Gavin과 Jeff가 언급한 계획은 Scaling Bitcoin 콘퍼런스에서 발표됐다. 하지만 더 효율성을 끌어올리지는 못했다. 겨우 (각 거래에서 몇 바이트를 세지 않는 식으로) 회계적 꼼수를 동원해 60% 용량을 확보하는 게 다였다. 이것도 한참 모자라지만. 게다가 이 제안을 따르려면 엄청난 변화가 뒤따라야 한다. 비트코인 관련 소프트웨어를 한올한올 뜯어 고쳐야만 하기 때문이다. 용량 한계를 끌어올리는 단순한 작업 대신 대규모 협력이 뒤따라야 하는 엄청나게 복잡한 일을 하는 쪽을 택한 거다. 기껏해야 몇 달밖에 버티지 못할 미봉책인데도 말이지.
수수료를 대체하다
수수료로 트래픽을 통제하는 방식의 한 가지 문제가 있다. 거래 당시 수수료와 결제가 끝나는 시점에 수수료가 달라질 수 있다는 점이다. Bitcoin Core에는 이 문제를 풀어낼 기막힌 해법이 있다. 블록체인에 각인되기 전까지는 사용자가 결제건을 수정할 수 있도록 하는 것이다. 대외적 의도는 사용자가 이미 지불한 수수료를 조정할 수 있도록 하는 것이지만, 이런 기능은 사용자가 결제 자체를 무를 수 있도록 한다.
한눈에 봐도 이러면 비트코인은 물건을 사는데 쓸 수가 없어진다. 결제 내역이 블록체인에 나타나기 전까지 기다려야만 한다. 지금 과다한 트래픽 때문에 몇 분이 아니라 몇 시간도 걸리는 바로 이 일을 말이다.
Bitcoin Core 개발팀은 이 기능을 이렇게 정당화한다. 이건 큰 문제가 아니야. 여지껏 블록 한 개가 형성되기 전까지 기다릴 수 없었다면, 이미 이론적으로 결제 사기 위험을 감수했다는 얘기고, 이는 곧 네가 비트코인을 제대로 활용하지 않았다는 얘기거든. 따라서 이런 위험성을 100% 확실한 위험으로 만드는 일도 그리 큰 변화는 아니지.
달리 말하면 그들은 리스크 관리가 존재한다는 사실을 무시하기 때문에 이런 변화를 수수료 ‘0’라고 인식하는 것이다.
이런 프로토콜 수정안은 Bitcoin Core 다음 버전인 0.12에 포함될 거다. 채굴자가 Bitcoin Core를 판올림하면 이 기능이 활성화된다. 전체 비트코인 커뮤니티가 이를 전격적으로 비판했지만 남은 Bitcoin Core 개발자는 다른 이가 어찌 생각하는지는 아랑곳 않는 듯하다. 그러니 이런 변화는 곳 실현될 거다.
이 정도로 설명했는데도 비트코인이 심각한 문제를 품고 있다는 사실을 확신할 수 없다면, 당신은 영영 깨닫지 못할 거다. 비트코인을 실제 상점에서 사용할 수 없게 됐을 때 얼마나 많은 사람이 비트코인이 수백 달러짜리라고 생각할까?
결론
비트코인은 이례적으로 위험한 상황에 빠졌다. 마운트곡스 파산 같은 지난 위기는 생태계 주변에 싹튼 일개 서비스나 회사의 잘못이었다. 이번에는 다르다. 이건 핵심 시스템, 블록체인 자체의 위기다.
더 근본적으로 이번 위기는 서로 다른 세계관을 지닌 집단 사이에 철학적 견해가 깊다는 사실을 보여준다. 한쪽은 세계가 ‘전문가의 합의'에 따라 다스려져야 한다고 생각하는 반면 다른 쪽은 평범한 사람들이 스스로 납득할 수 있는 정책을 채택해야 한다고 여긴다.
Bitcore Core를 대체할 새로운 팀이 꾸려진다 할지라도, 마이닝 파워가 만리장성 건너편에 집중돼 있다는 문제는 사라지지 않는다. 10명도 안 되는 사람 손아귀에 놀아나는 이상 비트코인에는 미래가 없다. 그리고 이 문제는 해결할 방법도 없다. 어느 누구 제안조차 제시하지 않는다. 커뮤니티는 늘 블록체인이 억압적인 정부에 의해 전복될까 우려했다. 이 얼마나 모순적인 일인가.
아직 모든 것을 잃은 건 아니다. 지금껏 일어난 모든 일에도 불구하고, 지난 몇 주 동안 점점 더 많은 커뮤니티 회원이 내가 버려두고 온 것을 주워들기 시작했다. Bitcoin Core의 대체제를 만드는 일이 언뜻 배신으로 보일지 몰라도, 이미 세간의 관심을 두고 싸우는 두 무리가 있다. Bitcoin Classic과 Bitcoin Unlimited다. 지금까지는 두 부류도 XT가 겪었던 똑같은 문제를 겪고 있다. 그러나 새 사람이 모인다면 탈출구를 찾을 수도 있을 테다.
비트코인계에는 유능하고 정력 넘치는 사람이 많다. 지난 5년 동안 이런 사람을 많이 알게 돼 기뻤다. 이들의 창업가 정신과 돈과 경제와 정치를 보는 새로운 관점을 배우는 것은 황홀한 경험이었다. 내가 매진했던 프로젝트가 이렇게 수포로 돌아간다고 해도 나는 비트코인계에서 보낸 시간이 아깝지 않다. 나는 오늘 아침 검열당하지 않는 포럼에서 인사 나눌 사람을 찾으려고 일어났다. 이들은 내게 떠나지 말라고 부탁했지만 나는 다른 일로 옮겨 가야 한다. 이들에게 이 자리를 빌어 인사를 전한다. 행운을 빈다. 잘 지내라. 늘 좋은 일만 가득하길 바란다.
<끝>
반응형
'IT기술 관련 > 기타 기술' 카테고리의 다른 글
Arduino Uno에서 ESP8266을 이용하여 MYSQL에 온도값(DB18B20) 넣기 (0) | 2019.04.16 |
---|---|
하이퍼레저 패브릭 네트워크 구조[Hyperledger Fabric Network Structure] (0) | 2019.03.28 |
Blockchain에 대하여, 과거에서 미래까지 (0) | 2017.07.10 |
POW vs POS (0) | 2017.07.10 |
하드포크 vs 소프트 포크 (0) | 2017.07.10 |