Skip to main content
QUICK REVIEW

[論文レビュー] SeF: A Secure Fountain Architecture for Slashing Storage Costs in Blockchains

Swanand Kadhe, Jichan Chung|arXiv (Cornell University)|Jun 28, 2019
Blockchain Technology Applications and Security参考文献 30被引用数 26
ひとこと要約

本稿では、無制限エラー補正符号(rateless erasure codes)を用いて、ブロックチェーンのストレージコストを桁違いに削減するセキュア・ファンネル符号アーキテクチャであるSeFを提案する。これにより、フルノードはブロックチェーン全体を少数の符号化済み「ドロップレット」ブロックに符号化できる。ストレージ節約とブートストラップコストの間でほぼ最適なトレードオフを達成し、実験ではBitcoinで191GBから195MBにまでストレージを削減(1000倍)し、ブートストラップコストは約1100の誠実なノードを必要とし、理論的最小値1000の10%上回るにとどまる。

ABSTRACT

Full nodes, which synchronize the entire blockchain history and independently validate all the blocks, form the backbone of any blockchain network by playing a vital role in ensuring security properties. On the other hand, a user running a full node needs to pay a heavy price in terms of storage costs. E.g., the Bitcoin blockchain size has grown over 215GB, in spite of its low throughput. The ledger size for a high throughput blockchain Ripple has already reached 9TB, and it is growing at an astonishing rate of 12GB per day! In this paper, we propose an architecture based on 'fountain codes', a class of erasure codes, that enables any full node to 'encode' validated blocks into a small number of 'coded blocks', thereby reducing its storage costs by orders of magnitude. In particular, our proposed "Secure Fountain (SeF)" architecture can achieve a near-optimal trade-off between the storage savings per node and the 'bootstrap cost' in terms of the number of (honest) storage-constrained nodes a new node needs to contact to recover the blockchain. A key technical innovation in SeF codes is to make fountain codes secure against adversarial nodes that can provide maliciously formed coded blocks. Our idea is to use the header-chain as a 'side-information' to check whether a coded block is maliciously formed while it is getting decoded. Further, the 'rateless property' of fountain codes helps in achieving high decentralization and scalability. Our experiments demonstrate that SeF codes tuned to achieve 1000x storage savings enable full nodes to encode the 191GB Bitcoin blockchain into 195MB on average. A new node can recover the blockchain from an arbitrary set of storage-constrained nodes as long as the set contains ~1100 honest nodes on average. Note that for a 1000x storage savings, the fundamental bound on the number of honest nodes to contact is 1000: we need about 10% more in practice.

研究の動機と目的

  • ムーアの法則を上回る速度で増加するブロックチェーンのストレージコストに対処し、分散性とノードの持続可能性を脅かす要因を解消すること。
  • SPVクライアントやプリューンドノードといった既存の解決策の限界を克服し、セキュリティや分散性を損なわないこと。
  • ストレージ制限のあるノードが整合性を損なわずブロックチェーンのブートストラップに貢献できる、スケーラブルで安全かつ分散型のアーキテクチャを設計すること。
  • ストレージ節約と、ブートストラップ中に新規ノードが接触すべき誠実なノード数の間で、ほぼ最適なトレードオフを達成すること。

提案手法

  • validatedブロックチェーンブロックを、少数の符号化ブロック(ドロップレット)に変換するため、ファンネル符号(特に無制限エラー補正符号)を活用し、ノードごとのストレージ要件を大幅に削減する。
  • 悪意あるノードが不正に形成した符号化ブロックを検出・拒否できるように、側情報としてヘッダーチェーンを導入し、復号中にセキュリティを確保する。
  • 二段階の符号化戦略を採用:小規模なエポックは高い冗長性(例:k=10,000, s=10)で符号化し、一定期間経過後、より効率的な大規模エポック(例:k=50,000, s=5)に再符号化することで、長期的なストレージ効率を向上させる。
  • 適応的でオンデマンドのドロップレットダウンロードを実装:新規ノード(バケツノード)はまずドロップレットインデックスを照会し、その後必要なブロックのみをダウンロードすることで、帯域幅オーバーヘッドを最小限に抑える。
  • 無知な敵(oblivious adversary)に対するセキュリティを確保するため、復号失敗が発生するのは、多数の誠実なドロップレットノードが改ざんされない限りほとんど不可能であることを証明する。
  • 動的再符号化メカニズムを設計:ドロップレットノードは、復号し、再符号化し、古く効率の悪いドロップレットを削除することで、時間経過に伴いストレージと帯域幅のトレードオフを最適化する。

実験結果

リサーチクエスチョン

  • RQ1ファンネル符号は、ブロックチェーンシステムに適応可能であり、セキュリティと分散性を維持したままストレージコストを削減できるか?
  • RQ2ストレージ節約と、新規ノードがブロックチェーンを回復するために接触すべき誠実なノード数との間の根本的トレードオフは何か?
  • RQ3悪意あるノードが不正に形成した符号化ブロックに対して、ファンネル符号をどのようにして保護できるか?
  • RQ4適応的でオンデマンドのダウンロードおよび再符号化戦略は、実際の環境で帯域幅およびストレージオーバーヘッドを低減できるか?
  • RQ5提案されたSeFアーキテクチャは、Rippleのような高スルーレートシステムを含む、さまざまなブロックチェーンワークロードにどれほどスケーラブルに拡張可能か?

主な発見

  • SeFはBitcoinブロックチェーンで1000倍のストレージコスト削減を達成し、パラメータ(k=10,000, s=10)のSeF符号を用いて191GBのデータを平均195MBに圧縮した。
  • 新規ノードがブロックチェーン全体を回復するには、約1100の誠実なドロップレットノードに接触する必要があるが、これは1000×の節約を実現するための理論的最小値1000の10%上回るにとどまる。
  • ドロップレットをオンデマンドでダウンロードすることで帯域幅オーバーヘッドが顕著に削減された:k=10,000およびs=10のSeF符号を用い、ブロックを10MBに連結した場合、適応的ダウンロードは2.35%のオーバーヘッドを達成した。
  • ヘッダーチェーンメカニズムにより、復号中に悪意ある符号化ブロックを効率的に検出でき、無知な敵に対するセキュリティを確保した。
  • 動的再符号化戦略により、ドロップレットノードは時間経過に伴い古いデータをより効率的な符号に再符号化でき、可用性を損なわず長期的なストレージ効率を向上させた。
  • 本アーキテクチャは、ストレージ節約とブートストラップコストの間の継続的トレードオフをサポートしており、多様なネットワーク環境およびノードの能力に合わせた展開が可能となった。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。