MSTR Cat

ブロックチェーン/レベル II · 仕組み/2.3 ブロックとチェーン/レッスン 7

2,100万枚の供給スケジュール

希少性の算術と、それを破ろうとしたバグ

用意するものリアルタイムの供給量データを表示できるブロックエクスプローラーGetBlockSubsidyのBitcoin Coreソースコード等比級数を計算できる電卓

問い

  1. 無限に続く半減の繰り返しから、どのようにして有限の数が生まれるのでしょうか?
  2. ソフトウェアのバグによって、プロトコルが許容する以上のお金が生み出されたら、どうなるのでしょうか?
  3. なぜ実際の流通供給量は理論上の最大値よりも低いのでしょうか?

探究

  1. 2100万という制限は約束ではなく、発行スケジュールによって導き出される数学的結果に過ぎません。新しいビットコインは、2009年1月にブロックあたり50BTCから始まったブロック報酬を通じてのみ流通に入ります。この報酬は約4年ごとに、つまり210,000ブロックごとに半減します。その計算式は幾何級数の合計であり、210,000ブロックに50BTCを掛け、さらに1/2の累乗和(1 + ½ + ¼ + …)を掛けるものです。この無限級数は正確に21,000,000BTCに収束します。
  2. ビットコインの価値は整数のサトシ(ビットコインの1億分の1)で表されるため、ハーフィングの都度値が切り捨てられる。報酬は2136年か2137年頃のブロック6,720,000で1サトシという最小単位に達する。約2140年にあたるブロック6,930,000までには、2100万BTCのほぼ全てが発行されることになる。このような切り捨て処理のため、実際の最大値は2100万よりわずかに少なく、約20,999,999.9769BTCとなる。
  3. 実際の供給量は、いくつかの理由で理論上の上限を下回ります。ジェネシスブロックの50 BTCの報酬は、設計上使用できません。一部のマイナーは補助金の全額より少ない額しか請求せず、請求されなかった分は生成されませんでした。また、使用不能であることが証明可能なアウトプットに送られたコインもあり、ハードウェアの故障やパスワードの紛失によって永遠に失われた秘密鍵も数多くあります。これらの要因により、流通供給量はプロトコルの厳格な上限を下回ります。
  4. この上限は、外部の権威によってではなく、Bitcoin Coreソフトウェア内のコンセンサスルールによって適用される。すべてのノードが、どのブロックも許容される補助金を超えないことを検証する。2010年8月、値のオーバーフローバグ(CVE-2010-5139)により、ブロック74,638内で1840億BTC以上のトランザクションが作成されてしまった。約5時間以内に修正版のクライアントが公開され、それを使用したマイナーたちは不良なトランザクションが含まれないチェーンを構築し、その後53ブロック分を上書きしてそのコイン들を消去した。この出来事は、上限の有効性はそれを実行するノードソフトウェアの信頼性次第であり、またネットワークが迅速に協力してそれを守ることができることを示した。
  5. 2018年には、Bitcoin Coreのバージョン0.15から0.16.2に別のインフレーションバグ(CVE-2018-17144)が見つかりました。マイナーが同じインプットを2回記載したトランザクションでコインを生成できた可能性があるというものです。このバグは、悪用が確認されないまま修正されました。2つの事例はいずれも、発行スケジュールが正しいソフトウェアと、それを見守る人々に依存していることを示しています。
  6. ブロックエクスプローラーを開き、現在の流通供給量を21,000,000 BTCと比較してください。理論上の最大値と実際に流通しているコインの差に注目します。次の半減期の日付を確認し、補助金が3.125 BTCから1.5625 BTCに下がるまでの残りブロック数を計算してください。この確認によって、発行スケジュールがコードどおりに正確に進んでいることがわかります。

重要な事実

  • 理論上、発行スケジュールの合計は21,000,000 BTCとなります。
  • ブロック補助金は50 BTCから始まって210,000ブロックごとに半減し、2140年ごろにゼロになります。
  • サトシの整数切り捨てにより、実際の最大発行量は2100万よりわずかに少ないです。
  • ジェネシスブロックの50 BTCの報酬は使用できないため、実質的な供給量が減っています。
  • 2010年8月、バグ(CVE-2010-5139)によって1,840億BTC以上が生成され、その後チェーンが再編成されました。
  • マイナーは補助金の全額より少ない額を請求することができ、請求されなかった分は生成されません。

演習 九・六・三・一

9集める供給量が固定されているか上限が設定されている資産や通貨を9つ挙げてください。それぞれの最大数量と、上限を強制している主体も記録してください。
6まとめる強制の仕組みによって、9つを6つにグループ分けしてください:コードによる強制、契約による強制、物理的な希少性、法的な命令、市場の慣習、その他。
3絞り込む6つを、供給上限が破綻したり変更されたりしうる3つの理由に絞り込んでください。
1結晶化するハードコードされた上限と政治的な約束を分けるものは何かについて、文を1つ書いてください。

事実確認

日付、数字、主張は、下記に記載された公表資料と照合して確認しました。

インタラクティブ版で開く →

EN PT ES ZH KO RU DE FR MS