Vitalikは、イーサリアムにより迅速な取引確認時間を提供するために、エポックとスロットのサポートをしています。

OdailyNews
2024-07-01 13:16:41
コレクション
epoch-and-slotアーキテクチャは明らかに正解ですが、アーキテクチャとスロットの方案はまだ探求の余地があります。

作者 : Vitalik

编译 :南枳,Odaily星球日报

良いブロックチェーンユーザーエクスペリエンスの重要な属性の一つは迅速な取引確認時間です。現在、イーサリアムは5年前と比べて大きな改善を遂げています。EIP-1559とPoS(The Merge)への移行による安定したブロック時間のおかげで、L1で送信された取引は通常5〜20秒以内に確認され大体クレジットカード決済の体験に匹敵します。しかし、ユーザーエクスペリエンスをさらに改善することは価値があり、特定のアプリケーションでは数百ミリ秒、あるいはそれ以下の遅延を要求することさえあります。この記事では、イーサリアムの取引確認時間を改善するためのいくつかの実用的なオプションを探ります

既存のアイデアと技術の概要

単一スロットの最終性

現在、イーサリアムのGasperコンセンサスは単一のスロット(Slot)とエポック(Epoch)の構造を使用しています。12秒ごとに1つのスロットがあり、一部のバリデーターがチェーンのヘッダーに投票し、32スロット(6.4分)の間にすべてのバリデーターが1回投票する機会があります。これらの投票は、PBFTに類似したコンセンサスアルゴリズムのメッセージとして再解釈され、2つのエポック(12.8分)後に「最終性」と呼ばれる非常に強い経済的保証が与えられます。

過去数年、私たちは現在のアプローチに対してますます不満を抱いています。主な理由は2つあります。まず、この方法は非常に複雑で、スロット対スロットの投票メカニズムとエポック対エポックの最終性メカニズムの間に多くの相互作用エラーが存在します。次に、12.8分は長すぎて、誰もそんなに待ちたくありません。

単一スロットの最終性(Single Slot Finality、SSF)は、Tendermintコンセンサスに類似したメカニズムによってこの構造を置き換え、ブロックNがブロックN+1が生成される前に最終的に確定されます。Tendermintとの主な違いは、「非アクティブ漏れ(inactivity leak)」メカニズムを保持していることで、これによりチェーンは1/3以上のバリデーターがオフラインであっても運営を続け、復旧することができます。

(注:inactivity leakはPoSにおけるメカニズムで、長期間非アクティブなバリデーターを罰することを目的としており、一度非アクティブと見なされると、その質権を没収され続けます。)

Tendermintは効率的かつ安全なビザンチン耐障害性コンセンサスアルゴリズムであり、迅速な取引確認を可能にし、部分的なノードが悪意を持っているかオフラインであってもブロックチェーンシステムが正常に機能することを保証します。)

単一スロットの最終性の主な課題は、これにより各イーサリアムのステーキング者が12秒ごとに2つのメッセージを発信する必要があり、チェーンにとって大きな負担となることです。この問題を緩和するためのいくつかの巧妙なアイデアがあり、最近のOrbit SSF提案が含まれています。これは「最終性」を大幅に加速させ、ユーザーエクスペリエンスを向上させますが、ユーザーが5〜20秒待つ必要があるという事実は変わりません。

(注:最終性と取引がブロックにパッケージ化されて確認されることは同じイベントではなく、取引が確認されていても最終性が実現されていない場合、フォークやロールバックが発生する可能性があります。)

Vitalikが指名したルートエポックとスロット:イーサリアムにより迅速な取引確認時間を提供

Rollupの事前確認

過去数年、イーサリアムはRollup中心のロードマップに従い、データの可用性やその他の機能をサポートするためにイーサリアムの基盤層(L1)を設計し、これらの機能はL2プロトコル(Rollups、Validiums、Plasmasなど)で利用でき、より大規模にユーザーにイーサリアムと同等のセキュリティを提供できるようにしています。

これにより、イーサリアムエコシステム内で関心の焦点が分離されました:イーサリアムL1は検閲に対する耐性、信頼性、安定性に焦点を当て、基盤層のコア機能を維持・改善することに注力し、L2は異なる文化や技術を通じてユーザーにより直接的に接触することに焦点を当てています。しかし、この道を進むと、避けられない問題が浮上します:L2はユーザーに5〜20秒よりも速い確認を提供したいと考えています。

