2,100만 개 공급 상한
비트코인은 최대 2,100만 개까지만 발행되도록 설계되어 있습니다. 그 뒤로는 한 개도 더 만들어지지 않는다는 말입니다. 이 숫자는 네트워크 규칙 안에 처음부터 정해져 있으며, 그 규칙을 지키는 힘은 참여자들의 합의에서 나옵니다.
총량을 정하는 방식
우리가 일상적으로 사용하는 돈은 필요하다고 판단하면 더 발행할 수 있습니다. 돈의 총량이 늘어나면 지갑 속 금액 자체가 줄지는 않지만, 돈 한 단위가 살 수 있는 양은 약해질 수 있습니다. 저축하는 사람이 얼마나 더 발행할지를 직접 정하는 구조도 아닙니다.
한정판 운동화를 회사가 전 세계 1만 켤레만 만들겠다고 약속하는 경우를 생각해 보겠습니다. 이 약속을 지키는 쪽은 회사 자신입니다. 반응이 좋을 때 몰래 더 만들더라도 구매자가 알아차리기 어려울 수 있습니다.
비트코인의 한정성은 다르게 유지됩니다. 발행하는 회사가 없고, 지금까지의 비트코인 기록을 담은 장부 사본을 전 세계의 수많은 컴퓨터가 나누어 가지고 있습니다. 누군가 규칙보다 많은 비트코인을 만들어 장부에 넣으려 하면, 각 컴퓨터가 그 기록을 검증하는 과정에서 드러납니다.
새 비트코인이 발행되는 통로
거래 기록은 평균 10분에 한 번 블록이라는 묶음으로 전체장부에 더해집니다. 블록을 만든 쪽은 그 대가로 새 비트코인을 받습니다. 새 비트코인이 세상에 나오는 통로는 이 블록 보조금입니다.
다만 보조금은 고정된 채 계속 지급되지 않습니다. 21만 블록이 쌓일 때마다 새로 발행되는 보조금이 정확히 절반으로 줄어듭니다. 평균 10분마다 블록이 하나씩 생긴다고 보면 약 4년마다 한 번 일어나는 셈입니다. 절반의 절반의 절반으로 줄어드는 양을 계속 더하면 총합은 2,100만 개를 넘지 못합니다.
누군가 중간에 발행을 중단하는 방식이 아닙니다. 보조금이 처음부터 줄어들도록 정해져 있기 때문에 총합이 상한에 가까워집니다. 반감기와 발행 일정은 반감기에서 더 자세히 다룹니다.
노드가 규칙을 검사하는 방법
코드는 사람이 고칠 수 있습니다. 그렇다면 상한은 무엇이 지킬까요? 전체장부의 기록이 규칙에 맞는지 직접 검사하는 컴퓨터인 노드가 그 역할을 합니다.
코인베이스 거래는 채굴자에게 블록 보조금과 거래 수수료를 지급하는 특별한 거래입니다. 노드는 새 블록이 도착할 때마다 이 거래의 출력 합계가 허용된 보조금과 수수료의 합계를 넘지 않는지 확인합니다. 규칙에 어긋난 블록은 받아들이지 않고 버립니다.
누군가 상한을 늘리는 코드를 만들어 배포할 수는 있습니다. 그러나 운영자는 어떤 검증 규칙을 실행할지 스스로 선택합니다. 변경을 채택하지 않은 노드는 초과 발행 블록을 계속 거절합니다. 일부가 다른 규칙을 채택하면 체인이 갈라질 수 있지만, 노드 수의 단순한 다수결만으로 기존 규칙을 모든 노드에 강제로 바꿀 수는 없습니다.
자신의 저축 가치를 낮출 수 있는 변경에 모든 참여자가 동의할 것이라고 보기는 어렵습니다. 따라서 2,100만 개를 지키는 실제 자물쇠는 코드 한 줄만이 아니라, 각자가 규칙을 검사하고 그 결과를 공유하는 노드들의 합의에 있습니다.
실제로 2010년에는 소프트웨어의 허점으로 정상적인 상한을 크게 벗어난 비트코인이 만들어진 사건이 있었습니다. 당시에는 오류가 있는 소프트웨어가 문제 거래를 허용했으므로, 기존 검증 규칙이 처음부터 이를 거절한 것은 아니었습니다. 이후 오류를 수정한 소프트웨어가 적용되었고, 문제 거래를 포함하지 않는 체인으로 전환하는 과정이 필요했습니다. 이 사례는 코드에 오류가 없다는 뜻이 아니라, 규칙을 실제로 적용하고 오류를 수정하는 참여자들의 검증이 중요하다는 점을 보여 줍니다.
2,100만 개면 너무 적지 않을까?
비트코인은 처음부터 잘게 나누어 사용할 수 있도록 설계되었습니다. 1비트코인은 1억 사토시로 나뉘며, 사토시는 가장 작은 단위의 이름입니다. 따라서 실제로 주고받는 단위는 2,100만이라는 개수보다 훨씬 촘촘합니다.
피자 한 판을 8조각으로 자르든 16조각으로 자르든 피자 자체가 커지는 것은 아닙니다. 더 잘게 나눌 수는 있지만 전체 크기를 부풀릴 수는 없습니다. 비트코인의 공급 상한도 이와 비슷하게 이해할 수 있습니다.
남는 질문
발행 보조금이 계속 줄어들면 먼 훗날 장부를 지키는 비용을 무엇으로 충당할지는 남는 질문입니다. 현재의 설계에서는 거래 수수료가 그 역할을 이어받도록 되어 있습니다. 수수료만으로 충분할지는 오래 논의되는 주제이며, 공급 상한 자체가 그 결과를 보장하는 것은 아닙니다.
정리하면, 새 비트코인은 블록 보조금을 통해 발행되고, 보조금은 21만 블록마다 절반으로 줄어듭니다. 그 결과 발행량의 총합은 2,100만 개를 넘지 않습니다. 이 규칙을 지키는 실제 힘은 각 블록을 독립적으로 검사하는 노드들의 합의에서 나옵니다.