モジュラーブロックチェーンパラダイム
物理学では、カップリングとは、2 つの運動形態が相互作用を通じて互いに影響を及ぼし合う現象を指します。一方、デカップリングとは、問題に対処するために 2 つの運動形態を数学的に分離することです。
プログラミングの分野では、モジュール性の考え方は非常に似ています。モジュラー プログラミングと呼ばれるソフトウェア設計手法では、プログラムの機能を独立した交換可能なモジュールに分割し、各モジュールに目的の機能の 1 つの側面のみを実行するために必要なものがすべて含まれるようにすることを重視しています。
ブロックチェーンもコンピュータ プログラムです。基本的に、モジュール化の考え方をパブリック ブロックチェーンに適用すると、次の 3 つのコア コンポーネントに分解できます。
実行 — これはチェーンを更新するために必要な計算であり、現在の状態の取得、一連の新しいトランザクションの追加、新しい状態への移行が含まれます。
合意または決済またはセキュリティ - トランザクションとその順序付けのセキュリティと合意を提供します。
データ可用性 (DA) — これは、ブロック ヘッダーの背後にあるトランザクション データが公開され、利用可能であることを保証するためであり、これにより誰でも簡単に状態を計算し、状態遷移を確認できます。

現在の主要なブロックチェーンのように、これら 3 つのコンポーネントすべてを 1 つのモノリシック チェーンにまとめるのではなく、それぞれが 1 つのモジュールの役割を果たす特殊なチェーンまたはレイヤーに分割して、ブロックチェーンの機能をより効率的に実装することができます。これが、モジュラー ブロックチェーンのパラダイムです。
モジュラーブロックチェーンの利点
前述のように、モジュラー ブロックチェーンは、単一のブロックチェーンのコア コンポーネントを分離し、別々のレイヤーで実行することで実現します。では、モジュラー ブロックチェーンと非モジュラー ブロックチェーンの違いは何でしょうか。以下に挙げる利点があります。
スケーラビリティ
2 つのコア機能に特化したレイヤーにより、モノリシック ブロックチェーンに伴うトレードオフの制限なしに、はるかに高いスケーラビリティが実現します。たとえば、DA サンプリングを備えたモジュール型データ可用性レイヤーは、ユーザー数に応じて直線的に拡張できます。
相互運用性
ブロックチェーンは、モジュール式の共有セキュリティ レイヤーを採用して、同じクラスター内のブロックチェーン間で信頼を最小限に抑えたブリッジングを可能にします。これにより、セキュリティと、複数のブロックチェーンが相互に通信できるレベルの両方が向上します。
ブートストラップ
新しいブロックチェーンは、最小限のコストと時間で作成できます。Rollup ソフトウェア開発キットのようなものは、これを支援するだけでなく、コンセンサス メカニズム、バリデーター、トークン配布メカニズムを必要とせずにブートストラップする方法を提供します。
実験
ブロックチェーンは簡単に作成でき、チェーン全体のスケーラビリティと最適化をさらに高める新しい革新的なテクノロジーをテストするために使用できます。これにより、新しいチェーンは革新したい要素に直接焦点を当てることができ、それをチェーンの残りの部分に広げることができます。
ロールアップのDAレイヤー
効果的なスケーリングを目的とした Ethereum のレイヤー 2 ソリューションであるロールアップも、基本的にはモジュール方式です。ロールアップは、Ethereum レイヤー 1 から実行レイヤーを取り除き、トランザクションをできるだけ速く処理することに重点を置いた実行専用の 2 番目のレイヤーを形成します。一方で、Ethereum レイヤー 1 は、セキュリティとデータの可用性の両方という困難な作業を担当しています。
では、ここで 2 つの質問があります。まず、データの可用性がなぜそれほど重要なのか。次に、モジュール性の考え方を再び使用して、DA をレイヤー 1 から切り離すことができるのか。説明に少し時間をかけさせてください。
最初の質問については、状況について別途議論する必要があります。Optimistic Rollup の場合、シーケンサーが悪意を持って不正な口座残高状態を決済すると、誰でもレイヤー 1 から元のトランザクション データを取得して正しい口座状態を再構築し、チャレンジを実行できます。したがって、DA の役割は、チャレンジが発生した場合に元の証拠を提供し、チャレンジが正しく有効であることを保証するアーカイブ ビューローのようなものです。
ゼロ知識 (ZK) ロールアップに関しては、シーケンサーはゼロ知識の暗号証明により悪事を働くことはできません。しかし、シーケンサーがダウンしたり、何らかの理由で利用できなくなったりする極端なケースでは、ユーザーはレイヤー 2 チェーンから脱出してレイヤー 1 に資金を取り戻す必要があります。その場合、DA は、誰もがデータに基づいて最終ステータスを再構築できることを保証するために不可欠です。したがって、DA の役割は、極端な状況が発生した場合にユーザーがスムーズに脱出できるようにする安全ドアのようなものです。
2 番目の質問に対する答えは、簡単に言えば「はい」です。DA は非常に重要なので、保存するのに最適な場所は Ethereum レイヤー 1 ですが、最も安全なチェーンは最も高価なチェーンでもあります。決済トランザクションとデータ保存のガス コストは、他のチェーンよりもはるかに高くなります。そのため、Matter Labs と Starkware はどちらも、DA をレイヤー 1 に保存しないという妥協策で、ZK Rollup の安価なバージョンである ZK-Porter と Validium をユーザーに提供しています。
その結果、特殊化されたモジュール式の DA レイヤーが登場し始めています。
DA層に特化したプロジェクト
セレスティア
以前は LazyLedger と呼ばれていた Celestia は、モジュール式のコンセンサスおよびデータ ネットワークであり、誰でも最小限のオーバーヘッドで独自のブロックチェーンを簡単に展開できるように構築されています。コンセンサス レイヤーと DA レイヤーをアプリケーション実行から分離することで、Celestia はブロックチェーン テクノロジー スタックをモジュール化し、分散型アプリケーション ビルダーに新たな可能性をもたらします。

