IOSG Ventures:合併目前、イーサリアムの最新技術ルートを詳しく解説
星球君的朋友们
2022-07-19 03:27
本文约8365字,阅读全文需要约33分钟
将来のイーサリアムのロードマップの方向性は非常に明白であり、サービスのロールアップを中心に展開されます。

原作者: Jiawei、IOSG Ventures

元の編集者: Olivia、IOSG Ventures

tl;dr:

  • 「The Merge」がうまくいけば、2023年以降はシャーディングがイーサリアムの開発の主軸となることになるが、2015年にシャーディングが提案されて以来、その意味は大きく変わってきた。

  • Vitalik氏が「ロールアップ中心のイーサリアムロードマップ」とイーサリアムの「エンドゲーム」を提唱した後、イーサリアムの全体的な方向性は事実上変更され、ロールアップのセキュリティ保証とデータ可用性層として「舞台裏に後退」した。

  • ダンクシャーディングとプロトダンクシャーディングは、「問題の発見」と「問題の解決」のための新技術の導入や提案を組み合わせた一連の技術の組み合わせで表現されています。

  • 画像ソース

導入

画像ソース

あっという間に2022年も半分が過ぎました。 2018 年の Devcon スピーチで Vitalik 氏が提案した Serenity ロードマップを振り返ると、イーサリアムの開発経路が何度か変更されたことが簡単にわかります。現在のロードマップと比較すると、シャーディングには新しい意味が与えられており、eWASM はほとんど使用されていません。言及された。

潜在的な詐欺やユーザーに誤解を招く問題を避けるために、今年1月末、イーサリアム財団は「ETH2」という用語を廃止し、代わりに現在のイーサリアムメインネットをトランザクションを処理する「実行層」に改名すると発表した。この用語は、PoS を調整して処理する「コンセンサス層」に名前が変更されました。

現在、イーサリアムの公式ロードマップは、ビーコン チェーン、マージ、シャーディングの 3 つの部分をカバーしています。

その中でも、イーサリアムからPoSへの移行の前段階としてのビーコンチェーンとコンセンサス層の調整ネットワークは2020年12月1日に開始され、これまでに20か月近く運用されています。

画像ソース

画像ソース

この記事では、シャーディングに焦点を当てます。その理由は:

  • まず、主要ネットワークの合併が年内に成功裏に実現すると仮定すると、シャーディングは 2023 年のイーサリアム開発の主軸となります。

  • 次に、イーサリアム シャーディングの概念は、2015 年の Devcon 1 で Vitalik によって初めて提案されました。それ以来、シャーディングの 6 つの開発段階が GitHub のシャーディング FAQ で提案されています (上の図を参照)。しかし、イーサリアムのロードマップの更新と関連する EIP の推進により、シャーディングの意味と優先順位は大きく変わりました。シャーディングについて議論するときは、まずシャーディングの意味について合意する必要があります。

上記 2 つのポイントを要約すると、シャーディングの詳細を整理することが非常に重要です。この記事は、あらゆる技術的な詳細に特化するのではなく、イーサリアムのオリジナルシャーディングであるダンクシャーディングとプロトダンクシャーディングの起源、進歩、将来の路線について議論することに焦点を当てます。 Danksharding と Proto-Danksharding の詳細については、IOSG の以前の記事を参照してください。「拡張キラー Danksharding はイーサリアムシャーディングの未来となるでしょうか?」「EIP4844: 予見可能な不況効果を軽減するために、L2 トランザクション手数料が間もなく開放されます。」

Quick Review

ロールアップ、データの可用性、シャーディングについては、この記事で何度か触れます。

ここで 3 つすべての基本概念を簡単に説明しましょう。

現在主流のロールアップは、zkRollup と Optimistic Rollup に分かれています。前者は有効性証明、つまりトランザクションのバッチ実行に基づいており、暗号化証明 SNARK に依存して状態遷移の正しさを保証します。後者は、改ざんされない限りすべての状態遷移が正しいと「楽観的に」想定します。誤った状態遷移を確実に検出できるようにするための期間。

画像ソース

画像ソース

イーサリアムのフルノードは EVM の完全な状態を保存し、すべてのトランザクション検証に参加します。これにより分散化とセキュリティが保証されますが、スケーラビリティの問題が生じます。トランザクションは直線的に実行され、各ノードはトランザクションを確認する必要があるのです。一つ。

