[Blockchain] 비트코인의 탄생

1. 비트코인이란 무엇인가

순수한 P2P 온라인 결제를 실현한다. - 사카시 나카모토

비트코인이란 2009년 사토시 나카모토가 만든 가상화폐다. 통화를 발생하고 관리하는 중앙 장치가 존재하지 않는 구조를 가지고 있는데, 여기서 이 중앙 기관이 없다면 누군가의 잔고가 기록된 장부는 누가 관리할 것인가에 대한 의문이 생긴다. 만약 이 장부를 관리하는 사람이 없다면, 이중지불을 하는 경우가 발생할 수도 있기 때문에 혼란이 생긴다.

보통 온라인 거래에서는 판매자와 구매자 사이에 제 3의 신뢰자 (예를 들면 중개사이트 - G마켓, 옥션 등)가 존재하는데, 만약에 제 3의 신뢰자가 없다면 정상적인 온라인 거래가 과연 가능할까? 모든 사람이 선하다는 전제가 있다면 가능하지만, 1명의 배신자가 있다면 불가능한 이야기다. 그런데 만약, 누구나 제 3의 신뢰자로 참여하고 누구나 이용자가 되는 네트워크가 구축이 된다면, 1명의 배신자가 있다고 해도 다른 사람의 신뢰로 인해 온라인 거래가 정상적으로 이루어질 수 있다. 또한 이를 이용할 시에 일정한 보상(=비트코인)을 지급해준다.

2. 비트코인이 탄생한 배경

1) 중앙기관에 대한 신뢰성 문제

제 3의 신뢰기관의 신뢰가 무너졌다.

비트코인의 탄생 배경은 사실 아무도 모른다. 사카시 나카모토 그 분만 알고 있다. 하지만 가장 유력한 가설은 중앙기관에 대한 신뢰성 문제였다. 1920년대 바이마르 공화국의 경제 인플레이션, 1980년대 브라질의 30,000% 인플레이션, 2007년 서브프라임 모기지 사태 등 아래의 영상을 보면 이해가 좀 더 빠를 것이다

돈(Money)의 음모 - 당신은 가난해진다, 시사 다큐

2) 기존 사이퍼펑크(Cypher Punk)의 활동 중 한가지

암호(Cipher) + 1970년 방항적 패션 경향 'Punk' = CypherPunk

위키리크스 운영자이자 스스로 사이퍼펑크이기도 한 줄리안 어산지는 그의 저서 ‘사이퍼펑크’에서 사이퍼펑크란 대규모 감시와 검열에 맞서 우리의 자유를 지키기 위한 방안으로 강력한 암호 기술을 대대적으로 활용할 것을 주창하는 활동가라고 정의했다.

3) 분산화 컴퓨팅의 신뢰성 문제

누구도 신뢰할 수 없고, 어떤 데이터도 신뢰할 수 없다.

비잔틴 장군의 딜레마(Byzantine Generals Problem)는 개인 간(P2P) 분산 네트워크의 유명한 딜레마다.

조건 1. 5명의 장군은 각각 100명의 병력을 가지고 있다.
조건 2. 함락하려는 성은 300명의 병력이 있어, 장군 4명 이상이 동시에 공격을 해야한다.
조건 3. 각 장군은 지리적으로 떨어져있어 자신의 오른쪽에 있는 장군에게만 소식을 전할 수 있다.
조건 4. 장군들 중 배신자가 있어 서로를 신뢰할 수 없다.

이 상황에서는 장군들 중 누가 배신자인지 알 수 없기 때문에 쉽게 공격을 할 수 없다. 이러한 상황을 어떻게 해결할 수 있을까?

3. 비잔틴 장군 딜레마와 그에 대한 해결법

앞서 이야기한 비잔틴 장군 딜레마는 분산화 컴퓨팅에 대해 ‘불가능’을 증명한 논문이었다. 하지만 블록체인은 이 문제를 PoW(Proop of Work)방식으로 해결했다.

A. 1번 장군은 메세지를 보내기 위해 반드시 10분의 시간을 들여 깜지를 쓴다(여기서 10분은 블록체인의 생성 주기이다). B. 2번과 3번 장군은 받은 메세지에 또 10분의 시간을 들여 깜지를 쓴다. C. 배신자인 4번 장군은 메세지에 다른 내용으로 깜지를 쓴다. D. 5번 장군은 1번부터 4번까지 쓴 장군들의 메세지를 보고 누가 배신자인지 판단할 수 있다.

자 여기서 만약에 배신자인 4번 장군이 10분의 시간동안 1~3번 장군들이 했던 깜지보다 더 빠르게 메세지를 위조해 5번 장군에게 보내면 되지 않냐라고 할 수 있다. 물론 참여자의 수가 적고 컴퓨터의 성능이 매우 뛰어나다면 가능한 이야기다. 하지만 5명이 아닌 몇 천만 명으로 이 상황이 확장이 되면, 통제는 쉽지 않다. 이미 세계에서 가장 뛰어난 슈퍼컴퓨터로도 블록체인을 통제할 수는 없을 정도로 커졌기 때문이다.