2.1 パーミッションレス・ブロックチェーンのストレージ負荷
本研究時点で、ビットコインブロックチェーンは370 GB以上のストレージを必要としていた。この増加は採用と時間に比例しており、長期的なスケーラビリティの課題となっている。高いストレージ要求はユーザーがフルノードを運用する意欲を削ぎ、結果としてリソース豊富な少数の主体への集中を招きかねず、分散化という基本原理に反する。
ビットコインやイーサリアムに代表されるパーミッションレス・ブロックチェーンは分散型システムに革命をもたらしたが、そのリソース集約性に対して大きな批判に直面している。プルーフ・オブ・ワーク(PoW)コンセンサスのエネルギー消費は広く議論されてきた一方で、フルノードが必要とする膨大かつ増大し続けるストレージオーバーヘッドは比較的注目されてこなかった。本論文は、ブロックチェーンノードがトランザクションやブロックの検証に台帳データをどのように利用しているかについて、初の実証研究を提示することでこのギャップに取り組む。中核的な目的は、PoWブロックチェーンのストレージフットプリントを数百ギガバイトからより管理可能な規模へと劇的に削減する戦略を、基盤となるネットワークプロトコルの変更を必要とせずに探求し定量化することである。
ビットコインのようなブロックチェーンの分散型セキュリティモデルでは、フルノードが全トランザクション履歴を保存・検証する必要がある。これは参入障壁を著しく高め、ネットワークの分散化を制限する。
本研究時点で、ビットコインブロックチェーンは370 GB以上のストレージを必要としていた。この増加は採用と時間に比例しており、長期的なスケーラビリティの課題となっている。高いストレージ要求はユーザーがフルノードを運用する意欲を削ぎ、結果としてリソース豊富な少数の主体への集中を招きかねず、分散化という基本原理に反する。
従来のアプローチには、ハードフォークやコンセンサスレベルの変更を必要とするチェックポイントやスナップショットプロトコルが含まれる。Bitcoin Coreはプルーニングオプションを提供しているが、それはインテリジェントな指針を欠いている。ユーザーは保持する閾値(GB単位またはブロック高)を恣意的に選択せざるを得ず、まだ関連性のある未使用トランザクション出力(UTXO)を削除してしまうリスクや、不要なデータを保存し続けるリスクがある。
本研究は、実際のビットコインノード運用のデータ駆動型分析に基づいている。
著者らはBitcoin Coreクライアントに計装を施し、長期間にわたる標準的なノード運用中に発生する全てのディスク読み取り操作を監視・記録した。これにより、新しいブロックやトランザクションの検証中にどの特定のデータ(古いブロック、トランザクション)がアクセスされるかの詳細なプロファイルが作成された。
重要な発見は、履歴ブロックチェーンデータの大部分はほとんどアクセスされないことである。検証は主に以下に依存している:
このパターンは、チェーン全体をローカルに保存することに大きな冗長性があることを明らかにしている。
実証分析に基づき、本論文はクライアントサイド戦略を提案する。
最も即効性のある戦略は、インテリジェントなプルーニングアルゴリズムである。単純なブロック高の閾値ではなく、ノードは動的に以下を保持できる:
このアプローチは既存のビットコインピアと完全に互換性がある。
さらなる削減のために、ノードは「遅延フェッチ」モデルを採用できる。必要な履歴トランザクションがローカルに保存されていない場合、ノードはピアツーピアネットワークからオンデマンドでそれを要求できる。これは、検証遅延(フェッチ時間)のわずかな増加と引き換えに、大幅なストレージ節約をもたらす。マークル証明などの暗号学的証明を用いることで、ピアを信頼することなくフェッチしたデータの完全性を保証できる。
本研究は、インテリジェントなプルーニング戦略を実装することで、フルビットコインノードが完全な検証能力を維持しながら、ローカルストレージ要件を約15 GBに削減できることを示している。これにはUTXOセット(~4-5 GB)、全てのブロックヘッダー(~50 MB)、および最近の完全なブロックのウィンドウが含まれる。
「遅延フェッチ」戦略は、マークル証明の生成または検証による計算オーバーヘッドは無視できる程度である。主なトレードオフは、ネットワークフェッチが必要な場合のブロック検証時間の潜在的な増加であり、通常のネットワーク条件下では数百ミリ秒のオーダーと推定される。これは、リソース制約のあるデバイス上でのノード運用を可能にするための小さなコストである。
プルーニングされたデータとオンデマンドでフェッチされたトランザクションの完全性は、マークル木によって保証される。ブロック高$h$からトランザクション$tx$を要求するノードは、ピアに対してトランザクションとマークル経路証明$\pi_{tx}$を要求できる。マークルルート$root_h$を含むブロックヘッダーを保存しているノードは、以下の再計算によって証明を検証できる:
$\text{Verify}(tx, \pi_{tx}, root_h) = \text{true}$ if $\text{MerkleHash}(tx, \pi_{tx}) = root_h$
これにより、ブロック全体を必要とせずに、そのトランザクションが正規のチェーンの一部であったことが保証される。深い履歴トランザクションが必要となる確率は、UTXOセットの経過時間分布の関数としてモデル化されており、本研究ではそれが最近の出力に大きく偏っていることが明らかになった。
シナリオ: 新興企業が決済サービスのために完全検証型のビットコインノードを運用したいが、クラウドストレージの予算が限られている。
フレームワークの適用:
このフレームワークにより、セキュリティと主権を維持しながら、ストレージコストを95%以上削減することが可能となる。
中核的洞察: 本論文の最も価値ある貢献は、単に新しいプルーニングアルゴリズムではなく、「フルノード」というドグマの実証的分解である。370 GBのブロックチェーンは大部分がコールドアーカイブであり、アクティブでセキュリティ上重要なワーキングセットは桁違いに小さいことを証明している。これは、極端なストレージが主権の避けられないコストであるという概念に根本的に挑戦するものであり、CycleGAN論文がペアデータが不要であることを示して画像間変換を再定義したのと同様である。両者とも、隠れた現実世界のデータの非対称性を特定し活用する例と言える。
論理的流れ: 議論は説得力のある単純さを持つ:1) ノードが実際に使用する(保存するのではない)データを測定する。2) その使用が高度に集中していることを発見する。3) したがって、使用されない大部分を安全に破棄する。4) 稀に必要な断片を確実にフェッチする仕組みを提供する。これは、これまで不変と考えられてきたシステムに適用された古典的なエンジニアリング最適化ループである。
強みと欠点: その強みは実用性と即時導入可能性にある。コンセンサスの変更を必要としないため、しばしば対立の多いブロックチェーン分野において稀な「ウィンウィン」提案となっている。しかし、分析には重大な、明示されていない欠点がある:それは定常状態を最適化している点である。チェーン再編成(リオーグ)時のリソース需要を過小評価している。深いリオーグは稀ではあるが、多くの古いブロックの迅速な検証を必要とする可能性がある。プルーニングされたノードはオンザフライでギガバイト単位のデータをフェッチする必要があり、遅延して競合チェーンを時間内に検証できなくなる可能性がある。これはセキュリティリスクである。したがって、本論文のトレードオフは、単にストレージに対する遅延だけでなく、日常的な効率性に対する極端なネットワークイベントへの回復力でもある。
実践的示唆: 開発者にとっての要点は、ウォレットやノードソフトウェアに設定可能なインテリジェントなプルーニングを直ちに実装することである。研究者にとっての次のステップは、リオーグリスクを定量化し、ネットワークストレスに強いフェッチプロトコルを設計することである。投資家やプロジェクトにとって、この研究は安全なノードを運用するための運用コストを下げ、真に分散型のビジネスモデルをより実現可能にする。Gartnerなどの組織が追跡する効率的で持続可能な分散システムへの広範な業界トレンドと一致し、ブロックチェーンインフラを趣味の追求からスケーラブルなユーティリティへと移行させるための小さくも重要な一歩である。