비트코인 사례 연구 (2): 사용자 참여와 유기적 협업

Virtuous Cycle of Bitcoin Mining

비트코인에 관심을 가진 독자라면 왜 비트코인을 우리가 아는 화폐처럼 발행하지 않고 어려운 채굴 과정[1]을 거치는지 매우 궁금할 것이다. 채굴은 (1) 새로운 비트코인을 공급하기도 하지만 (2) 블록체인이라 불리는 공유된 거래 기록을 해커나 사기꾼으로부터 안전하게 보호하는 역할을 한다.

이 글에서는 비트코인 채굴에 대해 간단히 설명하고 채굴의 의미에 대해 자세히 알아봄으로써 비트코인이 왜 금융 기관이라는 ‘노드’에 기반을 두지 않고 사용자 참여라는 ‘연결’에 기반을 두는지 원리를 살펴보는 시간을 가진다. 더욱 정확하게는 ‘채굴’ 관점에서 사용자의 참여 방식과 이것이 금융 네트워크 전체에 미치는 시사점을 살펴보게 될 것이다.

협업의 구조: 비트코인 채굴, 블록, 블록체인

비트코인 거래가 일어나면 이 거래는 비트코인 네트워크에 참여하는 모든 노드에게 알려진다. 이렇게 알려진 거래를 기록하고 공식화하는 과정이 비트코인 채굴(mining)이다. 이 과정은 블록 단위로 일어난다. 블록(block)은 비트코인 거래를 평균 10분 단위로 모은 것이다. 블록체인(block chain)은 현재까지의 블록이 모두 이어진 것으로 현재까지 일어난 모든 비트코인 거래가 시간순으로 기록된 장부다. 아래의 그림은 나의 거래[2]가 포함된 블록에 대한 요약정보[3]다. 이 블록은 280,035번째 블록이고 326개의 거래가 포함되어 있으며 거래금액은 약 3,140 비트코인(BTC)이다.

