
Kernel Ventures:DAと履歴データ層設計を一文で解説
TechFlow厳選深潮セレクト

Kernel Ventures:DAと履歴データ層設計を一文で解説
ブロックチェーンの機能がますます複雑化しており、これによりより大きなストレージ容量が必要とされている。
著者:Kernel Ventures Jerry Luo
TL;DR
-
初期のパブリックチェーンは、安全性と非中央集権化を確保するために、ネットワーク全体のノードがデータの一貫性を保つことを要求していた。しかし、ブロックチェーンエコシステムの発展に伴い、ストレージ負荷が増大し、ノード運営の中央集権化傾向が生じている。現時点において、Layer1はTPS向上によるストレージコスト問題の解決が急務である。
-
この問題に対処するため、開発者は安全性、ストレージコスト、データ読み取り速度、DAレイヤーの汎用性を両立しつつ、新たな履歴データ保存方式を提案する必要がある。
-
この課題の解決過程で、シャーディング、DAS、Verkle Tree、DAミドルウェアなど多くの新技術・新アイデアが登場した。これらはデータ冗長性の削減やデータ検証効率の向上を通じて、DAレイヤーの保存方式を最適化しようとしている。
-
現在のDA方式は、データ保存位置に基づき、主に「メインチェーンDA」と「サードパーティDA」の2種類に大別される。前者は定期的なデータ削除やデータ分片保存によりノードのストレージ負荷を軽減する。一方、後者はストレージサービスを目的として設計され、大量データに対する合理的なソリューションを提供する。そのため、単一チェーン互換性とマルチチェーン互換性のトレードオフを行い、「専用DA」「モジュラーDA」「ストレージ公的チェーンDA」という3つのソリューションを提示している。
-
決済系パブリックチェーンは履歴データのセキュリティ要件が非常に高く、DAレイヤーとしてメインチェーンを使用するのが適している。しかし、長期間運用されており多数のマイナーが存在するチェーンでは、コンセンサス層への変更を避けつつセキュリティを確保できるサードパーティDAがより適切である。また、総合的なパブリックチェーンには、データ容量が大きくコストが低くセキュリティも担保できる専用DAが適している。ただしクロスチェーンニーズを考慮すれば、モジュラーDAも有力な選択肢となる。
-
全体的に見て、ブロックチェーンはデータ冗長性の削減とマルチチェーン間の役割分担へと進化している。
1. 背景
ブロックチェーンは分散型台帳として、すべてのノードが履歴データを保存することで、データ保存の安全性と十分な非中央集権化を実現している。各状態変更の正当性は直前の状態(取引元)に依存するため、取引の正しさを保証するには、最初の取引から現在までのすべての履歴記録を保存すべきである。例えばイーサリアムの場合、平均して1ブロックあたり20KB程度としても、現在のブロック総サイズはすでに370GBに達しており、フルノードはブロック自体に加え、ステートおよびトランザクションレシートも保持する必要がある。これにより単一ノードのストレージ容量は1TBを超えており、ノード運営が少数に集中する傾向にある。

