織り交ぜたスタック: 楽観的なロールアップ モジュール
星球君的朋友们
10-09 07:04
本文约4294字,阅读全文需要约17分钟
Interowned Stack を Cosmos SDK モジュールとして構築することで、Initia は Cosmos SDK の利点をすべて保持しながら、SDK を再利用して Optimistic ロールアップ用のスタックを構築します。

暗号通貨エコシステムは新たな現実に適応する必要があり、これが Initia の誕生です。

業界として、私たちは単一のステートマシンでは暗号通貨の目標に合わせて拡張できないという事実を受け入れなければなりません。許容可能なレベルの分散化を維持しながら、ユーザーとオペレーターのコストを低く抑えながらスループットを拡張することは、単一のアプローチで勝つのはほぼ不可能な戦いです。

現実には、純粋なモノリシックチェーンの成功は逆張りの見方になっています。今年の初めに、モジュラーチェーンとモノリシックチェーンの議論が注目を集めました。しかし最も重要なことは、議論がまったく行われていないということです。未来はどちらか一方ではなく、両方が融合したものです。 L1 で実行を拡張できるアプリケーション固有のロールアップのセットを備えた、高速でプログラム可能な L1。

Solana ネットワークと同様に、ハイブリッド (または私たちが「織り交ぜた」と呼びたい) アプローチの利点は明らかです。過去 6 か月にわたって、チームは独自のカスタム「ネットワーク拡張機能」の構築を開始し、それを Solana に実装することに成功しました。しかし、待ってください、Solana は自社のブランド全体を拡大するのが仕事ではないでしょうか?

ご存知のとおり、ロールアップは実行をスケーリングするだけではなく、主権についても重要であり、ビルダーが実行環境を完全に制御できるようになります。より高い TPS、より低いガス料金 (またはゼロガス)、TX の仕分けと処理の制御、ビジネスの経済スタック全体の所有権など。

ロールアップが避けられず、常に存在することは明らかです。

Initia の存在はこの命題に基づいて構築されています。その目的は、Minitia として知られる、エコロジカルな Interowned ロールアップを活発に開催することです。

未来はInterwownのものです

Initia は、Interowned の一貫したエクスペリエンスを設計することで、多様で強力かつユニークなアプリケーションを提供します。

これまでのところ、2 つのエコシステムが存在します。 1 つは相互接続されたブロックチェーンの世界 (Cosmos) 専用に構築されたもので、もう 1 つはロールアップに関する既存のベット (イーサリアム、現在は Solana) です。各アプローチはある程度の成功を収めていますが、失敗がないわけではありません。これらは、L1 の新しいモデルを構築する際に学ぶべき貴重な教訓となります。

Initia はこれら 2 つのエコシステムを接続し、相互接続された L2 ネットワークをサポートするように設計された L1 であり、Minitia ビルダーが成功するために必要なものをすべて備えていることを保証します。当初、Initia は自社の方針にこだわり、L2 がハブに正確に何を望んでいるのかを質問することで、混乱を招く中間点を避けました。

Initia ではロールアップは当たり前です。 Initia VIP を使用すると、L1 と L2 間の完全な経済的調整、明確な製品スイート、および Minitia が最初からオラクル、ブリッジ、流動性、相互運用性、ネイティブの安定性などを確保できるように特別に設計されたテクノロジーが実現します。 Interowned Stack を使用すると、チームは EVM、MoveVM、CosmWasm など、任意の VM を使用して Minitia を簡単にデプロイできます。

では、Initia にロールアップを実装するための最も重要なコンポーネントは何でしょうか? Interowned Stack - Cosmos SDK 用にゼロから構築された Optimistic ロールアップ フレームワーク。このフレームワークを詳しく見てみましょう。

織り交ぜられたスタック

Initia の Optimistic ロールアップ フレームワークは、OPHost、OPChild、OPinit ボットの 3 つのコンポーネントで構成されており、これら 3 つの部分がパズルのように組み合わされて全体を形成し、Minita をサポートします。

OPHost と OPChild は、スタックのコアを形成する Cosmos SDK モジュールであり、チェーン上に存在する部分です。 OPinit スタックは特定の VM スマート コントラクト レベルではなくチェーン レベルで実装されるため、ビルダーは複数の VM のサポートを構築でき、Minitia ビルダーに選択の自由が提供されます。

Initia では、ロールアップはチェーンに直接組み込まれた第一級の機能であり、実装を微調整してより良いエクスペリエンスを提供する柔軟性を可能にします。

