
原作者: ハキーン、W3.ヒッチハイカー
元の編集者: Evelyn、W3.Hitchhiker
1. イーサリアム M2SVPS のアップグレードロードマップ
The Merge
The Merge の段階では、POW コンセンサス メカニズムが POS に移行し、ビーコン チェーンが統合されます。理解を容易にするために、イーサリアムの構造を次の図に単純化します。
ここでは、まず断片化とは何かを定義します。簡単に理解すると、負荷を分散するためにデータベースを水平に分割するプロセスです。
POS への変換後: ブロック提案者とブロック検証者が分離され、POS ワークフローは次のようになります (上記の理解に従って)。
ロールアップでトランザクションを送信する
バリデーターはトランザクションをシャードブロックに追加します
ビーコン チェーンは新しいブロックを提案するバリデーターを選択します
残りのバリデーターはランダムな委員会を形成し、シャード上の提案を検証します。
ブロックの提案と提案の証明は 1 スロット (通常は 12 秒) 以内に完了する必要があります。 32 スロットごとにエポック サイクルが構成され、各エポックでバリデーターの順序が混乱し、委員会が再選されます。
合併後、イーサリアムはコンセンサス層を実装します提案者と構築者の分離 (PBS)。 Vitalik 氏は、すべてのブロックチェーンの最終目的は、集中的なブロック生成と分散的なブロック検証を実現することになると考えています。断片化されたイーサリアムのブロック データは非常に高密度であるため、データの可用性に対する高い要件により、ブロック生成の集中化が必要です。同時に、ブロックを検証し、データ可用性のサンプリングを実行できる分散型バリデーターのセットを維持する方法が必要です。
マイナーとブロック検証は分離されています。マイナーはブロックを構築し、バリデーターに送信します。バリデーターに入札して独自のブロックを選択し、その後、バリデーターが投票してブロックが有効かどうかを決定します。
フラグメンテーションは、P2P ネットワークでコンピューティング タスクとストレージ ワークロードを分散できるパーティショニング方法です。この処理方法の後、各ノードはネットワーク全体のトランザクション負荷を処理する責任を負いませんが、そのパーティションに関連するデータを維持するだけで済みます (または断片化)。情報は問題ありません。各シャードには、バリデータまたはノードの独自のネットワークがあります。
断片化セキュリティの問題: たとえば、ネットワーク全体に 10 のシャード チェーンがある場合、ネットワーク全体を破棄するにはコンピューティング パワーの 51% が必要ですが、単一のシャードを破棄するにはコンピューティング パワーの 5.1% のみが必要です。したがって、その後の改善には、51% の計算能力攻撃を効果的に防止できる SSF アルゴリズムが含まれています。によるとvitalik要約すると、SSF への移行は複数年にわたるロードマップであり、これまでに多くの作業が行われたとしても、それはイーサリアムが後に実装する大きな変更の 1 つであり、イーサリアムの PoS 証明メカニズムであるシャーディングよりもはるかに遅れています。 、および Verkle ツリーはその後完全に起動されます。
ビーコン チェーンは、乱数の生成、シャードへのノードの割り当て、単一シャードのスナップショットやその他のさまざまな機能のキャプチャ、シャード間の通信の完了、およびネットワーク同期の調整を担当します。
ビーコン チェーンの実行手順は次のとおりです。
ブロックプロデューサーは入札とともにブロックヘッダーにコミットします。
ビーコンチェーン上のブロック作成者(検証者)は、落札ブロックヘッダーを選択して入札し、ブロックパッケージャーが最終的にブロックボディを生成するかどうかに関係なく、無条件で落札手数料を受け取ります。
委員会 (バリデーターの中からランダムに選択) は、取得したブロック ヘッダーを確認するために投票します。
ブロックパッカーはブロック本体を開示する。
The Surge
このルートの主な目標は、ロールアップ中心の拡張を促進することです。サージとは、スケーリング ソリューションであるイーサリアム シャーディングの追加を指します。イーサリアム財団の主張: このソリューションにより、低ガス料金のレイヤー 2 ブロックチェーンがさらに可能になり、ロールアップまたはバンドルされたトランザクションのコストが削減され、ユーザーがイーサリアム ネットワークを保護するノードを操作しやすくなります。
この図は、次の簡略図でも理解できます。
zkrollup の動作原理を例にとると、zkrollup はシーケンサーとアグリゲーターに分かれており、シーケンサーはユーザー トランザクションをソートし、バッチにパッケージ化し、アグリゲーターに送信する役割を果たします。アグリゲータはトランザクションを実行し、前の状態のルートから事後の状態のルート(ポスト・ステート・ルート)を生成し、証明(プルーフ)を生成し、最終的に前状態のルート、事後状態のルート、トランザクション・データ、およびトランザクション・データを送信します。 L1 への証明 契約上の契約は証明が有効かどうかを検証する責任があり、トランザクション データは calldata に保存されます。 Zkrollup データの可用性により、誰でもチェーンに保存されたトランザクション データに基づいてアカウントのグローバル状態を復元できます。
ただし、calldata の使用は非常に高価なので、EIP-4844プロトコル(いつでも変更される可能性があります) トランザクション ブロックのサイズを 1 ~ 2MB に変更し、将来のロールアップとデータの断片化に備えた強固な基盤を築くことを提案します。現在、イーサリアムのブロックサイズは60KB~100KB程度ですが、EIP-4844を例にとると、ブロックサイズの制限は10~34倍まで拡大できます。ブロック形式は blob (データシャードとも呼ばれます) と呼ばれます。
The Scourge
現段階の Scourge はロードマップの補足であり、主に MEV の問題を解決するために使用されます。では、MEV とは何でしょうか?
MEV の正式名称は Miner Extractable Value / Maximal Extractable Value であり、この概念は 2016 年に初めて適用されました。仕事の証明マージマージプルーフ・オブ・ステークへの移行後は、バリデーターがこれらの役割を担当し、マイニングは適用されなくなります (ここで説明する値抽出方法はこの移行後も残るため、名前を変更する必要があります)。同じ基本的な意味を維持しながら継続性を確保するために同じ頭字語を使用し続けるため、現在は「抽出可能な最大値」がより包括的な代替手段として使用されています。
裁定取引スペースには次のものが含まれます。
保管スペースを圧縮することで、ガス料金の差額が得られます。
審判は先に進みます。mempool 上のトランザクションを広範に検索し、マシンはローカルで計算を実行して利益が得られるかどうかを確認し、利益がある場合は独自のアドレスで同じトランザクションを開始し、より高いガス料金を使用します。
清算ターゲットの検索: ボットはブロックチェーン データを最速で解析して清算できる借り手を決定し、最初に清算取引を送信して独自の清算手数料を徴収します。
サンドイッチ トランザクション: 検索者は、メモリプール内の DEX の大規模なトランザクションを監視します。たとえば、Uniswap で DAI を使用して 10,000 UNI を購入したい人がいます。このような大規模な取引は UNI / DAI ペアに大きな影響を与える可能性があり、DAI と比較して UNI の価格が大幅に上昇する可能性があります。サーチャーは、大口取引がUNI/DAIペアに与えるおおよその価格影響を計算し、大口取引の直前に最適な買い注文を実行し、UNIを低価格で購入し、大口取引の直後に売り注文を実行することができます。大量の注文により販売価格が高くなります。
MEV の欠点:
サンドイッチ トランザクションなどの一部の形式の MEV は、ユーザー エクスペリエンスを大幅に低下させる可能性があります。中間に陥ったユーザーは、スリッページが大きくなり、取引執行が低下する可能性があります。ネットワーク層では、一般にフロントランナーとガス オークションへの頻繁な参加 (2 人以上のフロントランナーが自分のトランザクションを次のブロックに含めるために、自分のトランザクションのガス料金を段階的に引き上げる場合) がネットワークの混雑と高額なガス料金を引き起こします。他の人は通常のトランザクションを実行しようとしています。ブロック内で起こることに加えて、MEV はブロック間でも悪影響を与える可能性があります。ブロックで利用可能な MEV が標準ブロック報酬を大幅に超える場合、マイナーはブロックを再マイニングして自分で MEV をキャプチャするよう動機付けられる可能性があり、ブロックチェーンの再編成とコンセンサスの不安定化につながる可能性があります。
MEV の大部分は、「シーカー」と呼ばれる独立したネットワーク参加者によって抽出されます。シーカーはブロックチェーン データに対して複雑なアルゴリズムを実行して、収益性の高い MEV の機会を検出します。また、これらの収益性の高い取引をネットワークに自動的に送信するボットもあります。イーサリアムにおける MEV の問題には、ネットワーク トランザクションを悪用するボットの使用が含まれており、混雑と高額な料金が発生しました。
The Verge
Vergeは「」を実装しますバークルの木「(一種の数学的証明)およびステートレス クライアント」。これらの技術アップグレードにより、ユーザーはマシンに大量のデータを保存せずにネットワークの検証者になることができます。これは、前述したロールアップの拡張に関する手順の 1 つでもあります。 zk ロールアップの単純な動作原理を通じて、アグリゲーターはプルーフを送信し、レイヤー 1 の検証コントラクトは、BLOB 内の KZG コミットメントと生成されたプルーフを検証するだけで済みます。すべてのトランザクションが含まれていることを確認します。ロールアップはプルーフを生成するためにいくつかのトランザクションを送信できるため、KZG を使用すると、すべてのトランザクションがプルーフを生成するために含まれることが保証されます。
The Verge は検証が非常に簡単であることを保証するもので、N バイトのデータをダウンロードし、基本的な計算を実行するだけで、ロールアップによって送信されたプルーフを検証できます。
この記事この記事。
The Purge
パージは、ハードドライブ上に ETH を保存するために必要なスペースの量を削減し、イーサリアム プロトコルを簡素化し、ノードに履歴を保存する必要をなくします。これにより、ネットワークの帯域幅が大幅に増加する可能性があります。
EIP-4444:
クライアントは、P2P 層で 1 年以上前のヘッダー、本文、受信者の提供を停止しなければなりません (MUST)。クライアントはこれらの履歴データをローカルでプルーニングできます。イーサリアムの歴史を保存することは基本であり、これを達成するにはさまざまな帯域外の方法があると思います。履歴データは、トレント マグネット リンクや IPFS などのネットワークを介してパッケージ化し、共有できます。さらに、Portal Network や The Graph などのシステムを使用して履歴データを取得することもできます。クライアントは履歴データのインポートとエクスポートを許可する必要があります。クライアントは、データをフェッチ/検証し、それらを自動的にインポートするスクリプトを提供できます。
The Splurge
このルートは主に、アカウント抽象化、EVM 最適化、乱数スキーム VDF などの部分的な最適化修正です。
ここで述べたアカウント抽象化 (Account Abstraction、AA) は、常に ZK システムのレイヤー 2 が最初に達成したい目標でした。では、アカウントの抽象化とは何でしょうか?アカウント抽象化を実装した後、スマート コントラクト アカウントは、「メタ トランザクション」メカニズム (これは EIP-4844 で提案されました) に依存せずにトランザクションを開始することもできます。
イーサリアムでは、アカウントは契約アカウントと外部アカウントに分かれています。現在、イーサリアムには 1 種類のトランザクションのみがあり、外部アドレスによって開始する必要があり、コントラクト アドレスでトランザクションをアクティブに開始することはできません。したがって、コントラクト自体の状態の変更は、外部アドレスによって開始されたトランザクションに依存する必要があり、それがマルチシグネチャ アカウント、通貨ミキサー、またはスマート コントラクトの構成変更であっても、それをトリガーする必要があります。少なくとも 1 つの外部アカウント。
イーサリアム上でどのようなアプリケーションを使用する場合でも、ユーザーはイーサリアムを保有する必要があります(イーサリアムの価格変動リスクを負う必要があります)。第二に、ユーザーは複雑な料金ロジック、ガソリン価格、ガス制限、トランザクションのブロックに対処する必要があります。これらの概念はユーザーにとって複雑すぎます。多くのブロックチェーンウォレットやアプリケーションは、製品の最適化を通じてユーザーエクスペリエンスを向上させようとしていますが、ほとんど効果がありません。
アカウント中心のソリューションの目標は、スマート コントラクト管理に基づいてユーザーのアカウントを作成することです。アカウント抽象化を実装する利点は次のとおりです。
現在の契約では ETH を保持し、すべての署名を含むトランザクションを直接送信できます。ユーザーは必ずしもトランザクションにガス料金を支払う必要はありません。すべてはプロジェクトによって異なります。
カスタム暗号化の実装により、将来的には署名にESCDA楕円曲線の使用が必須ではなくなり、将来的には携帯電話の指紋認証、顔認証、生体認証などの技術を署名手段として利用できるようになる。
これにより、イーサリアムと対話するユーザー エクスペリエンスが大幅に向上します。
2. イーサリアムのモジュール化
イーサリアム全体はモジュール化の傾向にあり、実行層はレイヤー2(arbitrum、zksync、starknet、polygon zkevmなど)を担当します。彼らは、L2 でユーザーのトランザクションを実行し、証明を提出する責任を負います。レイヤ 2 は一般に OP テクノロジー/ZK テクノロジーを使用します。理論的には、ZK テクノロジーの TPS は OP の TPS よりもはるかに高くなります。現在、多数のエコシステムが OP システム内にありますが、将来的には ZK テクノロジーの改善により、 、ますます多くのアプリケーションが ZK 部門に移行されます。このセクションでは、ロードマップの詳細な説明と補足を説明します。なぜ、どのようにロードマップを作成するのかを説明します。
現在、イーサリアムは実行層のみを分離しており、実際には他の層がまだ混在しています。 Celestia のビジョンでは、実行層は 2 つのことだけを行います: 単一のトランザクションの場合はトランザクションを実行して状態を変更し、同じトランザクションのバッチの場合はバッチの状態ルートを計算します。現在のイーサリアム実行層の作業の一部は、StarkNet、zkSync、Arbitrum、Optimism として知られる Rollup に割り当てられています。
現在、オプティミズム、ポリゴン、スタークネット、zksync など、それらはすべてモジュール化の道を模索しています。
Optimism は、bedrock / op スタックを提案し、polygon もデータ可用性レイヤーとしての Polygon avail を開発しており、チェーンの作成を簡素化し、バリデータ セットを共有するためにスーパーネットが使用されています。
決済層:メインチェーン上のRollupコントラクトにより、前述のpre-state root、post-state root、証明有効性(zkRollup)、不正証明(Optimistic Rollup)を検証するプロセスとして理解できます。
コンセンサス層: PoW、PoS、またはその他のコンセンサス アルゴリズムに関係なく、コンセンサス層は分散システム内の何かについてコンセンサスに達すること、つまり、状態遷移の妥当性についてコンセンサスに達することです (以前の状態は、計算後の状態 (ルート)。モジュール化の文脈では、決済層とコンセンサス層の意味は似ているため、決済層とコンセンサス層を統一する研究者もいます。
データ可用性レイヤー: トランザクション データがデータ可用性レイヤーに完全にアップロードされていることを確認し、検証ノードがこのレイヤーのデータを通じてすべての状態変更を再現できるようにします。
ここで区別する必要があるのは、データの可用性とデータ ストレージの違いです。
データの可用性は、データ ストレージとは明らかに異なります。前者は最新のブロック リリース時点でのデータの可用性に関係し、後者はデータを安全に保存し、必要なときに確実にアクセスできるようにすることに関係します。
1. 決済層の各種ロールアップ
決済層の観点から見ると、現在、ロールアップの焦点は ZK システムにあると考えられています。 ZK システムのロールアップによって ZK プルーフ システムのサイズ、ガス消費量、コストが改善され、再帰処理や並列処理と組み合わせると、TPS を大幅に拡張できます。それでは、ZK ロールアップから始めましょう。
イーサリアムの拡大の進展に伴い、ゼロ・ナレッジ・プルーフ(ZKP)テクノロジーは、拡大の戦いに終止符を打つと予想されるソリューションであるとVitalikは考えています。
ZKP の本質は、誰かが何かを知っているか、持っていることを証明することです。たとえば、鍵を取り出さなくても、ドアの鍵を持っていることを証明できます。アカウントのパスワードを入力せずに、また漏洩の危険を冒さずにアカウントのパスワードを知っていることを証明することは、個人のプライバシー、暗号化、ビジネス、さらには核軍縮にさえ影響を与えるテクノロジーです。ヤオの億万長者問題の修正版で理解を深めましょう: この問題では、アリスとボブという 2 人の億万長者について議論します。彼らは、実際の資産を明かさずにどちらが裕福であるかを知りたいと考えています。
アパートの家賃が月額 1,000 ドルであると仮定すると、賃貸候補者としての資格を得るには、少なくとも 1 か月の家賃の 40 倍を支払う必要があります。次に、私たち(入居者)は年収が 40,000 ドル以上であることを証明する必要があります。しかし、家主は私たちに抜け穴を見つけてほしくなかったので、具体的な家賃は公表しませんでした。彼の目的は、私たちが基準を満たしているかどうかをテストすることであり、答えは満たしているかどうかだけであり、具体的な賃料については責任を負いません。額。
現在、10,000 ドル刻みで 10 ~ 100,000 ドルとマークされたボックスが 10 個あります。それぞれにキーとスロットがあります。住宅所有者は箱を持った部屋に入り、9本の鍵を破壊し、4万ドルの箱と書かれた鍵を手に取りました。
このテナントの年収は 75,000 米ドルに達し、特定の資金を特定することなく、銀行代理店が資産証明書類の発行を監督しており、この書類の本質は、銀行の資産明細書が請求書類を検証できるということです。次に、そのファイルを 10k から 70k までの範囲のビンにドロップします。次に、住宅所有者が 40k キーを使用して箱を開け、中にある検証可能な請求書類を見ると、テナントが基準を満たしていると判断されます。
関係するポイントには、宣言者 (銀行) が資産適合証明書を発行し、検証者 (住宅所有者) がキーを介してテナントが適格であるかどうかを検証することが含まれます。検証結果の選択肢は適格か不適格の 2 つだけであり、テナントに資産額の特定を要求するものではなく、要求することもできないことを再度強調します。
次の図を理解するために引き続き使用できます。トランザクションはレイヤー 2 で実行され、トランザクションはシャードで送信されます。通常、レイヤー 2 はロールアップの形式を採用します。つまり、複数のトランザクションがレイヤー 2 上のバッチにパッケージ化されてトランザクションを処理し、レイヤー 1 のロールアップ スマート コントラクトに送信されます。これには古い状態ルートと新しい状態ルートが含まれます。レイヤー 1 のコントラクトは 2 つの状態ルートが一致するかどうかを検証します。一致する場合は、メイン チェーン上の古い状態ルートが新しい状態ルートに置き換えられます。では、バッチ処理後に得られた状態ルートが正しいことをどのように検証するのでしょうか? オプティミスティック ロールアップと zk ロールアップはここから導出されます。不正防止と ZK テクノロジーを使用して、それぞれトランザクションを確認し、状態ルートを検証します。
ここでのレイヤ2(ロールアップ)は、上の例で言えば申告者(銀行)に相当し、その梱包作業がこの申告作業となり、具体的な金額については明言せず、基準を満たしているかどうかを確認するものである。パッケージ化されてレイヤー 1 に送信されるのは、この請求可能な宣言文書です。新旧確認の根本は、住宅所有者が期待する入居者の経済力が基準を満たしているかどうかを鍵を使って確認することにある。国家ルート検証の問題は、銀行が提出する声明文をどのように作成すれば問題が信頼できるものになるかということである。
不正行為を証明する楽観的ロールアップに基づいて、メイン チェーンのロールアップ コントラクトは、ロールアップの内部状態ルート変更の完全な記録と、各バッチ (状態ルート変更をトリガーする) のハッシュ値を記録します。バッチに対応する新しい状態ルートが間違っていることに誰かが気づいた場合、そのバッチによって生成された新しい状態ルートが間違っているという証拠をメインチェーンに投稿できます。コントラクトは証明を検証し、検証に合格すると、バッチ処理後のすべてのバッチ処理トランザクションがロールバックされます。
ここでの検証方法は、宣言者(銀行)が検証可能な資産申告書類を提出し、その後、すべての資産書類をチェーン上に公開し、データもチェーン上に公開され、他の挑戦者がオリジナルに基づいて計算を行うことに相当します。資産書類に誤りや偽造がないかどうかを検証できるデータを確認し、問題があれば異議を申し立て、異議申し立てが成功した場合は銀行に請求します。ここで最も重要な問題は、挑戦者がデータを収集し、文書の信頼性を検証する時間を確保することです。
Zero Knowledge Proof (ZKP) テクノロジーを使用したロールアップの場合、各バッチには ZK-SNARK と呼ばれる暗号証明が含まれています。銀行は暗号証明技術を利用して資産申告書類を生成します。このように、挑戦者のために時間を確保する必要がないので、挑戦者の役割は存在しません。
2. 現在の ZK システム ロールアップは期待どおりではありません
現在、polygon シリーズの hermez がリリースされ、zksync dev メインネットと starknet メインネットも起動されています。しかし、彼らのトランザクション速度は私たちの理論からはほど遠いようで、特にスタークネットユーザーはメインネットの速度が驚くほど遅いことをはっきりと認識できます。その理由は、ゼロ知識証明技術で証明を生成するのは依然として非常に難しく、コストが依然として高く、イーサリアムの互換性とzkevmのパフォーマンスのバランスを取る必要があるためです。 Polygon チームも次のように認めています。」Polygon zkEVM のテストネット バージョンのスループットも限られており、最適化されたスケーリング マシンとしてはまだ完成には程遠いことを意味します。”
3. データ可用性レイヤー
イーサリアムの抽象的な実行手順は次のとおりです。
イーサリアムにおける分散化のプロセスでは、分散型バリデーターであるマージのロードマップでもそれを見ることができます。その中で最も重要なのは、クライアントの多様性を実現し、マシンの参入閾値を下げ、検証者の数を増やすことです。したがって、マシンが標準に達していない検証者がネットワークに参加したい場合は、ライト クライアントを使用できます。ライト ノードの動作原理は、隣接するフル ノードを通じてブロック ヘッダーを要求することです。ライト ノードのみブロックヘッダーをダウンロードして検証する必要があります。ライトノードが参加しない場合、すべてのトランザクションをフルノードで検証する必要があるため、フルノードはブロック内の各トランザクションをダウンロードして検証する必要がありますが、同時にトランザクション量が増加すると、フルノードはノード ネットワークは大規模であるため、徐々に高性能で集中化する傾向があります。
しかし、ここでの問題は、悪意のあるフル ノードは欠落または無効なブロック ヘッダーを与える可能性があるが、ライト ノードには改ざんする方法がないということです。この問題を解決するには 2 つの方法があります。最初は、不正証明が使用されました。これには、信頼できるフル ノードが必要でした。ブロックの有効性を監視し、無効なブロックを見つけた後に不正証明を構築し、一定期間内に不正証明が受信されない場合は有効なブロックヘッダーと判断します。ただし、ここでは信頼できる完全なノードが明らかに必要です。つまり、信頼できる設定または正直な仮定が必要です。ただし、ブロックプロデューサーは一部のトランザクションを隠すことができ、正直なノードもブロックプロデューサーのデータに依存しているため、不正証明は明らかに無効です。データ自体が隠蔽されている場合、信頼されたノードは送信されたデータがすべてであると信じます。データが存在する場合、当然、不正行為の証拠は生成されません。
Mustarfa AI-Bassam と Vitalik は、共著の論文で新しいソリューションである消去コーディングを提案しています。データの可用性の問題を解決するには、消去コードが使用されます。たとえば、セレスティアとポリゴン アベイルでは、リードソロモン消去コードが使用されます。しかし、KZG のコミットメント/不正防止と組み合わせて、送信されたデータが完全なデータであることをどのように保証するか。
KZG コミットメント/不正証明では、ブロックプロデューサーがトランザクションを隠蔽することなく完全なデータを公開し、消去コードを通じてデータをエンコードし、サンプルデータの可用性を確認して、ライトノードがデータを正しく検証できるようにすることができます。
アグリゲータによってロールアップで送信されたデータは、calldata の形式でチェーン上に保存されます。これは、calldata データが他のストレージ領域よりも安価であるためです。
Calldata cost in gas = Transaction size × 16 gas per byte
チェーン上のストレージは非常に高価であり、この部分がロールアップのコストの 80% ~ 95% を占めるため、各トランザクションの主なコストは呼び出しデータのコストです。
この問題のため、私たちは、ブロック容量を拡張し、チェーンに送信するために必要なガス料金を削減する、EIP-4844 の新しいトランザクション形式 BLOB を提案しました。
4. データ可用性レイヤーのオンチェーンとオフチェーン
では、チェーン上の高価なデータの問題を解決するにはどうすればよいでしょうか?いくつかの方法があります。
1 つ目は、L1 にアップロードされる calldata データのサイズを圧縮することであり、これに関しては多くの最適化が行われています。
2つ目は、チェーン上にデータを保存するコストを削減し、より大きなデータ可用性スペースを備えたイーサリアムのプロトダンクシャーディングとダンクシャーディングによるロールアップ用の「ビッグブロック」を提供し、消去コードとKZGコミットメントを使用してライトノードの問題を解決することです。 。 EIP-4844 など。
3 番目は、データの可用性をチェーンから外すことです。この部分の一般的なソリューションには、celestia/polygon avail などが含まれます。
データの可用性が保存される場所によって、次の図に分割されます。
Validium のソリューション: データの可用性をオフチェーンに置くと、これらのトランザクション データは集中管理されたオペレーターによって維持され、ユーザーは信頼できる設定が必要になりますが、コストは非常に低くなりますが、同時にセキュリティはほとんどありません。その後、starkex と arbitrum nova の両方が、トランザクション データのストレージを担当する DAC を設定することを提案しました。 DAC メンバーは法的管轄範囲内の著名な個人または組織であり、彼らが共謀したり悪事を働いたりしないことが信頼の前提となっています。
Zkporter は、ガーディアン (zksync トークン所有者) に対し、データの可用性を維持することを誓約することを提案しており、データの可用性障害が発生した場合、誓約した資金は没収されます。 Volition は、オンチェーン/オフチェーンのデータ可用性をユーザーが選択し、ニーズに応じてセキュリティとコストのどちらかを選択します。
この時、セレスティアとポリゴンアベイルが登場しました。 Validium にオフチェーン データの可用性の要件があり、分散化の度合いが低く、クロスチェーン ブリッジと同様の秘密キー攻撃につながることが懸念される場合は、分散化された汎用 DA ソリューションでこの問題を解決できます。 Celestia と Polygon avail は、別のチェーンになることでオフチェーン DA ソリューションの有効性を提供します。しかし、別チェーンにすることでセキュリティは向上しますが、その分コストも高くなります。
Rollup の拡張には実際には 2 つの部分があり、1 つはアグリゲーターの実行速度であり、もう 1 つはデータ可用性レイヤーの協力が必要です。現在、アグリゲーターは集中サーバーによって実行され、トランザクションの実行速度が到達できると仮定しています。度合いが無限である場合、主なスケーリングのジレンマは、基礎となるデータ可用性ソリューションのデータ スループットの影響を受けることです。ロールアップのトランザクション スループットを最大化する場合、データ可用性ソリューションのデータ スペース スループットを最大化する方法が重要です。
最初に戻り、KZG コミットメントまたは不正証明を使用してデータの整合性を確保し、消去コードを通じてトランザクション データを拡張して、ライト ノードがデータの可用性をサンプリングできるようにして、ライト ノードがデータを正しく検証できることをさらに保証します。
また、KZG のコミットメントはデータの整合性を確保するためにどのように機能するのか、と尋ねることもできます。もしかしたらちょっとした答えになるかもしれません:
KZG Promise: 特定の位置における多項式の値が、指定された値と一致することを証明します。
KZG コミットメントは、特定のメッセージを与えずにメッセージを検証できる一種の多項式コミットメントにすぎません。おおよそのプロセスは次のとおりです。
データをイレイジャーコーディングにより多項式に変換し、展開します。 KZG を使用すると、拡張機能と元のデータが有効であることが保証されます。次に、拡張機能を使用してデータを再構築し、最後にデータの可用性サンプリングを実行します。
コミッターはコミットメントを生成し、それをメッセージにバインドします。
バインドされたメッセージを検証者に送信します。ここでの通信スキームはプルーフ サイズのサイズに関連します。
Verifier (検証者)、複数の値を有限体に持ち込んで、それがまだ等しいかどうかを検証します (これがユーザビリティ サンプリングのプロセスです)。基本原則は、検証の回数が多いほど、一致する確率が高くなるということです。正しい。
Celestia では、バリデーターがブロック全体をダウンロードする必要があり、今日のダンクシャーディングではデータ可用性サンプリング技術が利用されています。
ブロックは部分的に利用可能なため、ブロックを再構築するときはいつでも同期を確保する必要があります。実際にブロックが部分的に利用可能な場合、ノードは相互に通信してブロックを結合します。
KZG Promise とデータ詐欺の証拠の比較:
KZG は拡張とデータが正しいことを保証することを約束し、不正行為の証明には監視のための第三者が導入されていることがわかります。最も明らかな違いは、不正行為の証明には、不正行為を報告する前に観察者に応答するための時間間隔が必要であることです。このとき、ネットワーク全体が不正行為の証明をタイムリーに受信できるように、ノードを直接同期する必要があります。 KZG は、数学的手法を使用して待ち時間なしでデータの正確性を保証する不正証明よりも大幅に高速です。
データとその拡張子を正当化できます。ただし、1 次元の KZG コミットメントではより多くのリソースを消費する必要があるため、イーサリアムは 2 次元の KZG コミットメントを選択します。
たとえば、100 行 × 100 列、つまり 100,00 株 (シェア) です。しかし、すべてのサンプリングが 1 万分の 1 であることを保証するものではありません。次に、4 倍の拡大ということは、全体のシェアの少なくとも 1/4 が使用不可でなければならないことを意味し、使用不可のシェアを引くことができます。これは、回復できないため、実際には使用不可であることを意味します。 1/4が手に入らない場合にのみ回復でき、間違いを見つけるのに非常に有効なので、1回引く確率は約1/4です。 10 回、15 回以上ポンピングすると、99% の信頼性保証に達する可能性があります。今度は 15 ~ 20 回の範囲で選択します。
5、EIP-4844(Proto-Danksharding)
プロトダンクシャーディングの実装では、すべてのバリデーターとユーザーが完全なデータの可用性を直接検証する必要があります。
Proto-danksharding によって導入された主な機能は、BLOB 搬送トランザクションと呼ばれる新しいトランザクション タイプです。 BLOB を使用したトランザクションは通常のトランザクションと似ていますが、BLOB と呼ばれる追加のデータも運ぶ点が異なります。 BLOB は非常に大きく (~125 KB)、同じ量のデータを呼び出すよりもはるかに安価です。ただし、これらの BLOB には EVM からアクセスできません (BLOB に対してのみアクセス可能です)。また、BLOB は実行層ではなくコンセンサス層 (ビーコン チェーン) によって保存されます。実際、これはデータ シャーディングの概念の段階的な形成の始まりです。
バリデーターとクライアントは依然として完全な BLOB コンテンツをダウンロードする必要があるため、proto-danksharding のデータ帯域幅の目標は、ソケットごとに完全な 16 MB ではなく 1 MB です。ただし、これらの数字は既存のイーサリアムトランザクションのガス使用量と競合しないため、依然として大幅なスケーラビリティの向上が見られます。
フルシャーディングの実装 (データ可用性サンプリングなどを使用) は複雑なタスクであり、プロトダンクシャーディング後も引き続き複雑なタスクですが、この複雑さはコンセンサス層に含まれています。プロトダンクシャーディングが展開されると、完全なシャーディングへの移行を完了するために、エグゼクティブ層のクライアント チーム、ロールアップ開発者、およびユーザーがそれ以上の作業を行う必要はありません。また、プロトダンクシャーディングは BLOB データを呼び出しデータから分離するため、クライアントはより短い時間で BLOB データを簡単に保存できるようになります。
すべての作業は、クライアント チーム、ユーザー、ロールアップ開発者によって追加の作業が実行されることなく、コンセンサス レイヤーによって実行されることに注目してください。
EIP-4488 と proto-danksharding の両方により、長期的な最大使用量はソケットあたり約 1 MB (12 秒) になります。これは年間約 2.5 TB に相当し、現在イーサリアムが必要とする成長率をはるかに上回っています。
EIP-4488 の場合、これを修正するには履歴の有効期限の提案が必要です。EIP-4444(ロードマップのセクションで説明されています)、クライアントは特定の期間を超えて履歴を保存する必要がなくなりました。
6. データの断片化
ここでは、イーサリアムの拡張において皆さんが議論している問題について、シャオバイの視点から可能な限り解説していきます。そこで、シャーディングに戻り、シャーディングの一方的な概念をもう一度強調します。簡単に理解すると、負荷を分散するためにデータベースを水平に分割するプロセスです。
ここで、データ シャーディングに関する非常に重要な問題は、PBS (ロードマップのマージで述べたように、提案者がブロック ビルダーから分離されている) では、シャーディングでは各ノード グループが処理のみを行うことです。このシャード内のトランザクションは比較的独立しています。では、AB と AB の 2 人のユーザーが異なるシャードにいて、相互に資金を転送するにはどうすればよいでしょうか?次に、優れたクロスチップ通信機能が必要になります。
従来の方法では、データ可用性レイヤーを分割し、それぞれに独立した提案者と委員会を持たせていました。一連の検証者では、各検証者が順番にフラグメントのデータを検証し、検証のためにすべてのデータをダウンロードします。
弱点は次のとおりです。
スロット内でバリデーターを確実に同期するには、厳密な同期テクノロジーが必要です。
バリデーターはすべての委員会の投票を収集する必要があり、ここで遅れが生じます。
そして検証者はデータを完全にダウンロードするという大きなプレッシャーにさらされています。
2 番目のアプローチは、完全なデータ検証を省略し、代わりにデータ可用性サンプリング (The Surge で後に実装されました) を使用することです。ここでは 2 つのランダム サンプリング方法に分けられます。1) ブロック ランダム サンプリング、データ スライスの一部をサンプリングし、検証に合格した場合、検証者が署名します。しかし、ここでの問題は、トランザクションが失われる場合があるということです。 2) 消去コードを通じてデータを多項式に再解釈し、特定の条件下でデータを復元できる多項式の特性を使用して、データの完全な可用性を保証します。
「断片化"重要なのは、バリデーターはすべてのデータをダウンロードする責任を負わないということです。これが、Proto-danksharding が"断片化された"(その名前にも関わらず、"シャードシャーディング"最初のレベルのタイトル
3. イーサリアムの将来のレイヤー 3
zksync や starknet など、イーサリアムの将来の拡張とみなされる ZK シリーズのレイヤー 2 はすべてレイヤー 3 の概念を提案しています。簡単に理解すると、レイヤー 2 のレイヤー 2 です。
イーサリアムの取引コストが高いため、イーサリアム (L3) が L2 の決済レイヤーになるようになっています。近い将来、取引コストの大幅な削減、DeFiツールのサポートの増加、L2によって提供される流動性の増加により、エンドユーザーはほとんどの活動をL2で行うようになり、イーサリアムが徐々に主流になると考えられています。決済層。
L2 は、トランザクションごとのガスコストを削減し、トランザクションレートを高めることにより、スケーラビリティを向上させます。同時に、L2 は分散化、一般的なロジック、および構成可能性の利点を保持します。ただし、特定のアプリケーションには特定のカスタマイズが必要であり、新しい独立したレイヤーである L3! の方が適切な場合があります。
L2 が L1 に関連付けられているのと同様に、L3 は L2 に関連付けられています。 L2 が検証者 (Verifier) スマート コントラクトをサポートできる限り、L3 は有効性証明を使用して達成できます。 StarkNet のように、L2 も L1 に送信された妥当性証明を使用する場合、これは非常にエレガントな再帰構造になり、L2 証明の圧縮利点が L3 証明の圧縮利点と掛け合わされます。理論的には、各レイヤーがたとえば 1,000 倍のコスト削減を達成した場合、L1 のセキュリティを維持しながら、L3 は L1 の 1,000,000 倍になる可能性があります。これは、starknet が誇る再帰的証明の実際の使用例でもあります。
ここでは「データ可用性層のオンチェーンとオフチェーン」の知識の一部が必要です。レイヤ 3 全体には次のものが含まれます。
ロールアップ (オンチェーン データの可用性)、検証 (オフチェーン データの可用性)。 2 つは異なるアプリケーション要件に対応します。価格とデータに敏感な Web2 企業は、validium を使用してデータをオフチェーンに置くことができ、これによりチェーン上のガスコストが大幅に削減され、プライバシーを確保するためにユーザー データを開示できないため、企業はデータを独自に制御できます。カスタム データ形式でも、以前の企業のデータ ビジネス モデルは引き続きスムーズに実行できます。
L2 は拡張機能用、L3 はプライバシーなどのカスタム機能用です。
このビジョンでは、「二次的なスケーラビリティ」を提供する試みはありません。代わりに、このスタックにはアプリケーションのスケーリングを支援するレイヤーがあり、さまざまなユースケースのカスタマイズされた機能要件に従ってレイヤーが分離されます。
L2 は一般的な拡張子用で、L3 はカスタム拡張子用です。
カスタム拡張機能は、計算に EVM 以外のものを使用する特殊なアプリケーション、特定のアプリケーションのデータ形式に合わせてデータ圧縮が最適化されたロールアップ (「データ」を「証明」から分離し、証明を完全に置き換えるなど) など、さまざまな形式で提供される場合があります。ブロックごとに 1 つの SNARK) など。
L2 はトラストレス拡張 (ロールアップ) に使用され、L3 は弱い信頼拡張 (バリジウム) に使用されます。
Validium は、SNARK を使用して計算を検証するシステムですが、データの可用性は信頼できる第三者または委員会に委ねられています。私の意見では、Validium は著しく過小評価されています。特に、多くの「エンタープライズ ブロックチェーン」アプリケーションは、実際には、Validium 証明者を実行し、ハッシュを定期的にチェーンに送信する集中サーバーによって最適に機能する可能性があります。 Validium はロールアップよりも安全性が劣りますが、はるかに安価です。
dApp 開発者にとって、インフラストラクチャにはいくつかのオプションがあります。
ロールアップを自分で開発する (ZK ロールアップまたはオプティミスティック ロールアップ)
イーサリアムの生態(ユーザー)やセキュリティを継承できるのがメリットですが、dAppチームにとってRollupの開発コストは明らかに高すぎます。
コスモス、ポルカドット、アバランチを選択してください
開発コストは低くなりますが(たとえば、dydx は Cosmos を選択しました)、イーサリアムのエコロジー (ユーザー) とセキュリティは失われます。
レイヤー 1 ブロックチェーンを自分で開発する
開発コストとそれに伴う困難は高くなりますが、高度な制御が可能です。
3 つのケースを比較してみましょう。
難易度/コスト: Alt-layer 1 > ロールアップ > コスモス
セキュリティ: ロールアップ > コスモス > Alt-layer 1
エコロジー/ユーザー: ロールアップ > コスモス > 代替レイヤー 1
コントロール: Alt キーを押しながらレイヤー 1 > コスモス > ロールアップ
最初のレベルのタイトル
4. レイヤ2の今後の展開
イーサリアムはアカウントモデルに基づいて設計されているため、すべてのユーザーがステートツリー全体に存在し並列処理ができないため、イーサリアム自体の制約により実行操作を剥ぎ取り、複数のロールアップトランザクションを1つにまとめる必要があります。決済層。現在、すべての問題はレイヤー 2 のスループットの向上に焦点を当てています。レイヤ 3 によってトランザクションのスループットが向上するだけでなく、レイヤ 2 での並列処理によってネットワーク全体のスループットも大幅に向上します。
Starknet も並列化の問題を積極的に検討しており、アルゴリズムがまだ足かせであることが証明されていますが、将来的には抵抗になるものではないと予想されています。潜在的なボトルネックには次のものがあります。
ソーター TX は以下を処理します。一部のソーター ジョブは本質的にシリアルであるようです。
帯域幅:複数のシーケンサー間の相互接続は制限されます。
L2 状態のサイズ
Starknet コミュニティでは、メンバーからも次のような声が上がりました。aptosでの並列処理最初のレベルのタイトル
V. まとめ
イーサリアムは、「グローバル」決済層というビジョンに向けて、実行層を取り除いています。現時点ではイーサリアム全体の進歩は遅いですが、それは全体のサイズが大きすぎるためであり、各更新には多くの利害とトレードオフが含まれます。しかし、イーサリアムが大きな変化を遂げていることは否定できず、イーサリアムのチェーン上での多くの活動、経済メカニズムの改善、イーサリアム2.0のスケーラビリティが期待されています。ますます多くの国がイーサリアムノードを導入すると考えられています。アルゼンチン首都政府、2023年にイーサリアム検証ノードの導入を計画元のリンク