最新のイーサリアムブロック高、画像出典:Etherscan
2. DA性能指標
2.1 セキュリティ
ブロックチェーンは、データベースやリンクリスト構造と比較して、履歴データによる新規データの検証を通じた改ざん防止性を持つ。そのため、履歴データのセキュリティはDAレイヤーにおいて最優先事項である。ブロックチェーンのデータセキュリティ評価は、主にデータの冗長数とデータ可用性検証方法に基づいて分析される。
-
冗長数:ブロックチェーンにおけるデータ冗長性は以下の利点を持つ。まず、ネットワーク内の冗長数が多いほど、検証者が特定の履歴ブロック内のアカウント状態を参照して取引を検証する際に、より多くのサンプルを得られ、大多数のノードが記録したデータを選択できる。従来のデータベースでは、特定ノードにキー値ペア形式で保存されるため、歴史データの変更は単一ノードでのみ行われればよく、攻撃コストが極めて低い。理論的には、冗長数が多いほどデータの信頼性は高くなる。また、ノード数が多いほどデータ消失リスクも低下する。これはWeb2ゲームの中央サーバーと比較可能で、バックエンドサーバーが完全に停止すればサービス終了となる。しかし、冗長数は多ければ多いほど良いわけではなく、各冗長コピーは追加のストレージ空間を消費するため、過剰な冗長性はシステムに大きな負荷をかける。優れたDAレイヤーは、セキュリティとストレージ効率のバランスを取る適切な冗長方式を選ぶべきである。
-
データ可用性検証:冗長数はネットワーク内でのデータ記録量を保証するが、使用するデータの正確性と完全性も検証が必要である。現在のブロックチェーンでは、暗号学的コミットメントアルゴリズムが一般的に用いられる。これは取引データから生成された小さな暗号学的コミットメントを全ネットワークが記録するものである。履歴データの真偽を検証する際には、該当データからコミットメントを再計算し、それが全ネットワークの記録と一致するかを確認する。一致すれば検証成功となる。代表的なアルゴリズムにはMerkle RootとVerkle Rootがある。高セキュリティな検証アルゴリズムは少ない検証データで高速に履歴データを検証できる。
2.2 ストレージコスト
基本的なセキュリティを確保した上で、DAレイヤーが次に目指すべきはコスト削減と効率向上である。まずストレージコストの削減とは、ハードウェア性能差を無視すれば、単位データあたりのメモリ使用量を下げることを意味する。現在のブロックチェーンでは、主にシャーディング技術や報酬付きストレージにより、データバックアップ数を削減しつつ有効な保存を実現している。しかし、これらの改善策を見ると、ストレージコストとデータセキュリティの間にジレンマがあることが明らかであり、ストレージ使用量の削減はしばしばセキュリティ低下を伴う。したがって、優れたDAレイヤーはストレージコストとデータセキュリティのバランスを実現する必要がある。さらに、DAレイヤーが独立したパブリックチェーンである場合、データ交換の経由プロセスを最小限に抑えることでコストを削減する必要がある。中継ごとに索引データを残す必要があり、プロセスが長いほど索引データが増え、ストレージコストが上昇する。最後に、データのストレージコストは持続性と直接関係する。一般に、ストレージコストが高いほど、パブリックチェーンでの長期保存は困難になる。
2.3 データ読み取り速度
コスト削減の次は効率向上、すなわちデータ利用時にDAレイヤーから迅速に呼び出す能力である。このプロセスは2段階に分けられる。第一に、データを保存しているノードを検索すること。これは全ネットワークでデータ一貫性を実現していないチェーンに特有の課題であり、一貫性が確保されている場合はこの時間コストは無視できる。第二に、現在の主流ブロックチェーン(Bitcoin、Ethereum、Filecoinなど)では、ノードはLeveldbデータベースを使用している。Leveldbではデータは3つの形態で保存される。即時書き込みデータはMemtableファイルに保存され、満タンになるとImmutable Memtableに変換される。これら2タイプのファイルはいずれもメモリ内にあり、Immutable Memtableは変更不可で読み取りのみ可能である。IPFSネットワークで使用されるホットストレージはこの部分にデータを配置し、呼び出し時にメモリから高速に読み取れるようにする。しかし、通常のノードのRAMはGBレベルであり、すぐに満杯になりやすく、ノードダウンなどの異常時にはメモリ上のデータが永久に失われる。データを永続的に保存するには、SSTファイル形式でSSDに保存する必要があるが、読み取り時はまずメモリに読み込む必要があり、索引速度が大幅に低下する。さらに、分片保存を採用したシステムでは、データ復元時に複数のノードにリクエストを送り復元する必要があり、これも読み取り速度を低下させる。