OPHost モジュールは Initia (L1) に常駐します。 Initia のすべての minitia にインフラストラクチャ サービスを提供する責任を負います。その主なタスクは次のとおりです。

Optimistic ブリッジ (L1 と L2 の間) とその資産を管理します。

Minitia の出力提案の最終決定を監督します。

異議申し立て者と提案者が議論する訴訟を処理する。

一方、OPChild はすべての Minitia に存在し、すべてのロールアップのハートビートと同様に、OPChild は次の役割を果たします。

ロールアップ演算子を管理します。

L1 から受信したメッセージを実行します。

オラクル価格情報を更新します。

L1トークンの引き出し。

OPHost と OPChild は一緒になって各 Minitia の Optimistic ブリッジを形成します。 Initia 上の 1 つの OPHost は、複数の Minitia 上の複数の OPChild モジュールの L1 エンドポイントとして機能します。

ロールアップの場合、ネイティブ ブリッジの役割はメッセージ送信だけではなく、L1 上のロールアップ本部としても機能することに注意してください。 2 つの異なるコンセンサス システムは互いのステート マシンを認識しませんが、ロールアップのブリッジは、ロールアップの状態に対して検証して正確性を保証できるステート ルートまたは同様の出力を送信することにより、L1 上のロールアップの信頼できるソースとして機能します。これが、L1 が決済層と呼ばれることが多い理由です。

ここで、「OPHost と OPChild の間の接続は何ですか?」と考えているかもしれません。いいえ、OPinit ボットは、独立したステート マシンの物理リンクとしてのオフチェーン プロセスを持たない 2 つの異なるコンセンサス システムです。不可能です。

OPinit ボットは、Initia と Minitias 間の重要な操作を処理するオフチェーン プロセスです。エンフォーサーとチャレンジャーという 2 つの異なるロボットがあります。つまり、これら 2 つのロボットは共同で次のことを担当します。

トークン転送を実行します。

出力提案を Initia L1 に提出します。

データ可用性 (DA) のためにトランザクション バッチを Celestia に送信します。

オラクル価格フィードバックの更新を Minitias に転送します。

この記事の残りの部分では、Interowned Stack に特定の機能を実装する方法を詳しく説明します。これにより、すべてがどのように連携するかについてより明確なアイデアが得られるはずです。

楽観的な橋のトークンクロッシング

ロールアップの最も重要な側面の 1 つは、ロールアップが依存する L1 のセキュリティを継承することです。

通常、L1 とロールアップの間のネイティブ ブリッジは、2 間でアセットを転送する最も安全な方法です。これは、ネイティブ ブリッジを使用すると、追加の信頼前提が導入されず、関係する両方のチェーンの信頼のみが導入されるためです。

橋の渡り方がどのように行われるのかを詳しく説明する前に、無視すべきではない問題について触れておきましょう。

なぜIBCではないのでしょうか?

では、Interowned Stack 上のすべてのチェーンは Cosmos SDK を使用して構築されているのに、なぜネイティブ ブリッジは IBC プロトコルを使用できないのでしょうか?

IBC 転送は本質的に即時であるため、これはプロトコルの信頼性の前提と矛盾します。ある日、悪意のある Minitia オペレーターが目を覚まし、L2 に INIT 残高を転送し、Minitia 上のすべての INIT を L1 に引き出すトランザクションを悪意を持って挿入することを決定する可能性があります。こんなことは起こってほしくない、間違いは致命的だ

ただし、Optimistic Bridge を介した Initia への出金には 7 日間の遅延があり、その間、挑戦者は異議を申し立て、悪意があることが検出された場合は出金をキャンセルできます。

Initia では、引き続き Mintia と Initia L1 の間でシームレスなユーザー エクスペリエンス (アセットの移動) を確保したいと考えています。 L2 から L1 への高速転送を実現するために、Miniswap と呼ばれる安全なカスタム ソリューションを構築しました。詳細については、 (Minitswap - 数日ではなく数秒で L2 から L1 に資金を引き出す) を参照してください。

トークンデポジット(L1-L2)

Initia から Minitia へのトークンの入金はほぼ瞬時に行われます。デポジットの仕組みは次のとおりです。

1. ユーザーが Initia で入金トランザクションを送信すると、L1 でトークンがロックされ、OPHost モジュールから入金イベントがトリガーされます。

2. エグゼキューター OPinit ボットは、initial_token_deposit イベントを検出すると、常に Initia 上の新しいイベントをリッスンします。