これまでのところ、少なくとも理論的には、自分自身の「分散型ソーター」ネットワークを作成することはL2の責任です。小さなグループのバリデーターが数百ミリ秒ごとにブロックに署名し、これらのブロックの背後に彼らのステーキング資産を投入することができます。最終的に、これらのL2ブロックのヘッダーはL1に公開されます。

Vitalikが指名したルートエポックとスロット:イーサリアムにより迅速な取引確認時間を提供

しかし、L2のバリデーター集団は「詐欺」を行うことができます:彼らは最初にブロックB1に署名し、その後に対立するブロックB2に署名し、B1の前にチェーンに提出することができます。しかし、もし彼らがそうした場合、彼らは検証され、ステーキング資産を失うことになります。実際、私たちは中央集権的なバージョンの実際のケースを見てきましたが、一方でRollupは分散型ソーターネットワークの開発において進展が遅いです。すべてのL2に分散型ソーターを要求するのは不公平だと言えるかもしれません:私たちはRollupに新しいL1を作成するのとほぼ同じ作業を要求しています。したがって、Justin DrakeはすべてのL2(およびL1)がイーサリアム全体で共有される事前確認メカニズムを利用できる方法を推進しています:基盤事前確認。

基盤事前確認

基盤事前確認(Based preconfirmations)アプローチは、イーサリアム提案者(Ethereum proposers)がMEVに関連する高度に複雑な参加者であると仮定しています。事前確認に基づくアプローチは、これらの複雑な提案者が事前確認サービスを提供する責任を受け入れるようにインセンティブを与えることで、この複雑性を利用します。

Vitalikが指名したルートエポックとスロット:イーサリアムにより迅速な取引確認時間を提供

このアプローチの基本的な考え方は、ユーザーが追加料金を支払うことで、取引が次のブロックに含まれるという即時の保証と、その取引結果を実行する声明を提供できる標準化されたプロトコルを作成することです。提案者が任意のユーザーに対して行った約束に違反した場合、彼らは罰金を科せられる可能性があります。

前述のように、基盤事前確認はL1取引に保証を提供します。もしRollupsが「基盤」であれば、すべてのL2ブロックはL1取引であるため、同じメカニズムを使用して任意のL2に事前確認を提供できます。

(注:Ethereum proposersは手数料メカニズムを通じて、一連の取引をバンドルとしてまとめ、ブロックにパッケージ化することができ、取引の実行と順序を保証します。例えば、よく知られているクリンチを通じて、ある取引の前に購入し、その後に売却することを保証します。Vitalikがここで提案している方法は概念的に一致しており、この提案者が取引結果を事前にロックすることで実行を加速します。)

実際に何を見ているのか?

単一スロットの最終性を実現したと仮定します。私たちはOrbitに似た技術を使用して、各スロットに署名するバリデーターの数を減らしますが、32 ETHのステーキングの最低限度を減少させるという重要な目標を達成するためにあまり減らしません。スロット時間(slot time)は16秒に増加する可能性があり、その後、Rollup事前確認または基盤事前確認を使用して、ユーザーにより迅速な確認を提供します。最終的に私たちが得るものは:エポック-スロット構造です。

Vitalikが指名したルートエポックとスロット:イーサリアムにより迅速な取引確認時間を提供

Vitalikが指名したルートエポックとスロット:イーサリアムにより迅速な取引確認時間を提供

エポック-スロット構造が避けられないように見える深い哲学的理由があります:ある事柄に関して最大限の「経済的最終性」に合意するのに必要な時間よりも、ある事柄に関して大まかな合意に達するのに必要な時間は少ないです。

単純な理由の一つはノードの数です。超最適化されたBLS集約と今後登場するZK-STARKsのおかげで、古い線形の分散型/最終性時間/オーバーヘッドのトレードオフは今や穏やかに見えますが、以下の理由は無視できません:

  • 「近似合意」は少数のノードしか必要とせず、経済的最終性は大多数のノードを必要とします。

  • ノードの数がある規模を超えると、署名を収集するのにより多くの時間がかかります。