Leveldbのデータ保存方式、画像出典:Leveldb-handbook
2.4 DAレイヤーの汎用性
DeFiの発展やCEXの諸問題に伴い、ユーザーの非中央集権型資産のクロスチェーン取引ニーズが高まっている。ハッシュロック、公正人、リレーチェーンなどのクロスチェーンメカニズムにおいても、両チェーンの履歴データの同時確定は避けられない。この問題の本質は、異なる非中央集権システム間で直接通信できないことによるデータ分離にある。そこで現在、DAレイヤーの保存方式を変更することで、複数のパブリックチェーンの履歴データを同じ信頼できるチェーン上に保存し、検証時にそのチェーンからデータを呼び出せばよいというソリューションが提唱されている。これには、DAレイヤーが異なるタイプのパブリックチェーンと安全な通信手段を確立する必要があり、すなわち高い汎用性が求められる。
3. DA関連技術の探求
3.1 シャーディング
-
従来の分散システムでは、ファイルは1つのノードに完全形で保存されず、元データを複数のブロックに分割し、各ノードに1ブロックずつ保存する。また、ブロックは単一ノードにのみ保存されるのではなく、他のノードにも適切なバックアップを残す。現在の主流分散システムでは、このバックアップ数は通常2に設定される。このシャーディング方式により、単一ノードのストレージ負荷を軽減し、システム総容量を各ノードのストレージ量の合計まで拡張できる。同時に、適度なデータ冗長性により保存の安全性も確保できる。ブロックチェーンのシャーディング方式も概ね同様だが、細部に違いがある。まず、ブロックチェーンでは各ノードがデフォルトで信頼できないため、シャーディング実現には、後続のデータ真偽判定のために十分なデータ量のバックアップが必要であり、そのためバックアップ数は2を大きく上回る必要がある。理想的には、検証ノード総数T、シャード数Nの場合、バックアップ数はT/Nであるべきである。次にブロックの保存プロセスについて、従来の分散システムではノード数が少なく、あるノードが複数のデータブロックに対応することが多く、一貫性ハッシュアルゴリズムでデータをハッシュリングにマッピングし、各ノードが一定範囲の番号のデータブロックを保存する。また、あるノードが特定の保存タスクに割り当てられないことも許容される。一方、ブロックチェーンでは、どのノードがブロックを割り当てられるかは偶然ではなく必然的であり、各ノードはランダムに1ブロックを抽出して保存する。このプロセスは、ブロックの元データとノード自身の情報を含むデータをハッシュし、その結果をシャード数で割った余りで決定される。仮にデータがN個のブロックに分割された場合、各ノードの実際の保存サイズは元の1/Nとなる。適切にNを設定することで、TPSの増加とノードストレージ負荷のバランスを取れる。

シャーディング後のデータ保存方式、画像出典:Kernel Ventures
3.2 DAS(Data Availability Sampling)
DAS技術は、シャーディングの保存方式をさらに最適化したものである。シャーディングプロセスでは、ノードが単純にランダム保存するため、特定のブロックが失われる可能性がある。また、分片後のデータを復元する際、その真偽性と完全性を確認することも重要である。DASでは、Eraser codeとKZG多項式コミットメントでこれらの問題を解決している。
-
Eraser code:イーサリアムの膨大な検証ノード数を考えれば、特定ブロックがどのノードにも保存されない確率はほぼゼロだが、理論的には極端なケースが存在する可能性がある。このようなストレージ欠落の脅威を軽減するため、この方式では元データを直接ブロックに分割せず、まず元データをn次の多項式の係数にマッピングし、その後多項式上に2n個の点を取り、ノードがその中から1つをランダムに選んで保存する。このn次多項式はn+1個の点があれば復元可能であるため、半分のブロックが選ばれていれば元データを復元できる。Eraser codeにより、データ保存のセキュリティとネットワークのデータ復元能力が向上する。
-
KZG多項式コミットメント:データ保存において重要なのはデータ真偽の検証である。Eraser codeを採用しないネットワークでは、検証方法は多様であるが、前述のEraser codeを導入してデータセキュリティを強化する場合、適した方法はKZG多項式コミットメントの使用である。KZG多項式コミットメントは、個々のブロック内容を多項式形式で直接検証でき、多項式をバイナリデータに戻すプロセスを省略できる。検証形式はMerkle Treeと類似しているが、具体的なPathノードデータは不要で、KZG Rootとブロックデータがあれば真偽を検証できる。
3.3 DAレイヤーのデータ検証方式
データ検証とは、ノードから呼び出したデータが改ざんされておらず、欠落していないことを保証することである。検証プロセスに必要なデータ量と計算コストを可能な限り削減するため、DAレイヤーでは現在、ツリー構造が主流の検証方式となっている。最もシンプルなのはMerkle Treeによる検証で、完全二分木形式で記録し、Merkle Rootと検証パス上の反対側サブツリーのハッシュ値を保持するだけで検証可能であり、検証時間複雑度はO(logN)レベルである(logNの底数が指定されない場合はlog₂(N)を意味する)。これにより検証プロセスは大幅に簡素化されるが、検証量は依然としてデータ増加とともに増加する。この問題を解決するため、現在別の検証方式としてVerkle Treeが提案されている。Verkle Treeでは、各ノードはvalueに加えVector Commitmentも付帯し、元ノードの値とこのコミットメント証明によりデータ真偽を迅速に検証でき、姉妹ノードの値を呼び出す必要がない。これにより、毎回の検証計算回数はVerkle Treeの深さにのみ関係し、固定定数となり、検証速度が大幅に加速される。しかし、Vector Commitmentの計算には同一レイヤーのすべての姉妹ノードの参加が必要であり、データ書き込み・変更コストが大幅に増加する。しかし、履歴データのような永続保存で改ざん不可なデータでは、読み取りのみで書き込み不要のため、Verkle Treeは非常に適している。また、Merkle TreeとVerkle TreeにはK-ary形式の派生形もあり、実装メカニズムは類似しているが、各ノードの子ツリー数を変更している。具体的な性能比較は下表の通り。

