탈중앙화가 실제로 없애는 것은 무엇인가

탈중앙화가 무엇이냐고 물으면 가장 흔히 듣는 대답은 대략 이렇습니다. “은행이 필요 없다는 뜻이죠.”
틀린 말은 아니지만, 그것만으로는 설명되는 것이 많지 않습니다. 더 흥미로운 점은 많은 사람이 몇 년째 플랫폼 계정으로 가상자산을 거래하고 있다는 사실입니다. 문자 인증 코드로 로그인하고, 비밀번호를 잊으면 고객센터에 재설정을 요청하고, 잔액은 플랫폼이 보여 주는 화면에서 확인합니다. 인터넷 뱅킹과 거의 다를 바 없는 경험입니다. 날마다 탈중앙화를 이야기하면서도 실제로는 거의, 혹은 한 번도 써 보지 않은 사람이 적지 않습니다.
그래서 처음부터 차근차근 살펴보려 합니다. 탈중앙화는 무엇을 없애고, 그 자리에 무엇을 두는 것일까요?
학급 회비 이야기부터
학생 마흔 명이 있는 학급을 떠올려 보십시오. 학생들은 저마다 10달러씩 학급 회비를 냈습니다.
흔한 방법은 총무에게 돈 관리를 맡기는 것입니다. 누가 돈을 냈는지, 무엇을 샀는지, 얼마가 남았는지는 모두 총무의 공책에 적힙니다. 아무도 따로 확인하지 않습니다. 다들 총무가 믿을 만한 사람이라고 여기기 때문입니다.
대개는 이 방식으로도 잘 굴러가지만, 한 가지 전제가 있습니다. 모두가 총무를 믿어야 한다는 것입니다. 총무가 숫자를 잘못 적으면 누구도 알아차리기 어렵습니다. 공책을 잃어버리면 장부도 함께 사라집니다. 총무가 쓰지도 않은 지출을 적어 넣기로 마음먹어도 다른 사람은 확인할 방법이 없습니다.
이번에는 다른 방법을 써 봅시다. 총무는 없습니다. 마흔 명 모두가 똑같은 장부를 한 부씩 가지고 있습니다. 지출이 생길 때마다 반 전체에 알리고, 모두가 동시에 받아 적습니다. 기록 하나를 고치려면 반 학생 대다수를 설득해 함께 고쳐야 하고, 한 부라도 다른 장부와 어긋나는 순간 문제가 드러납니다.
이 두 번째 방식이 가장 단순한 형태의 탈중앙화입니다. (비트코인에서 ‘다수’는 사람 수가 아니라 연산 능력으로 셉니다. 그 이유는 ‘비트코인 백서 읽기 길잡이’에서 설명합니다.) 핵심은 이렇습니다. 믿고 맡겨야 하는 관리자가 따로 없고, 모두가 함께 장부를 관리하며, 누구든 언제든 기록을 확인할 수 있습니다.
비트코인은 이 교실을 전 세계 규모로 넓힌 것입니다.
은행이 대신 해 주던 네 가지 일
다시 현실로 돌아와 봅시다. 친구에게 돈을 보낼 때 은행은 보이지 않는 곳에서 네 가지 일을 합니다.
- 장부 기록: 모든 사람이 얼마를 가지고 있는지 장부로 관리합니다.
- 승인: 송금이 정말 계좌 주인에게서 나온 것인지 확인합니다.
- 이중 지불 방지: 같은 돈이 두 번 지급되지 않도록 막습니다.
- 완료 선언: 송금이 처리되었고 되돌릴 수 없다고 알려 줍니다.
은행은 이 네 가지를 모두 맡고, 우리는 은행이 이 일을 잘 해내리라 믿어야 합니다. 대부분은 실제로 잘 해냅니다. 하지만 은행도 실수를 하고, 계좌를 동결하고, 문을 닫을 수 있습니다.
탈중앙화는 은행 없이 이 네 가지 일을 모두 해내려는 시도입니다.
은행이 없다면, 그 일은 누가 하는가
장부 기록: 전 세계에서 독립적으로 운영되는 수많은 노드가 각자 장부 사본을 검증하고 보관합니다. 누구나 장부를 내려받아 확인하거나, 직접 노드를 운영하며 참여할 수 있습니다. 사본들은 서로를 검증하며, 그중 어느 것도 ‘원본’이 아닙니다.
승인: 각자 개인 키를 가지고 있으며, 그 키로 자신의 거래에 서명합니다. 서명이 유효한지는 누구나 검증할 수 있지만, 서명을 거꾸로 따라가 키를 알아낼 수는 없습니다. 한 가지 주의할 점이 있습니다. 서명이 보여 주는 것은 키를 가진 사람이 그 거래를 승인했다는 사실뿐이며, 여러분이 누구인지는 전혀 말해 주지 않습니다. 다른 사람이 여러분의 키를 손에 넣는다면, 그 사람이 서명한 거래도 똑같이 유효합니다.
이중 지불 방지: 가장 어려운 문제였고, 사토시 나카모토가 실제로 풀어낸 문제이기도 합니다. 네트워크 전체가 거래의 순서에 합의합니다. 어떤 코인이 언제 쓰였는지 모두가 기록하고 나면, 그 코인은 두 번 쓸 수 없습니다.
완료 선언: 아무도 선언하지 않습니다. 거래가 블록에 기록되면 그 뒤로 새 블록이 계속 쌓입니다. 이 거래를 되돌리려면 그 뒤에 이어진 모든 블록의 작업을 다시 한 다음, 정직한 노드들이 계속 늘려 가는 체인을 따라잡아 앞질러야 합니다. 시간이 지날수록 그 비용은 커집니다.
네 가지를 모아 보면 탈중앙화의 모습이 또렷해집니다. 탈중앙화란 단일 중앙 기관에 맡기던 신뢰를 누구나 검증할 수 있는 코드와 합의로 대체하는 것입니다. 규칙도, 장부도, 권한도 그대로 남아 있습니다. 달라진 점은 코드가 규칙을 집행하고, 모두가 장부를 관리하며, 권한이 누구나 직접 확인할 수 있는 사실에 근거한다는 것입니다.
공짜 점심은 없다
탈중앙화의 장점만 이야기한다면 정직하지 않을 것입니다. 탈중앙화에는 적어도 네 가지 대가가 따릅니다.
느리고 비쌉니다. 같은 장부를 수천 부 두고 각각 따로 저장하고 검증하는 방식은, 한 기관이 장부 하나를 관리하는 방식보다 언제나 느리고 비용이 많이 듭니다.
문제가 생겨도 도와줄 사람이 없습니다. 고객센터도 없고 이의를 제기할 곳도 없습니다. 엉뚱한 주소로 송금하거나, 개인 키를 잃어버리거나, 악의적인 승인에 서명하면 대개 그 돈은 영영 돌아오지 않습니다. 예전에는 은행이 지던 위험을 이제는 여러분이 직접 집니다.
규칙을 바꾸기 어렵습니다. 책임자가 없으니 무엇을 바꾸든 폭넓은 합의가 필요합니다. 비트코인의 블록 크기 논쟁은 몇 년 동안 이어졌습니다. 이 논쟁은 2017년 비트코인 캐시(Bitcoin Cash) 분기, 세그윗(SegWit) 활성화, 그리고 그해 11월 SegWit2x 업그레이드 취소를 거치며 각 진영이 각자의 길을 가면서 대체로 가라앉았습니다. 누구도 혼자 규칙을 바꿀 수 없다는 것은 강점이지만, 그만큼 무엇이든 바꾸기가 매우 어렵다는 뜻이기도 합니다.
체인 밖의 일은 보증하지 못합니다. 코드는 한번 기록된 내용이 바뀌지 않도록 보장할 수 있지만, 기록될 당시 그 내용이 사실이었는지까지 보장하지는 못합니다. 현실 세계의 자산이나 문서, 신원이 얽히는 순간 신뢰는 다시 등장합니다. 자리만 옮겼을 뿐입니다.
주장을 따져 보는 네 가지 질문
‘탈중앙화’는 어느덧 마케팅 용어처럼 쓰이고 있습니다. 다음에 이 말을 보게 되면 네 가지를 물어보십시오.
- 누가 장부를 관리하는가? 수천 개의 독립적인 노드인가, 아니면 한 회사가 운영하는 서버 몇 대인가?
- 직접 검증할 수 있는가? 데이터가 공개되어 있다는 말만으로는 부족합니다. 오늘 당장 내려받아 노드를 돌리고 확인할 수 있습니까?
- 어느 한 주체가 혼자 규칙을 바꿀 수 있는가? 이를테면 마음대로 스마트 계약을 업그레이드하거나, 계정을 동결하거나, 잔액을 수정할 수 있는가?
- 온체인 자산 자체를 보유하고 있는가, 아니면 누군가의 계정에 적힌 숫자를 보유하고 있는가? 거래 플랫폼에 코인을 두고 있다면, 여러분이 보는 것은 대개 그 플랫폼 자체 장부에 적힌 잔액입니다. 그 법적 성격은 이용 약관과 해당 지역의 법률에 따라 달라지며, 직접 키를 가진 온체인 자산과 같은 것이 아닙니다.
여러 주체가 함께 관리하는 장부, 직접 확인할 수 있는 데이터, 누구도 혼자 바꿀 수 없는 규칙, 정말로 내 손에 있는 자산. 이 가운데 더 많은 것을 갖춘 시스템일수록 실제로 더 탈중앙화된 시스템입니다. 탈중앙화는 정도의 문제여서 ‘예’ 아니면 ‘아니요’로 딱 떨어지는 경우가 드뭅니다. 믿을 만한 프로젝트라면 자신이 어디까지 와 있는지 솔직하게 밝힐 것입니다.
그만한 가치가 있을까
답은 누구에게 묻느냐에 따라 다릅니다.
탈중앙화는 일종의 맞교환입니다. 효율과 편리함을 어느 정도 내려놓고, 일이 잘못되었을 때 누군가 나서 줄 것이라는 안도감도 내려놓습니다. 그 대신 더는 특정 기관에 신뢰를 맡기지 않아도 됩니다. 어떤 상황에서는 아주 좋은 거래이고, 어떤 상황에서는 그렇지 않을 수도 있습니다.
이렇게 바라보고 나면, 지금까지 써 온 서비스들이 조금 다르게 보이기 시작할지도 모릅니다.
이 구조가 실제로 돌아가는 모습을 보고 싶다면 신뢰의 기계 전시실을 찾아, 누구도 믿을 필요 없이 거래가 네트워크 전체의 확인을 받는 과정을 보여 주는 전시품부터 살펴보십시오.