さらに、時間が経つにつれて、イーサリアム ネットワーク データは蓄積され続け (現在は最大 786 GB)、フル ノードを実行するためのハードウェア要件もそれに応じて増加します。フルノードの数が減少すると、潜在的な単一障害点が生じ、分散化の度合いが低下します。

直感的には、シャーディングは分業と協力に相当します。つまり、すべてのノードがグループ化され、各トランザクションは単一のノード グループによってのみ検証される必要があり、トランザクションの並列処理を実現するためにトランザクション レコードが定期的にメイン チェーンに送信されます。 (たとえば、1000 個のノードがあり、各トランザクションは各ノードで検証する必要があります。ノードを 10 のグループに分割し、各グループが 100 個のノードでトランザクションを検証すると、効率は明らかに大幅に向上します)。フラグメンテーションを使用すると、単一グループのノードのハードウェア要件を軽減しながらスケーラビリティを向上させることができるため、上記 2 つの問題が解決されます。

画像ソース

画像ソース

背景

背景

ダンクシャーディングについて話す前に、その背景を少し理解してみましょう。個人的には、Danksharding が立ち上げたコミュニティの雰囲気の基礎は主に Vitalik による 2 つの記事から来ています。これら 2 つの記事は、イーサリアムの将来の方向性を決定します。

まず、Vitalik は 2020 年 10 月に「ロールアップ中心のイーサリアム ロードマップ」を発表し、イーサリアムは短期から中期的にロールアップを一元的にサポートする必要があると提案しました。まず、イーサリアムベースレイヤーの拡張は、オンチェーン計算やIO操作の効率を向上させるのではなく、ブロックのデータ容量を拡張することに焦点を当てます。つまり、イーサリアムのシャーディングは、(トランザクションではなく) データ BLOB により多くのスペースを提供するように設計されており、イーサリアムはデータが利用可能であることを確認するだけで、これらのデータを解釈する必要はありません。次に、イーサリアムのインフラストラクチャは、ロールアップ (ENS の L2 サポート、ウォレットの L2 統合、クロス L2 資産転送など) をサポートするように調整されています。画像ソース

画像ソース

それ以来、ヴィタリック氏は、2021年12月に出版された「エンドゲーム」でイーサリアムの最終像を説明しました。ブロック出力は集中化されていますが、ブロック検証はトラストレスで高度に分散化されており、同時に反検閲が保証されています。基礎となるチェーンはブロックのデータ可用性を保証し、ロールアップはブロックの有効性を保証します (zkRollup では、これは SNARK によって実現されます。Optimistic Rollup では、1 人の正直な参加者だけが不正防止ノードを実行する必要があります)。 。 Cosmos のマルチチェーン エコロジーと同様に、イーサリアムの将来はマルチ ロールアップの共存になります。それらはすべて、イーサリアムが提供するデータの可用性と共有セキュリティに基づいています。ユーザーは、メイン チェーンの高額な料金を支払うことなく、異なるロールアップ間を移動するためにブリッジを利用します。

上記の 2 つの記事は基本的にイーサリアムの開発方向、つまりロールアップを提供するためにイーサリアムのベース層の構築を最適化することを決定しました。上記の議論は、次のような見解に基づいている可能性があります。ロールアップは有効であることが証明され、よく採用されているため、「不確実で複雑な拡張計画 (注: 元のシャーディングを指します) を待つのに数年を費やすよりも、ロールアップのほうが良いでしょう」ロールアップベースのソリューションに注目してください。」

画像ソース

Proto-Danksharding

画像ソース

Proto-Danksharding の背景には、ロールアップ スキームによりイーサリアム メイン チェーンと比較してトランザクション コストが大幅に削減されたものの、まだ十分に低い理想的なレベルに達していないことが挙げられます。これは、イーサリアムのメインチェーン上でデータの可用性を提供する CALLDATA が依然として多額のコスト (16 ガス/バイト) を占めているためです。当初のアイデアでは、イーサリアムはロールアップが使用できるようにデータ シャーディングの各ブロックに 16 MB の専用データ スペースを提供することを提案していましたが、データ シャーディングの実際の実装はまだ遠いです。

