MSTR Cat

블록체인/레벨 II · 작동 원리/2.3 블록과 체인/수업 6

블록 보조금과 반감기

통화 공급량을 정의하는 비트 시프트와 새로 발행된 코인에 걸리는 100블록 잠금

준비물비트코인 코어 소스 코드의 사본, 특히 `GetBlockSubsidy`가 포함된 `validation.cpp` 또는 `main.cpp`블록 탐색기 인터페이스(예: mempool.space 또는 blockchain.com)이진 연산이 가능한 계산기

호기심

  1. C++의 오른쪽 시프트 연산자가 왜 엄격한 통화 상한을 강제할까요?
  2. 채굴자가 허용된 최대 보조금보다 적게 청구하면 그 차액은 어떻게 되나요?
  3. 새로 만들어진 코인을 이동시키기 위해서는 몇 개의 블록이 지나가야 하나요?

탐구

  1. 새로운 비트코인은 각 블록의 코인베이스 트랜잭션을 통해서만 유통되게 됩니다. 이는 별도의 장부 항목이 아니라, 모든 유효한 블록의 첫 번째 트랜잭션에 포함된 특정 출력 항목으로, 여기서 채굴자가 새로 생성된 비트코인에 대한 소유권을 주장합니다. 그 금액은 비트코인 코어의 검증 로직에 있는 `GetBlockSubsidy` 함수에 의해 결정되며, 이 함수는 달력상의 시간이 아닌 현재 블록의 높이를 기준으로 보상을 계산합니다.
  2. 초기 보조금은 50 BTC, 즉 50억 사토시로 하드코딩되어 있었습니다. 210,000블록마다 이 값을 절반으로 줄이기 위해, 코드는 블록 높이를 210,000으로 정수 나눗셈하여 반감기가 몇 번 일어났는지 구합니다. 그런 다음 완료된 구간마다 초기값 50억 사토시에 이진 오른쪽 시프트 연산을 한 번씩 적용합니다.
  3. 이 비트 시프팅 메커니즘은 결정론적이면서도 효율적입니다. 정수를 기반으로 작동하기 때문에 나눗셈으로 인해 발생하는 소수점 이하의 사토시 값들은 아래로 반올림됩니다. 이러한 시프팅을 33회 반복하면 해당 값은 0으로 반올림됩니다. 이러한 수학적 수렴 특성 덕분에 외부 경제 상황이나 채굴 성능의 변동과는 상관없이 약 2,100만 비트코인을 넘어서는 비트코인이 만들어지지 않습니다.
  4. 첫 번째 반감기는 2012년 11월 28일, 블록 210,000에서 발생하여 보조금이 25 BTC로 줄어들었습니다. 이후 블록 420,000(2016년 7월 9일), 블록 630,000(2020년 5월 11일)에도 반감기가 있었으며, 가장 최근에는 2024년 4월 20일 블록 840,000에서 보상이 3.125 BTC로 감소했습니다. 다음 반감기는 블록 1,050,000에서 예정되어 있습니다.
  5. 채굴자의 총수익은 이 보조금에 블록에 포함된 트랜잭션들의 수수료 전부를 더한 것입니다. 하지만 채굴자는 허용된 최대 금액보다 적게 청구할 수도 있습니다. 청구되지 않은 사토시는 아예 생성되지 않으며 나중에 청구할 수도 없습니다. 보조금이 계속 반감됨에 따라 네트워크 보안 비용 중 더 많은 부분을 수수료가 부담해야 하며, 이는 비트코인의 미래 보안 예산을 둘러싸고 오랫동안 이어져 온 논쟁의 주제입니다.
  6. 코인베이스 출력은 합의 규칙에 따라 잠겨 있어, 100번의 확인을 받기 전에는 사용할 수 없습니다. 코인베이스 출력은 해당 블록을 포함한 브랜치에만 존재하므로, 그 블록이 체인 재구성(reorg)으로 교체되면 새로 생긴 코인은 사라집니다. 이 지연은 그런 코인이 다른 트랜잭션으로 넘어갔다가 그 트랜잭션들까지 무효가 되는 일을 막아 줍니다.

핵심 사실

  • 블록 보조금은 50 BTC에서 시작하여 210,000개의 블록마다 절반으로 줄어듭니다.
  • 비트코인 코어는 블록 높이에 따라 50억 사토시를 오른쪽으로 시프트하여 보조금을 계산합니다.
  • 가장 최근의 반감기는 2024년 4월 블록 840,000에서 발생했으며, 보조금은 3.125 BTC로 설정되었습니다.
  • 채굴자는 전체 보조금보다 적게 청구할 수 있으며, 청구되지 않은 금액은 영영 생성되지 않습니다.
  • 코인베이스 출력은 100번의 확인을 받아야 사용할 수 있습니다.
  • 반감기로 이루어진 등비급수는 약 2,100만 BTC의 최대 공급량으로 수렴합니다.

연습 아홉, 여섯, 셋, 하나

9모으기보조금 시대 9개를 나열하세요: 2009년의 시작과 이후 8번의 반감기, 각 시대의 보조금, 그리고 이미 일어났는지 여부를 적으세요.
6묶기9개를 각 시대가 발행하는 비트코인 전체 대비 비율에 따라 6개 그룹으로 묶으세요: 절반, 4분의 1, 8분의 1, 16분의 1, 32분의 1, 나머지.
3추리기6개 그룹을, 줄어드는 보조금이 채굴자와 수수료에 미치는 3가지 결과로 줄이세요.
1결정화보조금 계산의 정수 절사가 어떻게 공급량의 절대 상한을 강제하는지 설명하는 문장을 하나 쓰세요.

팩트 체크

날짜, 수치 및 주장은 아래에 명시된 출처들을 통해 확인되었습니다.

인터랙티브 아카데미에서 열기 →

EN PT ES ZH JA RU DE FR MS