データ検証方式の時間性能比較、画像出典:Verkle Trees
3.4 汎用DAミドルウェア
ブロックチェーンエコシステムの拡大に伴い、パブリックチェーンの数も増加している。各パブリックチェーンはそれぞれの分野で優位性と代替不可能性を持っているため、短期間でLayer1が統一される可能性はほとんどない。しかし、DeFiの発展やCEXの諸問題に伴い、ユーザーの非中央集権型クロスチェーン資産取引ニーズも高まっている。そのため、クロスチェーンデータインタラクションのセキュリティ問題を解消できるDAレイヤーのマルチチェーンデータ保存が注目されている。しかし、異なるパブリックチェーンからの履歴データを受け入れるには、DAレイヤーがデータフローの標準化保存と検証を行う非中央集権型プロトコルを提供する必要がある。例えばArweaveベースのストレージミドルウェアkvyeは、チェーンからデータを能動的に取得し、すべてのチェーンのデータを標準形式でArweaveに保存することで、データ転送プロセスの差異を最小化している。一方、特定のパブリックチェーン向けにDAレイヤーのデータ保存を提供するLayer2は、内部でノードを共有してデータ交換を行うため、相互作用コストを削減しセキュリティを高められるが、特定チェーンに限定されるという大きな制約がある。
4. DAレイヤー保存ソリューション
4.1 メインチェーンDA
4.1.1 DankSharding類
この種の保存方式にはまだ正式名称がなく、最も顕著な例がイーサリアムのDankShardingであるため、本稿では「DankSharding類」と呼称する。この方式は前述の2つのDA保存技術、シャーディングとDASを主に使用している。まずシャーディングでデータを適切な数に分割し、その後各ノードがDAS形式で1つのデータブロックを抽出して保存する。ネットワーク全体のノード数が十分に多い場合、大きなシャード数Nを設定でき、各ノードのストレージ負荷は元の1/Nに抑えられ、全体のストレージ空間をN倍に拡張できる。また、特定ブロックがどのノードにも保存されない極端なケースを防ぐため、DankShardingはEraser Codeでデータをエンコードし、半分のデータがあれば完全復元可能としている。最後にデータ検証プロセスでは、Verkle Tree構造と多項式コミットメントを用いて高速検証を実現している。
4.1.2 短期保存
メインチェーンDAにおいて、履歴データを扱う最もシンプルな方法は短期保存である。本質的に、ブロックチェーンは公示台帳として機能し、ネットワーク全体の共同見守りのもとで台帳内容の変更を実現するが、永久保存の必要はない。例えばSolanaの場合、履歴データはArweaveに同期されているが、メインネットノードは過去2日間の取引データのみを保持している。アカウント記録に基づくチェーンでは、各時点の履歴データがアカウントの最終状態を保持していれば、次時点の変更検証に十分である。この期間以前のデータに特別なニーズがあるプロジェクトは、他の非中央集権チェーンで独自に保存したり、信頼できる第三者に委託したりできる。つまり、追加のデータ保存ニーズがある者は、履歴データ保存に対して支払いを行う必要がある。
4.2 サードパーティDA
4.2.1 専用DA:EthStorage
-
専用DA:DAレイヤーで最も重要なのはデータ転送のセキュリティであり、最も高いのはメインチェーンDAである。しかし、メインチェーン保存はストレージ空間の制限とリソース競合に直面しており、ネットワークデータ量が急速に増加する場合、長期保存にはサードパーティDAがより適している。サードパーティDAがメインネットと高い互換性を持ち、ノードを共有できれば、データ交換プロセスでもより高いセキュリティが得られる。したがって、セキュリティを重視する場合、専用DAには巨大な利点がある。イーサリアムを例にすると、専用DAの基本要件はEVMとの互換性であり、イーサリアムのデータとコントラクト間の相互運用性を保証する必要がある。代表的なプロジェクトにはTopia、EthStorageなどがある。特にEthStorageは互換性面で最も完成度が高く、EVMレベルだけでなく、Remix、Hardhatなどのイーサリアム開発ツールと専用インターフェースを設けて接続し、開発ツールレベルでの互換性を実現している。
-
EthStorage:EthStorageはイーサリアムから独立したパブリックチェーンだが、そのノードはイーサリアムノードのスーパーセットであり、EthStorageを実行するノードは同時にイーサリアムも実行できる。イーサリアムのオペコードを通じて直接EthStorageを操作できる。EthStorageの保存モードでは、イーサリアムメインネットに少量のメタデータを保持して索引とする。本質的に、イーサリアム向けの非中央集権型データベースを構築している。現在のソリューションでは、イーサリアムメインネットにEthStorage Contractを展開することで、メインネットとEthStorageの相互作用を実現している。イーサリアムがデータを保存する場合、コントラクトのput()関数を呼び出し、2つのバイト変数keyとdataを入力する。dataは保存するデータを示し、keyはイーサリアムネットワーク内の識別子であり、IPFSのCIDに類似していると考えられる。 (key,data) データペアがEthStorageネットワークに正常に保存されると、EthStorageはkvldxを生成してイーサリアムメインネットに返し、イーサリアムのkeyと対応させる。この値はEthStorage上でのデータ保存アドレスに対応し、もともと大量のデータを保存する必要があった問題が、単一の(key,kvldx)ペアの保存に変換され、イーサリアムメインネットのストレージコストを大幅に削減できる。以前に保存したデータを呼び出すには、EthStorageのget()関数を使用し、keyパラメータを入力する。イーサリアムに保存されたkvldxを通じて、EthStorage上でデータを迅速に検索できる。