今日のイーサリアムでは、12秒のスロットは3つのサブスロットに分割されています:ブロックの発行と配布、証明、証明の集約。もし証明者の数が大幅に減少すれば、2つのサブスロットに減らし、8秒のスロット時間を使用することができます。もう一つ、より実際的な大きな要因はノードの「質」です。ノードの「質」がもう一つの大きな要因です。もし私たちが近似合意に達するために専門化されたノードのサブセットに依存できるなら(そして最終性を決定するために完全なバリデーター集を使用し続けるなら)、それを約2秒に減らすことができます。

したがって、私の見解では、エポック-スロット構造は明らかに正しいですが、すべてのエポック-スロット構造が平等ではなく、設計空間をより十分に探求することは価値があります。深く探求すべき方向は、Gasperのように密接に結びつけるのではなく、2つのメカニズムの間により強い関心の焦点の分離を持つことです。

L2はどうすべきか?

私の見解では、L2には現在3つの合理的な戦略があります:

  • 技術的にも精神的にも「基盤」であること。つまり、彼らはイーサリアム基盤層の技術的属性とその価値観(高度な分散化、検閲耐性など)を最適化します。最も単純な形では、これらのRollupを「ブランドシャーディング」と見なすことができますが、彼らは新しい仮想マシンの設計やその他の技術的改善においてより大きな野心を持つこともできます。

  • 「ブロックチェーンの足場を持つサーバー」となり、それを最大限に活用します。サーバーから始めて、サーバーがルールに従うことを保証するためにSTARKの有効性証明を追加し、ユーザーの退出または強制取引の権利を保証し、集団的選択の自由を通じて、大規模な退出を調整するか、ソーターの投票を変更することで、あなたは上に上がる大部分の利点を得ながら、サーバーの大部分の効率を保持しています。

    (注:足場は、プロジェクトの基本構造とコードフレームワークを自動生成するツールまたは方法を指し、開発者が迅速にコーディングを開始できるようにします。)

  • 妥協案:イーサリアムが追加の相互運用性とセキュリティを提供する100ノードを持つ迅速なチェーン。これは多くのL2プロジェクトの現在の実際のロードマップです。

特定のアプリケーション(例えばENS、キー管理、一部の支払いプロトコル)にとって、12秒のブロック時間は十分です。それに該当しないアプリケーションにとって、唯一の解決策はエポック-スロット構造です。3つのケースの中で、「エポック」はイーサリアムのSSFですが、スロットは上記の3つのケースで異なります:

  • イーサリアムネイティブのエポック-スロット構造

  • サーバー事前確認

  • 委員会事前確認

重要な問題は、私たちが第1のクラスでどれだけ良いことができるかです。特に、それが非常に良くなると感じる場合、第3のクラスの意味はそれほど大きくなくなります。すべての「基盤」ソリューションは、PlasmasやValidiumsのようなオフチェーンデータL2には適用できないため、第2のクラスは永遠に存在します。もしイーサリアムネイティブのエポック-スロット構造が1秒のスロット時間にまで低下できるなら、第3のクラスのスペースははるかに小さくなるでしょう。

今日、私たちはこれらの問題の最終的な答えからまだ遠く離れています。重要な問題は、ブロック提案者がどれほど複雑になるかであり、これは依然としてかなりの不確実性のある領域です。Orbit SSFのような設計は非常に新しいため、例えばOrbit SSFをエポック-スロットのエポックとして使用するような設計空間はまだ十分に探求する価値があります。私たちが持つ選択肢が多ければ多いほど、L1とL2のユーザーのためにより良いことができ、L2開発者の作業を簡素化できます。

ChainCatcherは、広大な読者の皆様に対し、ブロックチェーンを理性的に見るよう呼びかけ、リスク意識を向上させ、各種仮想トークンの発行や投機に注意することを提唱します。当サイト内の全てのコンテンツは市場情報や関係者の見解であり、何らかの投資助言として扱われるものではありません。万が一不適切な内容が含まれていた場合は「通報」することができます。私たちは迅速に対処いたします。
チェーンキャッチャー イノベーターとともにWeb3の世界を構築する