Search

비트코인(Bitcoin)이란?

비트코인(Bitcoin)은 인터넷 상에서 제 3자의 중재없이 오로지 개인과 개인만으로 돈을 주고 받을 수 있도록 하는 온라인 캐시 시스템입니다. 비트코인은 사토시 나카모토(Satoshi Nakamoto)라고 하는 익명의 개발자가 2008년 10월에 9장의 논문으로 발표하며 세상에 공개 되었는데요. 논문 내용을 보면 비트코인을 주고 받은 모든 거래내역들을 암호화 알고리즘으로 사슬(Chain)처럼 이어서 보관한다고 해서 비트코인의 원장 관리 시스템을 블록체인(Blockchain)이라고 부르게 됩니다.
비트코인이 등장하게된 사회적 배경을 알아보자면, 때는 2000년대 후반으로 서브프라임 모기지 사태로 유발된 전 세계적인 금융 위기가 도래한 시기였습니다. 미국의 수 많은 금융기관들이 무 분별하게 운용한 주택담보대출(모기지론)로 인해 극대화된 미국의 부동산 가격 거품이 어느순간 꺼지기 시작하면서 수 많은 사람들이 대출 이자를 갚지 못하는 채무불이행이 발생하였고 이는 미국 금융기관들의 파산으로 이어졌습니다.
전 세계 금융위기의 시작을 알린 리만 브라더스의 파산
금융위기가 발생하고 수 많은 피해자들이 발생하자, 정작 이 사태를 초래한 금융기관들은 사태를 책임지는 모습보다 미 정부로 부터 지원받은 구제금융으로 보너스 파티를 벌이는 등 심각한 도덕적 해이를 보여줬습니다. 이러한 중앙식 금융기관에 대한 불신이 만연한 사회 분위기 속에서 사토시는 비트코인을 세상에 내놓고 첫 블록인 제네시스 블록(Genesis Block)에 아래와 같은 메세지를 남겼습니다.
더 타임즈 2009년 1월 3일, 은행들의 두번째 구제금융을 앞두고 있는 영국 재무장관 (The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.)
사람들이 신뢰하며 믿고 사용했던 금융기관의 도덕적 해이와 이로인해 발생하는 피해는 고스란히 사용자들만 보는 이런 시대 상황은 사토시의 비트코인 발명에 큰 동기가 되었을 것입니다. 비트코인은 기존 금융 거래처럼 은행이나 기관과 같은 신뢰 기반의 중재자를 통해 거래하는 것이 아닌 탈 중앙화된 블록체인 시스템 위에서 개인과 개인이 P2P(peer to peer) 형태로 거래가 처리됩니다.
탈 중앙화된 블록체인 시스템은 거래 장부를 관리하는 중앙식 주체가 없습니다. 블록체인에서는 온전히 개인과 개인 만으로 금융 거래가 가능합니다.

비트코인의 이중 지불 문제 해결

인터넷에서 온라인으로만 거래되는 디지털 화폐에 대한 시도는 비트코인이 최초는 아닙니다. 게임 머니, 거래 가능한 마일리지 포인트와 같은 것들도 일종의 디지털 화폐라고 볼 수 있겠죠. 하지만 이런 종류의 것들은 중앙화 되어있는 서버에서 모든 거래가 처리되므로 위에서 언급한 신뢰 기반의 중앙식 시스템의 문제를 고스란히 가지고 있습니다. 그와 더불어 가장 큰 문제가 되는 것은 화폐의 거래가 컴퓨터에서 디지털로 처리되기 때문에 발생하는 이중 지불 문제(Double spending problem)와 같은 것들입니다. (각종 온라인 게임에서 항상 이슈되는 돈복사 문제 같은 것들을 생각해 봅시다. )
많은 온라인 게임들이 아이템과 게임 머니가 손쉽게 복제되는 글리치 문제가 발생합니다.

이중 지불 문제란?