2.a - エグゼキュータは、対応する FinalizeTokenDeposit メッセージを作成し、Minitia に送信します。

3. メッセージを受信した後、Minitia は L2 上で対応するトークンを生成し、ユーザーに送信します。

安全性を損なうことなく作業を遂行します!

トークン引き出し(L2-L1)

トークンの引き出しは少し複雑で、L1 から L2 への入金は簡単ですが、「Minitia は常に L1 を信頼できる」という前提は他の場合には当てはまりません。

その理由は次のとおりです。Initia は経済的利害関係を持つ分散型バリデーターのグループによって保護されていますが、Minitia は通常、経済的利害関係を持たない単一または小規模のオペレーター グループによって運営されています。したがって、Minitia が L1 への撤退を開始するときは、悪意のある動作をしていないことを証明する必要があります。

退会プロセスは次のとおりです。

ユーザーが Minitia で出金トランザクションを送信すると、OPChild モジュールがトークンを破棄し、initial_token_withdrawal イベントを開始します。

エグゼキューターは L2 上のすべてのブロックをリッスンし、イベントを受信して引き出しリクエストを保存しますが、それらをすぐには転送せず、ボットはチェックポイントが送信されるのを待ちます。

コミット チェックポイントに到達すると、エグゼキュータは次のことを行います。

3.a - 間隔内のすべての出金リクエストを取得します。

3.b - 出金用にソートされたマークル ツリーを生成します。

3.c - ツリーのマークル ルートを使用して L2 出力を作成します。

3.d - L1 の OPHost に出力を送信します。

その後、出金は出金期間に入り、不審な状況が検出された場合、異議申し立てを行ったOPinit Botが出金に異議を唱え、出金をキャンセルすることができます。

問題なく引き出し期間が経過した場合、ユーザーは Initia で Finalize_withdrawal を呼び出してトークンのロックを解除できます。

5.a - この機能は出金リクエストとその証明を受け入れます。

5.b - 提出された証拠の検証。

5.c - すべてがうまくいったら、トークンをユーザーに送信します。

安全性を確保するため、出金には時間がかかります。ただし、Interowned ユーザーにより良いユーザー エクスペリエンスを提供するために、Initia は Miniswap も構築しました。これにより、即時の引き出しが可能になり、IBC と OPinit Bridge を活用することでかなりのセキュリティが提供されます。

出金プロセスがどのように機能するかはわかりましたが、チャレンジのメカニズムはまだブラックボックスなので、詳しく見てみましょう。

ミニティアが不正行為をするとどうなりますか?

前のセクションで、Minitia は嘘をついたり騙したりする可能性があること、および引き出し期間は、OPinit ブリッジ上のトークンが不正に盗まれるのを防ぐためであることを学びました。

しかし、不正な引き出しを阻止する責任は誰にあるのでしょうか?これは Challenger OPinit ボットの仕事です。

1. チャレンジャーは L2 出力をリアルタイムで監視し、L1 に送信されます。

2. 送信ごとに、Initia から出力を取得し、Minitia の状態に基づいて出力を独立して計算します。

3. Initia で送信された出力がチャレンジャーによって計算された出力と一致しない場合、チャレンジャーは DeleteOutput コマンドを送信して出力提案を削除します。チャレンジャーとチャレンジャーのみがこの関数を呼び出すことができます。

Celestia を使用したロールバック状態の同期

無効なプロポーザルを削除すると、ロールアップの現在の状態が無効になったことを意味します。そのため、ロールバック メカニズムが用意されています。

チャレンジが成功した後、Minitia ノードは、ロールアップのすべてのトランザクション バッチが DA 用に Celestia に公開されているため、以前に Celestia に公開されたデータに基づいてステータスを同期できます。これは、ロールバックが必要な場合に非常に便利です。

Minitia の状態の整合性を確保し、実行者が悪意のある動作をしないようにするために、2 つのボット (実行者とチャレンジャー) は独立したエンティティとして設計されています。

悪意のある操作や有効な出力の削除など、チャレンジャーの権限が強すぎる状況に対して、Initia は L1 ガバナンスを通じてチェック アンド バランスのシステムを処理します。

挑戦者と提案者(成果物を提出する人)が悪意を持って行動した場合、それらはガバナンス提案に置き換えられる可能性があります。挑戦者にとって、悪意のある行為は有効な出力を削除することを意味します。提案者にとって、それは無効な出力を送信することを意味します。