EthStorageコントラクト、画像出典:Kernel Ventures
-
ノードがデータを具体的に保存する方式については、EthStorageはArweaveのモデルを参考にしている。まず、ETHからの大量の(k,v)ペアをシャーディングし、各シャーディングは固定数の(k,v)データペアを含み、各(k,v)ペアの具体的なサイズにも制限がある。この方式により、マイナーのストレージ報酬プロセスにおける作業量の公平性を保証できる。報酬の配布には、まずノードがデータを実際に保存しているかを検証する必要がある。このプロセスでは、EthStorageは1つのシャーディング(TBレベル)を非常に多くのチャンクに分割し、イーサリアムメインネットにMerkle rootを保持して検証に使用する。次に、マイナーはまずnonceを提供し、それをEthStorageの前ブロックハッシュと組み合わせてランダムアルゴリズムでいくつかのチャンクアドレスを生成する。マイナーはこれらのチャンクデータを提供して、シャーディング全体を実際に保存していることを証明する必要がある。しかし、このnonceは自由に選べない。そうでなければ、ノードは保存しているチャンクに対応する適切なnonceを選択して検証を通過できるため、nonceは生成されたチャンクを混合・ハッシュした結果、ネットワーク要件を満たす難易度値になり、かつ最初にnonceとランダムアクセス証明を提出したノードのみが報酬を得られる。
4.2.2 モジュラーDA:Celestia
-
ブロックチェーンモジュール:現在のLayer1パブリックチェーンが実行する主なタスクは以下の4つに大別される。(1)ネットワーク基盤ロジックの設計、特定の方法で検証ノードを選択し、ブロックを作成し、ネットワーク維持者に報酬を分配する;(2)取引のパッケージング、処理、および関連事務の公開;(3)チェーンに上げる取引の検証と最終状態の確定;(4)ブロックチェーン上の履歴データの保存と維持。完了する機能によって、ブロックチェーンを4つのモジュールに分類できる:コンセンサスレイヤー、実行レイヤー、決済レイヤー、データ可用性レイヤー(DAレイヤー)。
-
モジュラー型ブロックチェーン設計:長期間、この4つのモジュールは1つのパブリックチェーンに統合されていた。このようなチェーンをモノリシックチェーンと呼ぶ。この形式は安定しておりメンテナンスしやすいが、単一チェーンに大きな負荷をかける。実際の運用では、この4つのモジュールが互いに制約し合い、チェーンの限られた計算・ストレージリソースを競合する。例えば、実行レイヤーの処理速度を向上させると、DAレイヤーに大きなストレージ負荷がかかる。実行レイヤーのセキュリティを確保するにはより複雑な検証メカニズムが必要だが、取引処理速度が遅くなる。そのため、パブリックチェーンの開発は常にこの4つのモジュール間のトレードオフに直面している。この性能向上のボトルネックを突破するため、開発者はモジュラー型ブロックチェーンのソリューションを提案した。その核心思想は、上記4つのモジュールのうち1つまたは複数を切り離し、別のパブリックチェーンで実現させることである。これにより、そのチェーンでは取引速度またはストレージ能力の向上に集中でき、従来の足引っ張り効果による全体性能の制限を突破できる。
-
モジュラーDA:DAレイヤーをブロックチェーン業務から切り離し、別のチェーンに任せる方法は、Layer1の増大する履歴データに対処する現実的なソリューションとされている。現在この分野の探求は初期段階にあり、最も代表的なプロジェクトはCelestiaである。具体的な保存方式では、CelestiaはDankshardingの保存方法を参考にしており、データを複数のブロックに分割し、各ノードが一部を抽出して保存し、同時にKZG多項式コミットメントでデータ完全性を検証する。さらに、Celestiaは高度な2次元RS符号化(Reed-Solomon Erasure Coding)を使用し、kk行列形式で元データを書き換え、最終的に25%の部分で元データを復元できる。しかし、データ分片保存は本質的に全ネットワークノードのストレージ負荷を総データ量に係数をかけたものにすぎず、ノードのストレージ負荷は依然としてデータ量と線形に増加する。Layer1が取引速度を継続的に改善するにつれ、いつかノードのストレージ負荷が受け入れがたい臨界点に達する可能性がある。この問題を解決するため、CelestiaはIPLDコンポーネントを導入している。kk行列内のデータはCelestia上に直接保存せず、LL-IPFSネットワークに保存され、ノードにはIPFS上のCIDコードのみを保持する。ユーザーが特定の履歴データをリクエストすると、ノードはIPLDコンポーネントに該当CIDを送信し、IPFS上で元データを呼び出す。IPFS上にデータがあれば、IPLDコンポーネントとノードを通じて返却される。なければデータは返却されない。