컴퓨터 파일과 텍스트 또는 이미지와 같은 디지털 개체는 복제하는 것이 매우 쉽습니다. 컴퓨터와 인터넷을 사용한 금융 거래도 이 문제에서 자유로울 수 없죠. 예를 들어 인터넷 뱅킹으로 1000원을 서로 다른 두 계좌로 동시에 보내게 된다면 1000원의 가치를 중복해서 사용한 셈이 됩니다. 이 것을 이중 지불 문제(Double spending problem)라고 합니다.
기존 금융기관에서는 이 문제를 신뢰할 수 있는 중앙식 관리 시스템에서 거래 내역과 장부를 확인하여 방지하도록 합니다. 이런 시스템은 중앙 은행이나 정부의 통제를 받으므로 대게 정직하여 사람들이 신뢰하고 사용합니다. 하지만 시스템을 유지하는데는 높은 비용이 발생하고 여러 기관을 거쳐야 하는 해외 송금의 경우 특히나 높은 수수료와 많은 시간을 필요로 하게 됩니다.
비트코인 이전에 시도된 많은 디지털 캐시들도 이 문제를 신뢰할 수 있는 제 3의 중재자 없이는 이 문제를 해결할 수 없었습니다. 사토시는 이 신뢰가 필요한 중재자 자체가 통화 시스템의 가장 큰 결함으로 보았고 무신뢰 방식의 개인과 개인만으로 거래가 성립할 수 있는 블록체인 시스템을 고안해 냅니다.
생각해보면 우리는 인터넷 상이 아닌 지폐와 동전과 같은 실물 화폐로 거래할 때 제 3의 중재자가 필요하지 않습니다. 실물 화폐를 사용한 거래는 온전히 개인과 개인이 돈을 주고 받는 것으로만 성립합니다. 비트코인의 블록체인은 인터넷에서도 이 것을 가능하도록 합니다.

비트코인의 해결책

비트코인은 송금과 같은 거래 내역을 위 변조가 불가능한 해시(Hash)로 암호화하고 탈 중앙화된 블록체인의 분산 원장에 이 거래내역을 저장함으로써 이 문제를 해결합니다. 비트코인의 송금은 UTXO(Unspent Transaction Output)라고 하는 비트코인 소유를 나타내는 디지털 개체를 오로지 소유자만 해독할 수 있는 암호학적 증명을 통해 전송하므로 제 3의 중재자가 비트코인 송금의 진위여부를 확인할 필요가 없습니다.
비트코인의 송금은 자신의 공개 키로 암호화되어있는 비트코인을 본인만 사용할 수 있는 개인 키로 암호를 해독(복호화)하고, 송금할 만큼의 비트코인을 받을 상대의 공개 키로 다시 암호화함으로써 소유권을 변경하는 방식으로 처리됩니다.
비트코인의 보유 및 송금에 대한 증명은 공개 키 암호화 방식 디지털 서명이 사용 됩니다. 공개 키 암호화는 사용자마다 공개 키(Public Key)개인 키(Private Key)라는 한쌍의 키를 가지고 있습니다. 공개 키는 말 그대로 공개할 수 있으므로 누구에게나 이 공개 키를 공유하여 비트코인을 입금 받을 수 있습니다. 하지만 입금 받은 비트코인을 다시 사용하는 것은 공개 키와 한 쌍으로 제공된 본인만 알고 있는 개인 키를 통해서만 가능합니다. 개인 키로 비트코인 거래에 대해 생성한 디지털 서명은 개인 키를 모르더라도 공개 키만으로 그 소유를 입증할 수 있습니다.
비트코인을 일상에서 사용할 때는 보안과 편의를 위해 공개 키에 해시(Hash) 알고리즘을 적용한 주소(Address)가 공개 키 대신 사용됩니다. 대부분의 비트코인 지갑에서 누군가에게 비트코인을 보내거나 입금 받을 때에 공개 키가 아닌 이 주소를 사용해 비트코인을 송금합니다.
개인 키 → 공개 키 → 주소 순으로 파생되어 생성됩니다. 개인 키에서 공개 키를 만들고, 공개 키에서 주소를 만들어 내는 것은 가능하지만 그 반대는 불가능합니다. 사용된 암호화 방식이 소인수분해의 수학적 난해함을 기반하므로 역순으로 알아내는 것은 불가능 하도록 설계되어 있습니다.
개인 키에서 공개 키를, 공개 키에서 주소를 생성하는 것은 단방향으로만 성립하며 그 반대 방향으로 알아내는 것은 불가능하기 때문에 안전하게 개인 키를 보관할 수 있습니다.
개인 키와 주소를 사용해 생성한 비트코인 거래는 블록체인 네트워크에 분산되어 저장됩니다. 블록체인은 탈 중앙화된 시스템이므로 거래 내역에 대한 위 변조가 불가능하며 중재자가 필요하지 않습니다. 다음 포스트에서 이 블록체인의 원리에 대해 자세히 설명합니다.

 블록체인의 원리

비트코인 관련 목록