今年 2 月 25 日、Vitalik と DankRad は、プロトダンクシャーディングとしても知られる EIP-4844 (シャード ブロブ トランザクション) プロポーザルを提案しました。これは、シンプルかつ上位互換性のある方法でイーサリアムのデータ可用性を拡張し、イーサリアムを次の形式で利用できるようにすることを目的としています。ダンクシャーディング その後も入手可能。この提案の変更はコンセンサス層でのみ発生し、クライアント、ユーザー、実行層のロールアップ開発者による追加の適応作業は必要ありません。

Proto-Danksharding は実際にはシャーディングを実行しませんが、将来のシャーディングのために「Blob-carrying Transactions」と呼ばれるトランザクション形式を導入します。このトランザクション形式は、blob (約 125kB) と呼ばれる追加のデータ ブロックを運ぶという点で通常のトランザクションとは異なります。これによりブロックが実際には大きくなり、CALLDATA (約 10kB) よりも安価なデータ可用性が提供されます。

ただし、「大きなブロック」の一般的な問題は、ディスク容量要件が継続的に蓄積されることです。プロトダンクシャーディングの採用により、イーサリアムのストレージ容量は年間さらに 2.5TB 増加します (現在、ネットワーク全体のデータは 986GB にすぎません)。 。したがって、Proto-Danksharding は、BLOB が削除されるまでの期間 (たとえば、30 日) を設定し、ユーザーまたはプロトコルはこの期間内に BLOB データをバックアップできます。

つまり、イーサリアムのコンセンサス層は、これらのデータが十分な期間にわたって利用可能であることを保証し、他のユーザーやプロトコルがデータをバックアップするのに十分な時間を与えるための、安全性の高い「リアルタイム掲示板」としてのみ使用されます。すべての BLOB 履歴データはワークショップに永久に保持されます。

その理由は、ストレージの場合、年間 2.5TB の増加は問題ではありませんが、イーサリアムのノードに多大な負担をもたらすためです。発生する可能性がある信頼仮定については、実際には、データ保管当事者のうち 1 つだけが正直であり (N のうち 1)、システムは正常に動作でき、検証に参加してコンセンサスを実行するバリデーター・ノード・セットは必要ありません。リアルタイム (N/2/N) で履歴データのこの部分を保存します。

では、サードパーティにこれらのデータの保存を促すインセンティブはあるのでしょうか?著者は今のところインセンティブ制度の開始を見つけていませんが、Vitalik 自身がいくつかの可能なデータ保存方法を提案しています。

  1. アプリケーション固有のプロトコル (ロールアップなど)。アプリケーションに関連する履歴データを保存するようノードに要求することができますが、履歴データが失われると、アプリケーションのこの部分にリスクが生じるため、ストレージを実行する動機が生じます。

  2. BitTorrent;

  3. イーサリアムのポータル ネットワークは、プロトコルへの軽量アクセスを提供するプラットフォームです。

  4. ブロックチェーン ブラウザ、API プロバイダー、またはその他のデータ サービス プロバイダー。

  5. データ分析に携わる個人の愛好家または学者。

  6. The Graph などのサードパーティのインデックス作成プロトコル。

画像ソース

画像ソース

Proto-Danksharding では、新しいトランザクション形式によりブロックが実際に大きくなり、ロールアップでは大量のデータも蓄積され、データの可用性を確保するためにノードがダウンロードする必要があると述べました。

DAS の考え方は、データを N ブロックに分割し、各ノードが K ブロックをランダムにダウンロードできれば、すべてのデータをダウンロードせずにすべてのデータが利用可能かどうかを検証でき、ノードの負担を大幅に軽減できるというものです。 。しかし、データのブロックが失われた場合はどうなるでしょうか? K 個のブロックをランダムにダウンロードするだけでは、ブロックの欠落を見つけることは困難です。

DASを実現するために、イレージャーコーディング(Erasurecoding)技術が導入されている。イレイジャー コードは、コーディング エラーに強いテクノロジです。基本原理は、データをセグメント化し、特定のチェックサムを追加し、各データ セグメント間に関連付けを行うことです。一部のデータ セグメントが失われた場合でも、完全なデータはアルゴリズムを通じて計算できます。

消去コードの冗長率が 50% に設定されている場合、ブロック データの 50% のみが利用可能であり、ネットワーク内の誰でもすべてのブロック データを再構築してブロードキャストできることを意味します。攻撃者がノードを欺きたい場合は、ブロックの 50% 以上を隠さなければなりませんが、複数のランダムなサンプルが取得される限り、これはほとんど起こりません。 (たとえば、ブロックのランダムなサンプルが 30 個あると仮定すると、これらのブロックのいずれかが攻撃者によって隠蔽される可能性は 2^(-30) です)…