블록체인 요약정보(https://blockchain.info/block-index/457875): 비트코인과 관련된 모든 정보는 Blockchain.info와 같은 블록체인 탐색 서비스(Block chain browser)를 통해 찾아볼 수 있다.

블록체인 요약정보(https://blockchain.info/block-index/457875): 비트코인과 관련된 모든 정보는 Blockchain.info와 같은 블록체인 탐색 서비스(block chain browser)를 통해 찾아볼 수 있다.

새로운 블록은 규칙에 따라 채굴자(mining node)들이 처리하게 되며 가장 먼저 처리를 끝낸 채굴자가 처리의 증거(proof of work)와 함께 “이것이 원본이다”라고 이웃 채굴자에게 알리고 이를 채굴자들이 확인하고 받아들이는 과정을 거치게 된다. 이렇게 받아들여진 블록은 기존의 블록체인을 이어가는 것이다. 이렇게 블록 및 블록체인을 공식화하는 과정이 바로 채굴이다(왜 채굴이라고 부르는지는 조금 후에 설명하겠다).

비트코인 채굴은 구체적으로는 블록의 요약본(hash)의 값이 주어진 숫자보다 작게 만드는 임의의 숫자(nonce) X를 찾는 것이다.[4] 예를 들어 요약본이 최대 99999까지 가능한데 주어진 숫자인 00099보다 작거나 같은 요약본을 만드는 임의의 숫자를 찾는 것이다(이해를 돕기 위해 10진수로 설명하였다).

블록의 요약본(Hash)은 바로 이전 블록의 요약본, 현재 블록의 거래, 임의의 숫자를 더한 문서에 기반을 두어 만들어진다.

블록의 요약본(Hash)은 바로 이전 블록의 요약본, 현재 블록의 거래, 임의의 숫자를 더한 문서에 기반을 두어 만들어진다.

 

이때 블록의 요약본은 위 그림과 같이 이전 블록의 요약본(위의 블록에서는 000…bd4a)에 현재 블록의 모든 거래를 덧붙이고(실제로는 모든 거래의 요약본) 여기에 임의의 숫자 X를 덧붙인 문서를 요약(hashing)하여 만든다.

조건을 만족하는 X를 찾는 것은 우리가 일반적으로 방정식을 풀듯이 해를 찾을 수 있는 것이 아니라 모든 경우의 수를 대입해 보는 방법(brute force)밖에 없다. 비트코인의 경우 요약본의 크기가 256비트이고, 경우의 수가 10의 77승을 넘는다(위의 그림에서는 요약본이 16진수로 표시되어 있다). 이때 주어진 요약본의 목표 값(difficulty target)이 작으면 작을수록(앞자리의 0의 수가 많을수록) 조건을 만족하는 X를 찾는 것이 기하급수적으로 어려워진다.

이렇게 조건을 만족하는 임의의 수를 찾아 만든 현재 블록의 요약본을 이웃 채굴자에게 알리고 이를 다른 채굴자들이 맞는 것으로 받아들이게 되면 이를 블록의 해를 구했다고 하거나 블록을 찾았다고 한다. 위의 블록에서는 X에 해당하는 값(nonce)이 3903909353이고 이를 이용한 요약본(hash)의 값이 0000…e43cb이다.

협업을 통한 보안: 거래 기록의 보호

그러면 왜 이렇게 힘들게 공식화하는지가 궁금할 것이다. 위의 내용이 이해되지 않았다면 더욱 그럴 것이다. 이는 모든 거래 기록이 공유되는 상황에서 해커들이 쉽게 이 기록을 조작하는 것을 방지하기 위한 것이다.

만약 해커가 자신이 쓴 돈을 다른 곳에 다시 쓰려고 한다고 가정하자. 그러기 위해서는 장부(블록체인)를 조작해야 한다. 그런데 비트코인 시스템에서는 블록체인이 진짜인지 가짜인지를 민주주의의 원칙에 의하여 결정한다.[5]

블록체인의 복사본은 모든 노드들이 가지고 있는데 여러 가지 이유로 서로 다른 복사본을 가지고 있을 수 있다(이를 분기되었다(forked)고 한다). 이때 가장 많은 노드가 가지고 있는 복사본을 진짜로 여기는 것이다(위의 그림에서는 Main Chain이라고 표시되어 있다). 만약 블록을 쉽게 공식화할 수 있다면 해커가 많은 숫자의 컴퓨터(정확하게는 IP)만 가지고도 기록의 조작이 가능해지는 것이다.

하지만 해를 찾기가 매우 어렵게 만듦으로써 블록체인을 조작하려면 해커는 선의의 채굴자가 가진 CPU 파워보다 더 큰 파워를 가져야 한다(51% 공격[6]). 더구나 해커가 조작하고자 하는 블록 이후에 여러 개의 블록이 이어진 경우에는 조작은 현실적으로 불가능하다고 하겠다.

이렇게 거래 기록을 안전하게 보호하는 방식은 기존의 은행이나 신용카드사에서 사용하는 방법과 매우 다르다. 기존의 방식은 우리가 믿고 싶은 제3자가 모든 기록을 다 가지고 있고 이를 해커가 접근하지 못하도록 하는 방식이다. 그러다 보니 항상 구멍이 있기 마련이고 이를 해커들이 악용하는 것이다. 하지만 비트코인의 방식은 누구나 기록을 볼 수 있도록 하지만 이를 조작하는 것은 한 가지 방법밖에 없고 이것이 현실적으로는 불가능하도록 하는 것이다(2012년 시점에서도 하나의 거래를 조작하기 위해서는 수천억 원을 들여야 했다.[7]).

협업을 통한 발행과 참여의 인센티브

비트코인 시스템이 제대로 작동하기 위해서는 앞에서도 언급하였듯이 엄청난 CPU 파워가 필요하다. 하지만 비트코인 시스템에서는 누군가 통제하거나 강제를 하는 사람이 없으므로 자발적인 참여를 기대할 수밖에 없다. 이 자발적인 참여의 동기로서 블록의 해를 구한 채굴자에게 새로운 비트코인을 발행하는 것이다(위의 그림에서 Block Reward). 물론 거래 수수료(transaction fees)도 채굴자에게 제공된다. 해를 구한 채굴자가 비트코인을 얻기 때문에 채굴이라는 용어를 사용하는 것이다.

한 블록당 발행되는 비트코인의 수는 4년마다 반으로 줄어들게 되어있어(처음에는 블록의 해를 구한 노드에게 50개, 현재는 25개의 비트코인이 발행된다) 발행 가능한 비트코인 수는 수학적으로 2,100만 개로 한정[8]되어있다.

따라서 비트코인의 가치는 높아질 수밖에 없고 비트코인의 가치가 높아질수록 다른 채굴자보다 더 빨리 해를 구하기 위해서 더 많은 CPU 파워를 투입하게 될 것이고 이를 통해 더욱 안전한 시스템을 만들게 된다. 물론 초기에 비트코인이 전혀 가치가 없을 때는 이를 이끌어갈 그룹이 필요했겠지만, 이제는 선순환 구조가 만들어졌다고 하겠다(네트워크에 기반을 둔 모든 서비스가 마찬가지이다).

비트코인 채굴은 비트코인의 가치가 높아질수록 더 많은 채굴자가 참여하고, 이는 비트코인의 희소성뿐 아니라 안전성을 높임으로써 비트코인의 가치가 더 높아지는 선순환 구조를 가지고 있다.

비트코인 채굴은 비트코인의 가치가 높아질수록 더 많은 채굴자가 참여하고, 이는 비트코인의 희소성뿐 아니라 안전성을 높임으로써 비트코인의 가치가 더 높아지는 선순환 구조를 가지고 있다.

결론적으로 채굴은 비트코인 시스템을 안전하게 보호하는 사람들에게 인센티브를 제공함으로써 시스템이 더욱 안전하도록 만들며, 비트코인의 공급을 조정함으로써 비트코인의 가치가 유지되도록 하는 선순환적인 시스템이다.

비트코인이든 아니든, 화폐의 단위와 거래 단위가 이제 네트워크화되는 것은 막을 수 없는 방향이 되고 있다. 금융 기관의 역할, 개인의 역할, 거래의 방식이 근본적으로 바뀌고 다른 영역과의 경계없는 진화가 시작되었다. 오가닉 비즈니스의 원리에서 금융 산업도 예외가 될 수 없다는 뜻이다. 그 변화는 처음에는 매우 더디게 그러나 그 어떤 영역보다 거세게 올 것이다.

<갈림 길>


  1. Rob Wile, "That Swedish Bitcoin Mining Company Has Sold $28 Million-Worth Of Its New Mining Hardware," Business Insider, Dec 14, 2013, http://www.businessinsider.com/knc-sells-nearly-28-million-neptunes-2013-12.
  2. https://blockchain.info/tx-index/9484749fda0faf8be7f837e6752e1acaeef6c92d03ce9e1f29236bec49f33afd.
  3. https://blockchain.info/block-index/457875.
  4. Sathoshi Nakamoto, "Bitcoin: A Peer-to-Peer Electronic Cash System," 2008.
  5. 상동.
  6. David Perry, "Bitcoin Attacks in Plain English," Coding in My Sleep, Oct 5, 2012, http://codinginmysleep.com/bitcoin-attacks-in-plain-english/.
  7. 상동.
  8. "Controlled supply," Bitcoin Wiki, https://en.bitcoin.it/wiki/Controlled_supply.