|
[이데일리 이정훈 기자] 블록체인 개념을 몇 차례 살펴봤는데요, 보다 세부적인 내용은 다음 기회에 좀더 알아 보도록 하겠습니다. 일단 이제 다시 비트코인 이야기로 돌아와 볼까 합니다. 앞서 언급했던대로 비트코인은 블록체인 기술을 활용해 만들어낸 최초의 암호화폐인데요, 이런 비트코인 시스템은 비트코인이라는 암호화폐를 발행하고 이 화폐를 기초로 모든 거래를 수행하는 것입니다. 여기서 가장 중요한 특징은 일반 법정화폐(fiat currency)와 달리 비트코인은 화폐 발행과 유통을 책임지고 관리하는 중앙의 주체가 따로 없다는 것입니다. 즉 비트코인 시스템 상에서 자동으로 발행되는 형태입니다.
이처럼 화폐 발행을 담당하는 누군가가 따로 없다면 화폐가 자동으로 발행돼서 (비트코인 네트워크에 참가하는) 모두에게 골고루 나눠지게 하거나 주기적으로 복권처럼 누군가 한 명에게 무작위로(random) 지급되도록 해야 하는데요, 비트코인이 발행되는 방식은 이 둘 중 무작위에 가깝습니다. 이미 몇 차례 반복했던 것처럼 비트코인이라는 화폐가 발행되는 것을 채굴(mining)이라고 불렀는데요. 금(金)을 캐는 것과 유사하게 노력해서 비트코인을 캐낸다고 해서 이런 용어가 붙었다고 할 수 있겠습니다. 지난 1편에서 채굴의 개념을 이렇게 설명했었습니다. “비트코인을 이용하면 은행 통장(=장부)이 필요 없고 대신 비트코인이 담긴 전자지갑을 가지고 있어야 거래가 가능한데, 비트코인으로 거래할 때 그 내용을 암호화해서 모두가 공유하는 장부에 기록할 사람이 필요하며 이 일을 하는 사람에게 그 대가로 비트코인을 제공하는 것”이라고요.
이렇게 분산된 공공장부에 거래내역을 기록하는 대가로 비트코인을 얻을 수 있는 자격을 따내기 위해 (비트코인) 네트워크 참여자들은 해시캐시(hashcash)라는 문제를 풀어야 하는데요, 이는 특정한 조건을 가지는 해시값을 찾아내는 작업을 말합니다. 비트코인에 사용되는 블록체인은 중앙시스템이 없는 분산 시스템이라 네트워크에 접속해 있는 누구나 블록을 생성할 수 있습니다만 그렇다고 아무나, 아무렇게나 블록을 만들 수 있는 건 아니겠죠.
하나의 블록이 완성되기 위해서는 블록의 해시값이 있어야 하는데요, 앞서 얘기한대로 해시함수의 불가역성 때문에 해시의 결과값을 통해 입력값을 역으로 계산해내는 건 불가능합니다. 블록의 해시는 약 10분간의 거래정보와 직전 블록 해시, 논스(nounce)를 가지고 계산하는데요, 여기서 논스는 숫자를 나열한 것으로, 이를 바꾸면 블록 해시도 다른 값이 되고 맙다. 비트코인에는 계산된 해시의 첫 부분에 제로(0)가 일정 개수 이상 나열돼선 안되는데, 현재는 13개로 제한돼 있습니다. 따라서 해시값을 찾아내기 위해서는 논스값을 조금씩 바꿔가면 일일이 대입해 계산하는 시행착오를 거쳐야 합니다. 비트코인에서는 이런 계산의 난이도를 조절해 참여자가 많을 경우 난이도를 높이고 참여자가 적으면 난이도를 낮춰 꾸준하게 평균 10분마다 한 번씩 새로운 블록이 생성될 수 있도록 조절합니다.
|
비트코인을 만든 사토시 나카모토는 이런 방식으로 채굴할 수 있는 비트코인의 총량을 애초에 2100만개로 제한했는데요, 실제 지금까지 채굴된 코인은 이중 80% 수준인 1680만개 정도라고 합니다. 장부에 거래내역을 기록하도록 지명된 사람에게 그 보상으로서 비트코인을 발행한다고 했는데요, 비트코인은 블록이 최종 생성되는 매 10분마다 한 번씩 일정량이 생성되며 채굴에 참여한 사용자 중 한 명에게 지급됩니다.
특히 공급량이 늘어나 화폐 가치가 빠르게 떨어질 것을 우려해 비트코인의 채굴(=공급)량은 4년마다 50%씩 줄어들도록 고안됐는데요, 이 때문에 지난 2009년부터 2012년까지는 신규 비트코인 블록마다 50비트코인씩, 2013년부터는 25비트코인씩, 2016년 12월부터 현재까지 12.5비트코인씩 지급되고 있습니다. 4년마다 반으로 줄어 드는 만큼 이론상으로는 2050년 이후 즈음이 되면 대부분 비트코인이 발행될 것으로 추산됩니다. 그렇게 되면 채굴자에 대한 인센티브가 사라지게 될텐데요, 그에 대한 고민과 대안들은 다음 편에서 다뤄보도록 하겠습니다.