Celestia 対応のモジュール アーキテクチャでは、開発者は独自の仮想実行環境を簡単に定義できます。各アプリケーションは独自の主権実行スペースを取得し、メイン チェーンのハード フォークなしで更新できます。
Celestia の主な特徴は、ブロックチェーンのスケーリングにおける基本的な制約の 1 つである「データ可用性の問題」に対処することです。この問題は、新しいブロックが生成されたときに、そのブロック内のすべてのデータが実際にネットワークに公開されたことをノードがどのようにして確認できるかという点です。ジレンマは、シーケンサーまたはブロック プロデューサーがブロック内のすべてのデータをリリースしないと、そのブロック内に悪意のあるトランザクションが隠されているかどうかを誰も検出できないことです。
Celestia はこれをどのように解決するのでしょうか? 消去コードを使用して、すべてのデータがチェーン上に投稿されたことを高い確率で保証するデータ可用性証明を作成します。
具体的には、Celestia は、シーケンサーが新しいブロックを作成するときに、2 次元リード ソロモン エンコーディング スキームを使用してブロック データをエンコードします。このスキームにより、小さなデータ サンプルだけで、統計的に確実にブロック全体が公開されたことを検証できます。データ可用性サンプリング (DAS) と呼ばれる操作を実行するには、軽量クライアントのみが必要です。DAS とは、ブロックから小さなデータ片をランダムにダウンロードして、シーケンサーが不正に動作してデータを保留しているかどうかを検出します。この方法は、確率統計の観点から非常に効果的です。実際、軽量クライアントがランダムにデータ チャンクをチェックしようとする 7 回目までに、シーケンサーが不正に動作していることを検出できない可能性は 1% 未満になります。また、小さなデータ片が 1 つでも誤ってエンコードされていることが判明すると、不正証明を介してネットワークに通知されます。これにより、従来のブロックチェーンのように状態実行によってスループットがボトルネックになることがなくなり、Celestia のスループットを関係するユーザー数に合わせて拡張できます。
当初は EVM と Cosmos SDK に重点を置いていた Celestia ですが、Ethereum と Cosmos のエコシステムへの統合も排除していません。Celestia は Celestium と呼ばれるプランをリリースしました。このプランでは、あらゆる Ethereum L2 チェーンが Celestia をデータの可用性に、Ethereum を決済と紛争解決に使用できます。Celestium は、他のオフチェーン データ可用性技術よりも高いレベルのセキュリティを備えた、Ethereum L2 の高スループット データ可用性を提供します。
さらに、Celestia は Evmos と提携して、Cevmos と呼ばれる EVM ロールアップの決済レイヤーを構築しています。決済チェーンは、Optimint を使用して Celestia ロールアップとして実装され、Celestia を DA レイヤーとして活用して、ロールアップ専用に最適化された完全に EVM と同等のスタックを提供します。これにより、手数料が下がり、ロールアップのスケールが向上します。