提案が作成されると、Initia の L1 バリデーターが L2 ノードを実行して提案に投票し、誰が正しくて誰が間違っているかを検証します。このシステムにより、単一の組織が取引を検閲したり、引き出しプロセスを中断したりすることができなくなります。

より合理的なデザイン

追加の対策を講じずに現状に満足するだけでは、それはイニシアが今後達成すべき結果ではありません。

Initia を使用すると、独自のロールアップを非常に簡単に作成できます。ロールアップの設定には、ホスティング以外にもさまざまな作業が必要です。作成者は、インデクサー、オラクル、ブリッジなどの多くのインフラストラクチャを構築する必要もあります。織り交ぜたスタックですべてがカバーされます。

スキップ接続—ホーリー・オラクル

Skip を通じて、Initia は、織り交ぜられたスタックに基づいて、Initia とすべての Minitia に高速かつリアルタイムの資産価格データを提供できます。

Connect は、価格更新をオンチェーンでプッシュするために Initia バリデーターによって実行される Oracle サイドカー サービスです。この実行では、Cosmos SDK バージョン 0.50 で導入された 2 つの新機能である ABCI++ と Vote Extensions を利用します。これにより、バリデーターは任意のデータを自分で送信し、それをオンチェーンに保存して、可能性を確認するための Populate ブロックによる価格更新を排除できます。

価格更新がオンチェーンになると、開発者は CLI、API、またはスマート コントラクト レベルを介して価格更新をクエリできるようになります。

しかしそうではありません。 Connect の価格は Interowned Stack 上のすべての Minitia に渡され、初日から最新の価格に簡単にアクセスできるようになります。

このようにして、Minitia は、必要なインフラストラクチャを実行したり、サードパーティのオラクルプロバイダーを見つけたり、契約を結んだり、統合にリソースを費やしたりする負担を負う必要がなく、すべて彼らが処理します。

クロスチェーンコントラクトコール

真の Interwent Stack を実現するには、Initia 上に安全で効率的なクロスチェーン通信方法が必要です。これを行うにはいくつかの方法がありますが、そのうちの 1 つは、Optimistic Bridge のブリッジ フックを使用する方法です。ブリッジ フックは機能的には IBC フックと似ており、トークン転送でコントラクト呼び出しを開始できるようにするために使用されます。 OPinit ブリッジ フックは、OPinit ブリッジを介してコントラクト コールを開始し、アセットを転送するために使用されます。

OPHost のブリッジ フックはブリッジのメタデータを更新し、OPChild のフックは FinalizeTokenDeposit でのトランザクションの任意の実行を許可します。

複数の仮想マシンをサポートする方法で構築されているため、EVM、MoveVM、CosmWasm のいずれであっても、ブリッジ フックはメッセージ内のデータ フィールドに基づいて任意のトランザクションを実行できます。

例: EVM チェーンのデータ形式

神聖なインデクサー

minitia には、チェーン上のすべての関連データを自動的にインデックス付けして保存する組み込みインデクサーも付属しています。その後、データは REST API を通じて公開され、履歴データのクエリに使用できます。

アカウント別のトークン、NFT情報、トランザクション情報などがすべて組み込まれています。

インデックス作成は、オンチェーン アプリケーションを構築する際の最大の問題点の 1 つであり、多くの重労働が必要であり、独自のインデクサーを実行するのは高価で面倒です。 Enshaled インデクサーを使用すると、開発者は独自のインデクサーを実行したり、サードパーティのインデクサーからサポートを受けたりすることなく、トークン残高、NFT、トランザクション履歴などを表示できます。

Enshrined インデクサーは、Initia Scan (Initia が L1 および各 L2 に提供するブロック ブラウザ) もサポートしています。

結論は

Interwent Stack は、Initia Interowned のビジョンをサポートする慎重に設計されたテクノロジーです。 Interowned Stack を Cosmos SDK モジュールとして構築することで、Initia は Cosmos SDK の利点をすべて保持しながら、SDK を再利用して Optimistic ロールアップ用のスタックを構築します。

The Interowned Stack についてはまだ未調査の内容がたくさんあります。より深く理解するには、コード ベースとボットのコード ベースを参照することをお勧めします。

全体として、Initia が Rollup の真の居場所であるという事実は事実です。最初から、Initia は Minitia の成長のために構築されました。そのエコシステムは、Blackwing、control、MilkyWay、Inertia などの Minitia の革新的なアプリケーションにインスピレーションを与えました。これらは、アプリケーション固有のロールアップであり、初日から Initia から入手可能になり、すべて Interowned Stack によって有効になります。

星球君的朋友们
作者文库