Celestiaのデータ読み取り方式、画像出典:Celestia Core
-
Celestia:Celestiaを例に、モジュラー型ブロックチェーンがイーサリアムのストレージ問題解決にどのように適用されるかを考察できる。Rollupノードはパッケージング・検証済みの取引データをCelestiaに送信し、Celestia上でデータを保存する。このプロセスでCelestiaはデータ保存のみを行い、それ以上の認識は持たない。最終的にRollupノードはストレージスペースに応じてtiaトークンをCelestiaに支払い、ストレージ料金とする。Celestiaでの保存はEIP4844のDASと符号化技術に類似しているが、EIP4844の多項式符号化をアップグレードし、2次元RS符号化を使用して、ストレージセキュリティをさらに強化している。25%のフラグメントで全取引データを復元可能である。本質的には低コストのPoSパブリックチェーンに過ぎず、イーサリアムの履歴データ保存問題を解決するには、Celestiaと協働する多くの他のモジュールが必要である。例えばRollup面では、Celestia公式サイトが強く推奨しているのはSovereign Rollupである。一般的なLayer2のRollupとは異なり、計算・検証のみ(実行レイヤー)を行うのではなく、実行と決済の全プロセスを含んでいる。これによりCelestiaでの取引処理を最小限に抑え、Celestia全体のセキュリティがイーサリアムより弱い状況下でも、全体の取引プロセスのセキュリティを最大化できる。また、イーサリアムメインネットがCelestiaのデータを呼び出す際のセキュリティ保証としては、現在最も主流なのがQuantum Gravity Bridgeスマートコントラクトである。Celestiaに保存されたデータは、Merkle Root(データ可用性証明)を生成し、イーサリアムメインネットのQuantum Gravity Bridgeコントラクトに保持される。イーサリアムがCelestiaの履歴データを呼び出すたびに、そのハッシュ結果とMerkle Rootを比較し、一致すれば確かに真の履歴データであると判断される。
4.2.3 ストレージ公的チェーンDA
メインチェーンDAの技術原理では、シャーディングに類似した多くの技術をストレージ公的チェーンから借用している。サードパーティDAの中には、ストレージ公的チェーンを直接活用して部分的な保存タスクを完了しているものもある。例えばCelestiaの具体的な取引データはLL-IPFSネットワークに置かれている。サードパーティDAのソリューションでは、Layer1のストレージ問題を解決するために独立したチェーンを構築する以外に、より直接的な方法として、ストレージ公的チェーンとLayer1を直接接続し、Layer1の膨大な履歴データを保存させる方法がある。高性能ブロックチェーンにとって、履歴データの規模はさらに巨大であり、フルスピード運転下では、高性能パブリックチェーンSolanaのデータ量は約4PGに近く、通常のノードのストレージ範囲を完全に超えている。Solanaが選んだソリューションは、履歴データを非中央集権ストレージネットワークArweaveに保存し、メインネットノードには2日分のデータのみを保持して検証に使用することである。保存プロセスのセキュリティを確保するため、SolanaとArweaveは専用のストレージブリッジプロトコルSolar Bridgeを設計している。Solanaノードが検証したデータはArweaveに同期され、対応するtagが返される。このtagがあれば、Solanaノードは任意の時点の履歴データを参照できる。Arweave上では、全ネットワークノードがデータ一貫性を保つことをネットワーク参加の条件とはしておらず、代わりに報酬付きストレージを採用している。まずArweaveは伝統的なチェーン構造でブロックを構築せず、むしろグラフに近い構造である。Arweaveでは、新しいブロックは前ブロックを指すだけでなく、ランダムに既存のブロック(Recall Block)を指す。Recall Blockの具体的な位置は、その前ブロックとブロック高のハッシュ結果で決定され、前ブロックが採掘される前にRecall Blockの位置は未知である。しかし、新ブロック生成プロセスでは、ノードがRecall Blockのデータを持ってPOWメカニズムで規定難易度のハッシュを計算する必要があり、規定難易度のハッシュを最初に計算したマイナーのみが報酬を得られるため、マイナーが可能な限り多くの履歴データを保存するよう促進される。また、特定の履歴ブロックを保存しているノードが少ないほど、ノードが規定難易度のnonceを計算する際の競争相手が少なくなるため、ネットワーク内でバックアップが少ないブロックを保存するようマイナーを促進する。最後に、ノードがArweaveでデータを永続保存することを保証するため、WildFireのノード評価メカニズムを導入している。ノード間は、より速く多くの履歴データを提供できるノードとの通信を好む傾向があり、評価が低いノードは最新ブロックや取引データを迅速に得られず、POW競争で不利になる。