ポリゴンアベイル
Polygon のツールキットのスケーリング ソリューションの 1 つである Avail は、スタンドアロン チェーン、サイドチェーン、オフチェーン スケーリング ソリューションを対象とした、汎用的でスケーラブルなデータ可用性に重点を置いたブロックチェーンです。

Avail は、非常に安全な数学的プリミティブ (重要な革新を伴う消去コードを使用したデータ可用性チェック) を使用して、堅牢なデータ可用性レイヤーを提供します。Kate 多項式コミットメントを使用して、不正証明を回避し、正直な多数派の仮定を必要とせず、データが利用可能であるという確信を得るために正直なフルノード ピアに依存しない 2D データ可用性スキームを作成します。
データ可用性の問題を解決するための Avail のアプローチは、Celestia の DAS と似ていますが、わずかな点のみが異なります。Avail は、シーケンサーの不正動作を回避するために、不正証明の代わりに KZG 多項式コミットメントを使用します。KZG コミットメント (Kate コミットメントとも呼ばれます) は、2010 年に Aniket Kate、Gregory M. Zaverucha、および Ian Goldberg によって導入され、簡潔な方法で多項式にコミットする方法を提供します。

簡単に言えば、ブロック内のデータ全体が 2 次元のマトリックスとして配置されます。データの冗長性は、マトリックスの各列を元のサイズの 2 倍に消去符号化することで実現されます。各行にコミットするために Kate コミットメントが使用され、コミットメントはブロック ヘッダーに含まれます。このスキームでは、ブロック ヘッダーのみにアクセスできる軽量クライアントがマトリックスのランダムなセルを照会し、ブロック ヘッダーに対してチェックできる短い証明を取得できるため、データ隠蔽の試みを簡単に検出できます。データの冗長性により、シーケンサーは、単一のトランザクションのみを隠蔽したい場合でも、ブロックの大部分を隠蔽しなければならず、ランダム サンプリングで検出されやすくなります。したがって、Kate コミットメントの拘束力により、シーケンサーが間違ったコミットメントを構築して検出されないことは計算上非常に不可能であるため、不正証明の必要性が回避されます。
まとめ
モジュール型ブロックチェーンのプロトタイプとしての特化されたデータ可用性レイヤーは、ブロックチェーン システムの設計方法を完全に変え、さまざまな実行環境でこの特化されたレイヤーをデータの順序付けと可用性に利用できるモジュール型ブロックチェーン パラダイムを実現することを目的としています。特化された DA レイヤーを使用したロールアップは、Ethereum メインネットのロールアップほど安全ではないのではないかという懸念が少し生じるかもしれませんが、モジュール型ブロックチェーンはより柔軟でスケーラブル、カスタマイズ可能、相互運用可能なネットワークをもたらすことができるため、これは重要なトレードオフです。長期的には、特化された DA レイヤーは、ブロックチェーンのスケーリングの最終段階への道を切り開く、モジュール型ブロックチェーン パラダイムの基礎となるでしょう。
免責事項:この調査は情報提供のみを目的としています。投資に関するアドバイスや投資の売買を推奨するものではなく、投資判断のメリットを評価するために使用されるものではありません。
🐦 @chestersigned
📅 2022年4月18日
リンク:
https://medium.com/blockchain-capital-blog/wtf-is-data-availability-80c2c95ded0f
https://polynya.medium.com/the-lay-of-the-modular-blockchain-land-d937f7df4884
https://rileygmi.substack.com/p/celestia?s=r&utm_campaign=post&utm_medium=web
https://coinyuppie.com/focus-on-the-data-availability-layer-to- Understand-the-new-public-chain-celestia/
https://polygon.technology/blog/introducing-avail-by-polygon-a-robust-general-Purpose-scalable-data-availability-layer-98bc9814c048
https://polygon.technology/solutions/polygon-avail/