ノードはすべてのデータをダウンロードするのではなく、消失コードに依存してデータを再構築するため、最初に消失コードが正しくエンコードされていることを確認する必要があります。そうしないと、当然ながら、間違ってエンコードされた消失コードでデータを再構築することはできません。

このようにして、KZG 多項式コミットメント (KZG Polynomial Commitments) がさらに導入されます。、多項式プロミスは、多項式を「表す」簡略化された形式であり、多項式のすべてのデータを含めることなく、特定の位置での多項式の値が指定された値と一致することを証明するために使用されます。 Danksharding では、KZG コミットメントを利用して消去コードの検証を実現しています。

すべてのデータを 1 つの KZG コミットメントに入れることができれば簡単ですが、この KZG コミットメントを構築すること、または一部のデータが利用できなくなったときにデータを再構築することは、どちらも膨大なリソースを必要とします。 (実際には、単一ブロックのデータを保証するには複数の KZG コミットメントが必要です)ノードの負担を軽減し、集中化を回避するために、Danksharding は KZG コミットメントをさらに分割し、2 次元の KZG コミットメント フレームワークを提案しています。

上記の問題を順番に解決すると、DAS に依存すると、ノードまたはライト クライアントは、すべてのデータが利用可能であることを確認するために K データ ブロックをランダムにダウンロードするだけで済み、ノードに過負荷がかかります。

(注: 特に、ダンクシャルディングで使用される消去コード アルゴリズムはリード ソロモン コードです。KZG コミットメントは、Kate、Zaverucha、および Goldberg によって公開された多項式コミットメント スキームです。ここでは詳しく説明しません。また、次の原理に興味がある読者は、アルゴリズムは自己拡張可能です。また、消去コードの正しさを保証するソリューションは Celestia で採用されている不正証明です)

ブロックの提案者と構築者の分離 (PBS)

現状では、PoW マイナーと PoS バリデーターはブロック構築者 (Builder) とブロック提案者 (Proposer) の両方です。PoS では、バリデーターは MEV の利益を利用してより多くの新しいバリデーターシートを取得できるため、MEV を実現する機会が増えます。さらに、大規模な検証プールは通常のバリデーターよりも MEV をキャプチャする能力が明らかに高いため、集中化に関する深刻な問題が発生します。したがって、PBS は、Builder と Proposer を分離することを提案しました。

PBS の考え方は次のとおりです。ビルダーはソートされたトランザクションのリストを作成し、提案者に入札を送信します。提案者は最高入札額の取引リストを承諾するだけでよく、オークションの落札者が決まるまでは取引リストの具体的な内容を知ることはできない。

この分離とオークションのメカニズムにより、ゲームとビルダーの間に「関与」が生じます。結局のところ、各ビルダーは MEV をキャプチャする異なる能力を持っており、ビルダーは潜在的な MEV 利益とオークション入札との関係を比較検討する必要があります。実際のこれにより、MEV の純利益が減少します。最終ビルダーによって提出されたブロックが正常に製造できるかどうかに関係なく、入札料金は提案者に支払われる必要があります。このように、Proposer (広義には、一定期間内にランダムに再選択されるすべてのバリデータセット) は、MEV の収益の一部を共有することに相当し、MEV の集中度が弱まります。

以上が MEV を解く上での PBS の利点について説明しましたが、PBS を導入する理由はもう 1 つあります。 Danksharding では、Builder の要件は、32MB データの KZG 証明を約 1 秒で計算すること (32 ~ 64 コアの CPU が必要)、および 64MB データを一定時間内に P2P 方式でブロードキャストすること (必要な条件) です。 2.5Gビット/秒の帯域幅。明らかに、検証者はそのような要件を満たすことができません。

画像ソース

画像ソース

昨年 10 月、Vitalik はデュアルスロット PBS スキームを提案しました (注: 各スロットは 12 秒で、ビーコン チェーンの時間単位です)。しかし、具体的な PBS スキームはまだ議論中です。

画像ソース

画像ソース

しかし、PBS には問題も伴います。建設業者がオークションに勝つために常に最高価格で入札する場合 (経済的損失を負担することも辞さない)、実際には彼には取引を検討する能力があり、特定の取引を選択的にオークションに含めないようにすることができます。ブロック。

画像ソース

まとめ

画像ソース

