최근 《신서유기3》라는 예능 프로그램에서 나영석 PD가 흥미로운 퀴즈를 출제했다. "지폐나 동전과 달리 물리적 형태가 없는 온라인 가상화폐로, 은행을 거치지 않고 개인과 개인이 직접 돈을 주고 받을수 있도록 분산화된 거래 장부 방식을 도입한 이것은 무엇일까요?" 카카오페이, 가상 계좌, 티머니 등 오답이 난무했다. 모두 짐작하겠지만 정답은 비트코인이다. 어떠한 나라도 보증하지 않는 전자 자산이 어떻게 TV 예능 프로그램에 등장하게 되었을까? 시계를 다시 앞으로 돌려 보자.
*편집자 주 - 김종환님의 이번 기고는 비트코인의 현실적 한계를 짚어보고, 비트코인의 근간인 블록체인 기술의 본질과 잠재적 가능성을 여러 분야에 걸쳐 짚어보는 내용으로, 아래 순서대로 이어집니다. (링크를 누르면 해당 부분으로 이동합니다.)
비트코인 본연의 가치와 현실의 문제들
비트코인은 드라마틱하게 성장했다. 하지만 비트코인이 약속한 미래와는 달리 대규모 해킹사고나 횡령, 자금세탁처럼 부정적 사건도 끊이지 않았다. 더욱 큰 문제는 비트코인의 강력한 메시지와는 별개로, 비트코인 생태계가 여전히 초기 단계에 머물러 있다는 점이다. 비트코인을 실제 거래에서 사용한다고 했을 때, 비트코인을 사고팔 수 있는 거래소의 이용 방법이 쉬운가? 오프라인 상점에서 비트코인으로 결제하는 것이 카드로 결제하는 것 보다 편리한가? 수많은 온라인 마켓 플레이스 등에서 결제 수단으로 채택할 만큼 시장 지배력이 있는가? 법적 이슈나 리스크는 존재하지 않는가? 그러나, 부정적인 사건과 사고들 속에서도 적지 않은 사람들이 비트코인의 본질에 대해 관심을 보이기 시작했고, 또 비트코인의 현실적 한계를 극복하려는 시도도 나타나고 있다. 그렇게 비트코인 기술 자체는 초기의 인터넷 환경처럼 완성된 것이 아니라 지속적인 개선과 발전을 거듭하는 중이다.
한편, 비트코인의 네트워크가 점차 확장되고 기능이 발전하면서 여러가지 기술적, 경제적 문제점이 나타나고, 해결해야 할 과제도 등장했다. 그리고, 화폐로서 비트코인이 과연 블록체인의 잠재성을 모두 보여주는 유일한 사례인지, 의문이 제기되기 시작했다. 비트코인이 '화폐' 나 '통화'로서 효과적으로 작동하기에는 아직은 넘어야할 산이 많다. 비트코인의 가치 변동과 인플레이션은 기존 통화의 문제에 기인하는 일이니 넘어가더라도, 중요한 문제들이 남아있다.
비트코인은 3자의 보증이나 중앙의 권위에 의존할 필요가 없는 시스템이다. 하지만 인터넷을 기술적 이해 없이 사용하듯, 비트코인 역시도 기술적 평가 없이 거래소나 PG(Payment Gateway), 송금 서비스 등의 형식을 통해 사용하게 된다. 그리고, 대개의 경우 효율성이나 편의성을 이유로 중앙 집중식 구조가 활용되고, 그 과정에서 비트코인 본연의 기술적 가치인 '탈중앙화'는 희석되어 사라지기도 한다.
필자는 앱스토어에서 비트코인을 관리할 수 있는 지갑을 내려받으면서 암호화 방식이나 개인키 관리 방법 등 보안 관련 사항을 꼼꼼히 살피는 사용자를 거의 본적이 없다. 대규모 비트코인 금융 사고들 가운데 상당수는 블록체인 자체의 문제이기보다는 시스템의 부재나 사용자의 부주의에서 비롯되므로 기술에 대한 이해가 없다면 위험할 수 있다.
또한, 한국의 법적 규제는 비트코인이 넘어야 할 큰 산 중의 하나다. 미국이나 일본처럼 비트코인을 적극적으로 수용해 새로운 질서를 세워보려는 국가들이 속속 등장하고 있는데, 그들 대부분은 '환율정책'에서도 강력한 힘을 가졌다. 비트코인은 특성상 지불 정지나 범죄 자금 회수가 무척 어렵기 때문에 강대국들이 주변국을 경제적으로 예속시킬 수 있는 무기로도 사용될 수 있다. 한국이 비트코인을 빠른 속도로 수용할 수 있을지, 또한 그런 움직임이 타당한 것인지 아직은 판단이 쉽지 않다.
일반 소비자 측면의 문제도 있다. 신용카드나 모바일 결제 수단처럼 다양한 금융 시스템에 비해 비트코인이 큰 혜택과 편의를 주는지 의문이다. 오히려 법정 통화를 비롯한 기존 금융 시스템은 국가의 보호를 받지만, 비트코인은 여러 종류의 사고나 가치 등락에 대한 보호 시스템이 없는 위험한 투기 자산일 뿐이다. 거칠게 말한다면, 국내의 비트코인 생태계는 투자 목적이나 해외 송금, 혹은 은행 계좌가 없거나 실명제를 피하려는 사람들을 위한 것이다. 이것이 비트코인이 블록체인 계열의 '진정한 킬러앱'인지 끊임 없이 의문을 받게 되는 이유다.
화폐 너머의 가능성, '블록체인 2.0'
그런데 몇몇은 "블록체인 기술은 화폐에서만 작동하는가?"라는 새로운 의문을 품기 시작했다. 바로, '비트코인 2.0', 또는 '블록체인 2.0'이라고 불리우는 움직임으로, 블록체인 기술을 비트코인에만 국한시킬 것이 아니라 각종 금융상품, 공증(公證), 스토리지(storage), 베팅(betting), 소셜 서비스 등 여러 방면으로 확대하자는 주장이다. 이러한 과정에서 발생하는 실패와 개선의 반복이 진정한 킬러앱을 만들어내는 데 자양분이 될 수 있다고 본 것이다.
그렇다면, 비트코인이 보여준 블록체인의 진정한 '기능'은 무엇일까? 다국적 컨설팅 그룹 딜로이트(Deloitte)는 블록체인 기술을 "서로 알지 못하는 사람들 사이에 공유된 데이터 또는 디지털 거래 기록을 제 3자의 개입 없이도 상호 신뢰할 수 있도록 해주는 네트워크 기술"로 정의한다. 비트코인에 대한 설명에서도 "가치를 보증하는 중앙화된 주체가 없다"는 점을 강조한다. 정리하면, 비트코인은 블록체인을 이용해 중앙의 권위나 제 3자의 보증에 의존하지 않고도 P2P 네트워크 상에 존재하는 여러 노드(node, 연결된 개별 컴퓨터를 뜻함)간 합의를 통해 가치를 전송하고 서로 검증할 수 있음을 증명한 시스템이다. 그리고, 화폐처럼 높은 수준의 신뢰가 필요한 무언가를 블록체인 위에 구현할수 있다면, 신뢰가 필요한 어떠한 종류의 서비스도 블록체인 위에 구현할 수 있는 셈이다.
블록체인(blockchain)은 '블록(block)'을 잇따라 '연결(chain)'한 모음이다. 블록에는 일정 시간 동안 확정된 거래 내역이 담긴다. 블록에 담을 거래내역을 결정하는 주체는 컴퓨터 자원을 제공하는 ‘참여자’로, 모든 참여자는 블록체인의 완벽한 사본을 각자 갖고 있다. 과반수가 넘는 참여자가 동의한 거래 내역만이 진본으로 인정된다. 그리고, 이를 블록 단위로 박싱(boxing)해서 영구적으로 보관한다. 새로 만든 블록은 앞서 만든 블록 뒤에 체인 형태로 덧붙인다. 이런 과정을 일정 간격으로 반복한다.
공개하면 할수록 더 강화되는 보안성
나카모토 사토시는 비트코인의 거래 데이터를 블록체인을 활용해 저장하고 공유함으로써 누군가의 보증 없이도 P2P 네트워크에서 암호학적으로 안전한 화폐 체계를 구축하는 데 성공했다. 아마도 블록체인을 이해하는 데 가장 좋은 표현은 '공공 장부(또는 등기부)'라는 용어일 것이다. 실제로 비트코인에서 블록체인이 수행하는 역할도 화폐 발행과 거래 내역에 대한 투명한 관리 부분이다. 기존 패러다임에서는 '신뢰할만한' 공공 장부는 반드시 은행처럼 '신뢰할만한' 기관의 보증이 있어야만 가능했다.
은행이 고객의 예치금을 활용하는 과정을 상상해 보자. 사용자가 은행에 가서 "맡긴 돈 100만원을 돌려달라"고 하면, 은행 직원은 거래 장부를 뒤져 기록이 있는지 확인하고, 기록이 있다면 100만원을 내줄테고, 없다면 돈을 주지 않을 것이다. 돈이 오고 간 사실은 은행 내부의 거래 장부에 꼼꼼히 기록되지만, 거래 장부의 내용이 변조되거나 유실되면 은행은 제 역할을 하지 못할 것이다. 그래서 거래 장부(원장)를 기록∙관리하는 일을 금융 거래의 핵심으로 꼽는다. 아무나 접근할 수 없는 건물 깊숙한 곳에 장부를 두고 각종 보안 프로그램과 장비를 구비하며, 24시간 경비를 서고 망을 분리해서 DB를 관리할 것이다. 금융 서비스를 제공하는데 높은 비용이 드는 까닭은 이렇다. 이런 상황은 금융에만 해당하는 일이 아니다. 개인 정보, 의료 정보, 정부의 등기 사항 등, 현실에 존재하는 모든 가치있는 정보는 이런 형태로 저장되고 관리된다.
나카모토 사토시는 중요한 정보를 꽁꽁 싸매고 숨겨야 한다는 보안의 상식을 뒤엎었다. 오히려 많은 사람들이 정보를 공유함으로써 데이터를 조작하지 못하게 막는 방법을 고안했다. 데이터를 공유하는 사람이 많아질 수록 안정성은 더 커진다. 모든 비트코인 블록체인 노드들은 기존의 인터넷 통신망 위로 서로 연결된 P2P 데이터 네트워크를 만들고, 똑같은 거래장부나 그 장부를 증명할 수 있는 고유 값을 각자가 복사해 가져간다. 새로 생긴 거래 내역도 참여자들이 직접 장부에 적어둔다. 노드들은 블록체인에 새로 발급된 모든 거래들을 일정한 주기(비트코인의 경우 10분)마다 한 번씩 모아 검사한다. 만일 숫자가 변조 되거나 거래 내역이 누락된 장부가 있으면, 더 믿을만하다고 여겨지는 다른 사람의 장부들과 비교해 오류가 있는 부분을 축출한다.
믿을만한 장부란 전체 비트코인 참여자 가운데 과반수가 갖고 있는 데이터와 일치하는 장부를 가리킨다. 즉, 과반 이상이 인정하는 장부를 진본이라고 여기며, 과반수의 동의로 분산된 여러 컴퓨터 사이의 합의를 이끌어내 동기화하는 구조가 블록체인이다. 이 복잡한 작업은 다행히도 인터넷에 연결된 컴퓨터들에 의해 처리된다. 사용자는 자신의 컴퓨터를 비트코인 네트워크 유지에 품앗이하고 그 대가로 소정의 비트코인을 얻을 기회(확률)를 얻는, 일종의 분산 병렬 컴퓨팅 네트워크인 셈이다.
물론, 비트코인 사용자의 과반수보다 더 많은 컴퓨터 계산 능력을 동원하면 비트코인 블록체인의 기록을 변조해 네트워크의 신뢰도를 붕괴시킬 수 있지만, 실현 가능성은 거의 없다. 2013년 말, 이미 비트코인 네트워크에 사용자가 기여한 계산 능력은 세계 1위에서 500위까지의 슈퍼컴퓨터를 모두 더한 것의 2배를 넘어섰다. 사실상 조작이 불가능하다는 말이다.
블록체인의 등장으로 기존의 서버 클라이언트 위로 제도적인 방법으로 접근을 차단하고 신뢰를 형성하는 방법 이외에도, 제 3자의 중계나 보증 없이도 P2P환경에서 직접 신뢰 기반의 서비스를 구상할 수 있는 길이 열린 것이다. 이는 블록체인 기술을 활용한다면 금융이나 의료, 공공 데이터 등 고부가가치 데이터도 데이터센터 대신 클라우드와 같은 온라인에 구현할 수 있다는 의미다.
와이컴비네이터(Y Combinator)의 공동 창업자 폴 그레이엄(Paul Graham)이 처음 마이크로컴퓨터나 인터넷이 등장했던 때와 지금의 블록체인 기술의 태동을 자주 비교하는 이유가 여기 있다. 처음 컴퓨터가 등장했을 때 암호 해독을 위한 계산기에 불과했고, 인터넷은 이메일과 작은 용량의 파일 교환이 전부였다. 그런데 재미있는 부분은 당시에는 지금에 비해 한없이 쓸모 없는 기능밖에 못하는 컴퓨터나 인터넷 사용 비용이 물가가 엄청나게 오른 지금보다도 훨씬 더 비쌌었다는 점이다.
엔지니어의 관점에서 본 블록체인
블록체인을 기술자의 관점에서 바라보면 'P2P 네트워크상에 존재하는 불가역적(바꿀 수 없는) 분산 데이터 레이어'다. 이러한 데이터 레이어는 중앙 집중식 데이터베이스에 비해 몇가지 확실한 효과를 지닌다.
첫째, 신뢰할 수 있는 기관 없이도 시스템의 작동이 보장된다. 기존의 중앙화된 신뢰 구조에 기초한 서비스는 여러 분야에서 유용한 해결책이긴 하지만 반드시 '신뢰'가 전제되어야 한다. 즉, 내가 쓰는 서비스의 제공자는 도덕적으로 선량하고 나에게 위해를 가하지 않으며, 내가 필요한 때 필요한 곳에서 약속한 서비스를 제공할 수 있을 것이라는 믿음이나 제도가 수반되어야 한다는 것. 이러한 믿음은 당연히 검증 불가능하고 정량화하기도 어렵다. 금융, 사물 인터넷, 전자정부 등 몇몇 분야에서는 이러한 구조적 한계를 극복하기 위해 각종 규제와 제한 사항들이 양산되었고, 고객의 편의나 기술적 진보를 외면했다. 그에 비해 블록체인 기반의 서비스는 전자적 방법만으로 모든 과정을 투명하게 검증할 수 있다.
둘째, 이러한 모든 동작에 대해 실시간으로 암호학적 검증이 가능하다. 기존의 금융이나 보안이 필요한 서비스는 전적으로 해당 내용이 블랙박스에 담긴 채 보안 담당자, 서버 관리자 또는 운영 주체의 보안 수준에 의존해야 했다. 블록체인 기반의 시스템은 누구나 논리적인 구성이나 암호학적 방법으로 검증할 수 있다. 실제로 오픈 소스 기반인 비트코인 블록체인 네트워크의 암호화 안전도는 세계적인 해커 그룹 조차 비트코인을 통해 기금 기부를 받을 정도로 안전하다.
마지막으로, 이러한 네트워크는 중앙 관리 주체가 존재하지 않기 때문에 단일 장애점(SPOF: Single Point of Failure)이나 운영 장애점이 존재하지 않는다. 운영 주체의 규모나 서버의 위치, 영업 시간과는 무관하게 운영할 수 있고, 해당 서비스를 전세계적으로 유연하게 확장 가능하다. 생각해보라. 만약 자율 주행의 시대가 되었는데 안전한 제어를 위한 인증시스템이 기존 금융망처럼 12시부터 1시까지 사용할 수 없다거나, 서울에 데이터센터가 있어서 제주도에 가면 지연 현상이 발생한다면 엄청난 문제가 될 것이다.
블록체인의 이러한 확장성때문에 삼성과 아이비엠(IBM), 시스코(CISCO) 등 다양한 글로벌 IT회사들은 차세대 IoT시스템을 위한 기반 인프라 구축에 블록체인을 사용하는 방법을 연구 중이다. 한편, 언급한 장점들은 이더리움(Ethereum)을 비롯한 NXT, 비트쉐어, StorJ 등 다양한 블록체인 2.0 생태계 등장의 가장 큰 동력이 되었다. 다양한 시도들은 시스템 사이의 경쟁에서 서로의 우월성을 입증한다거나 전복하기보다는 상호보완하는 관계로 인터넷처럼 성장하는 것이 목표다. 직접적으로 비트코인과 화폐로서 경쟁하는 것은 승산이 매우 낮기 때문이다. 대표적으로 블록체인 2.0의 신호탄을 쏘아 올린 이더리움은 비트코인의 스크립트 시스템을 하나의 완벽한 언어(turing completeness)로 대체함으로써 블록체인상에서 프로그래밍을 가능하도록 만들려는 시도다. 이더리움을 '프로그래밍 블록체인(Programmer Blockchain)'이라고 부르는 이유다.
계속 이야기하지만 궁극적으로 블록체인이 해결하는 문제는 온라인상의 '신뢰'의 문제다. "누구나 접근 가능한 개방된 환경에서도 누구나 믿을 수 있는 시스템을 구축할 수 있는가?" 이러한 명제는 기존의 폐쇄된 환경에서는 크게 중요한 문제가 아니었으나 점차 개방되고 모든 사물들이 긴밀하게 연결된 초연결사회(hyper-connected society)에서 매우 중요해진다.