Arweaveのブロック構築方式、画像出典:Arweave Yellow-Paper
5. 総合比較
以下、DA性能指標の4次元から、5つの保存ソリューションの長所と短所を比較する。
-
セキュリティ:データセキュリティ問題の最大の原因は、データ転送中の喪失および不誠実ノードによる悪意のある改ざんであり、クロスチェーンプロセスでは2つのパブリックチェーンの独立性と状態非共有により、データ転送セキュリティの危険地帯となる。また、現在DAレイヤーを必要とするLayer1は往々にして強力なコンセンサスグループを持ち、自らのセキュリティは普通のストレージ公的チェーンをはるかに上回る。したがって、メインチェーンDAソリューションはより高いセキュリティを持つ。データ転送セキュリティを確保した後は、次に呼び出しデータのセキュリティを保証する必要がある。取引検証に使用する短期履歴データに限定すれば、一時保存ネットワークでは同じデータが全ネットワークで共通バックアップされ、DankSharding類のソリューションではデータの平均バックアップ数は全ノード数の1/Nにすぎない。より多くのデータ冗長性はデータ消失リスクを下げ、検証時により多くの参照サンプルを提供できる。したがって、一時保存の方が相対的に高いデータセキュリティを持つ。サードパーティDAソリューションでは、専用DAはメインチェーンと公共ノードを共有するため、クロスチェーンプロセスでデータがこれらのリレーノードを介して直接転送され、他のDAソリューションよりも相対的に高いセキュリティを持つ。
-
ストレージコスト:ストレージコストに最も大きな影響を与えるのはデータの冗長数である。メインチェーンDAの一時保存ソリューションでは、全ネットワークノードのデータ同期形式で保存されるため、新しく保存されるデータは全ノードでバックアップされる必要があり、最も高いストレージコストを持つ。高額なストレージコストは逆に、高TPSネットワークではこの方式が一時保存にしか適さないことを決定づける。次にシャーディング保存方式、すなわちメインチェーンのシャーディングおよびサードパーティDAのシャーディングがある。メインチェーンは往々にしてより多くのノードを持つため、対応するブロックもより多くのバックアップを持つ。したがって、メインチェーンシャーディングソリューションはより高いコストを持つ。最もストレージコストが低いのは、報酬付きストレージ方式を採用するストレージ公的チェーンDAであり、この方式ではデータ冗長数は通常固定定数付近で変動する。また、ストレージ公的チェーンDAでは動的調整メカニズムを導入し、報酬を上げてノードにバックアップが少ないデータを保存させることでデータセキュリティを確保している。
-
データ読み取り速度:データの保存速度は主に、ストレージ空間内でのデータ位置、データ索引パス、およびノード内でのデータ分布の影響を受ける。特に、ノードでのデータ保存位置が速度に与える影響が大きい。データをメモリまたはSSDに保存するかで、読み取り速度に数十倍の差が出る可能性がある。ストレージ公的チェーンDAは多くがSSD保存を採用している。なぜなら、このチェーンの負荷はDAレイヤーのデータだけでなく、ユーザーがアップロードする動画、画像など高メモリ使用の個人データも含まれるため、SSDを使用しない場合、巨大なストレージ負荷に耐えられず、長期保存ニーズを満たせない。次に、メモリ状態でデータを保存するサードパーティDAとメインチェーンDAでは、サードパーティDAはまずメインチェーンで対応する索引データを検索し、その後その索引データをクロスチェーンでサードパーティDAに転送し、ストレージブリッジを通じてデータを返す必要がある。一方、メインチェーンDAはノードから直接データを照会できるため、データ検索速度がより速い。最後に、メインチェーンDA内部では、シャーディング方式を採用する場合、複数のノードからブロックを呼び出し、元データを復元する必要がある。したがって、分片しない一時保存方式と比べると速度が遅くなる。
-
DAレイヤーの汎用性:メインチェーンDAの汎用性はほぼゼロに近く、ストレージ不足のパブリックチェーンから別のストレージ不足のチェーンにデータを移動することは不可能だからである。サードパーティDAでは、ソリューションの汎用性と特定メインチェーンとの互換性は矛盾する指標である。例えば、特定のメインチェーン向けに設計された専用DAソリューションでは、ノードタイプやネットワークコンセンサスレベル
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News