前述のデータ可用性サンプリング (DAS)、ブロック構築者と提案者の分離 (PBS)、および検閲抵抗リスト (crList) を組み合わせることで、完全なダンクシャーディングが得られます。「シャーディング」の概念が実際には軽視されていることがわかりました。シャーディングの名前は残っていますが、実際にはデータの可用性のサポートに重点が置かれています。

では、オリジナルのシャーディングに対する Danksharding の利点は何でしょうか?

(ダンクラッド自身がここでダンクシャルディングの 10 の利点を挙げていますが、詳しく説明するために 2 つを選択します)

元のシャードでは、個々のシャードごとに提案者と委員会がシャード内のトランザクション検証について投票し、すべての投票結果はビーコンチェーンの提案者によって収集されますが、この作業は単一のスロット内で完了するのが困難です。 。 Danksharding には、ビーコン チェーン (一定期間内にランダムに再選択される汎用検証セット) に関する委員会のみが存在し、この委員会がビーコン チェーン ブロックとシャード データを検証します。これは、元の提案者と委員会の 64 グループを 1 つのグループに簡素化することに相当し、理論とエンジニアリング実装の両方の複雑さが大幅に軽減されます。

Danksharding のもう 1 つの利点は、イーサリアム メイン チェーンと zkRollup の間で同期呼び出しが可能であることです。上で述べたように、元のシャードでは、ビーコン チェーンはすべてのシャードの投票結果を収集する必要があるため、確認に遅れが生じます。 Danksharding では、ビーコン チェーンのブロックとシャード データはビーコン チェーンの委員会によって統一的に認証されます。つまり、同じビーコン ブロック内のトランザクションは即座にシャード データにアクセスできます。これにより、さらなる構成可能性の想像力が刺激されます。たとえば、StarkWare が提案する分散型 AMM (dAMM) は、流動性の断片化の問題を解決するために、L1/L2 全体で流動性をスワップまたは共有することができます。

Danksharding の実装後、イーサリアムは Rollup の統合決済層およびデータ可用性層になります。

Closing Thoughts

上の図では、ダンクシャーディングについてまとめています。

要約すると、今後 2 ~ 3 年で、イーサリアムのロードマップの方向性は非常に明白になり、ロールアップ サービスを中心に展開することが大まかにわかります。その過程でロードマップが変更されるかどうかはまだ不明ですが、ダンクシャーディングは今後 18 ~ 24 か月以内に実装され、プロトダンクシャーディングは 6 ~ 9 か月以内に実装される予定です。しかし、少なくとも私たちは、ロールアップがイーサリアムの拡張基盤として一定の支配的な地位を占めていることを明らかにしました。

Vitalik によって提案された見通しに従って、ここではいくつかの予測的思考と推測も提案します。

  • 1 つは Cosmos に似たマルチチェーン エコロジーであり、将来的にはイーサリアム上でマルチ ロールアップ競争パターンが存在し、イーサリアムはセキュリティとデータの可用性の保証を提供することになります。

  • 第 2 に、クロス L1/ロールアップ インフラストラクチャは厳格な要求になります。クロスドメイン MEV は、前述の dAMM と同様に、より複雑なアービトラージの組み合わせをもたらし、より豊かな構成可能性をもたらします。

  • 元のリンク

参考文献:

https://consensys.net/blog/blockchain-explained/the-roadmap-to-serenity-2/

https://www.web3.university/article/ethereum-sharding-an-introduction-to-blockchain-sharding

https://ethereum-magicians.org/t/a-rollup-centric-ethereum-roadmap/4698

https://vitalik.ca/general/2021/12/06/endgame.htmlhttps://notes.ethereum.org/@vbuterin/proto_danksharding_faq

https://twitter.com/pseudotheos/status/1504457560396468231https://ethos.dev/beacon-chain/

https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance#How-does-proposerbuilder-separation-PBS-work

https://notes.ethereum.org/@fradamt/H1ZqdtrBF

https://cloud.tencent.com/developer/article/1829995

https://medium.com/coinmonks/builder-proposer-separation-for-ethereum-explained-884c8f45f8dd

https://dankradfeist.de/ethereum/2021/10/13/kate-polynomial-commitments-mandarin.html

https://members.delphidigital.io/reports/the-hitchhikers-guide-to-ethereum

https://vitalik.ca/general/2019/09/22/plonk.html

元のリンク

星球君的朋友们
作者文库