# マルチチェーンアカウントの抽象化:暗号化インフラの未来を明らかにする2024年7月8日至11日、ヨーロッパ最大規模のイーサリアム年次イベント——イーサリアムコミュニティカンファレンス(EthCC)がベルギーのブリュッセルで開催されました。本カンファレンス(EthCC 7)では、350人以上のブロックチェーン業界の第一線の意見リーダーが講演を行い、その中にはimToken Labsの開発者Alfredが含まれており、"マルチチェーンアカウントの抽象化解析"というテーマについて深く掘り下げました。! [暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析](https://img-cdn.gateio.im/social/moments-fbfb77042d4165310922e1ee85da71d9)## スピーチの要点- アカウントの抽象化(AA)の二大コア:署名の抽象化と支払いの抽象化。前者はユーザーが任意の検証メカニズムを選択できるようにし、後者は多様な取引支払いオプションをサポートし、共に安全性とユーザー体験を向上させます。- ERC-4337とネイティブAAは、検証および実行段階のエントリポイント関数の設計に違いがあります。ERC-4337の検証段階のエントリポイントは固定されていますが、実行段階は固定されていません。ネイティブAAでは、両方の段階のエントリポイントは固定されています。- EVM互換チェーンでERC-4337を実装する際、Rollup設計におけるプロトコルの違いやアドレス計算方式の違いにより、L1とL2間の実装には微妙でありながら重要な違いが生じます。## アカウントの抽象化の概要### アカウントの抽象化の本質アカウントの抽象化(AA)は主に2つの重要なポイントを含みます:1. サインの抽象化:ユーザーは好みの検証メカニズムを選択でき、特定のデジタル署名アルゴリズムに制限されなくなります。2. 支払いの抽象化:ユーザーは、ERC-20トークンをネイティブ資産の代わりに使用することや、第三者が取引を支援するなど、さまざまな方法で取引手数料を支払うことができます。この柔軟性は、安全性とユーザー体験を大幅に向上させました。### ERC-4337 解析ERC-4337は、Ethereumの外部所有アカウント(EOA)の制限を克服することを目的としており、より柔軟なアカウント管理と取引処理方法を導入しています:- userOp 構造体: ユーザーが userOp を Bundler に送信すると、Bundler は複数の userOps を収集し、handleOps 関数を呼び出してそれらを EntryPoint コントラクトに送信します。- EntryPointコントラクト:取引処理の核心として、主な機能は次のとおりです:1. アカウントコントラクトのvalidate関数を呼び出して、userOpの権限を検証します。 2. 料金を請求する。3. アカウント契約のexecute関数を呼び出し、userOpのターゲット操作を実行します。### ネイティブAAの概要ネイティブAAでは、各アカウントは1つの契約であり、取引処理メカニズムはブロックチェーンプロトコルに直接組み込まれています。異なるネットワークで採用されているAA設計はそれぞれ異なります。- ERC-4337 アカウントの抽象化: Ethereum、Arbitrum、Optimism、Base、Linea、Scroll、Polygon PoS- ERC-4337に基づくネイティブアカウントの抽象化:StarkNetとzkSync Era- プライバシーデザインを備えたネイティブアカウントの抽象化:Aztec! [暗号インフラストラクチャの未来は? マルチチェーンアカウントの抽象解析](https://img-cdn.gateio.im/social/moments-f354ad716da09da261319761d128a6f0)## ERC-4337とネイティブAAの比較### オペレーティングシステムの役割AAオペレーティングシステムは以下の問題を解決する必要があります:- ガス価格の決定- 取引の順序の決定とメモリプールの位置- エントリーポイント関数のトリガー- 取引処理プロセスの定義ERC-4337は、BundlerとEntryPoint Contractの協力により、これらのタスクを完了します。一方、ネイティブAAでは、ユーザーはuserOpsを公式サーバーのオペレーター/ソートラーに直接送信します。StarkNetでは、Sequencerがこれらすべてのタスクを処理します。zkSync Eraでは、Operatorがbootloader(システムコントラクト)と連携して作業する必要があります。### 契約インターフェースアカウント契約インターフェースは、異なる実装で大まかに似ており、AAオペレーティングシステムによって呼び出されるエントリポイント関数を含んでいます。- ERC-4337:ユーザー アクションの認証- zkSync:トランザクションの検証、トランザクションの支払い、トランザクションの実行- StarkNet:実行、検証、validate_declare、validate_deploy### 検証ステップの制限DoS攻撃を防ぐために、各実装は取引の検証に異なる制限を課しました:- ERC-4337は禁止されたオペコードとストレージアクセス制限を定義しています。- zkSync Eraは一部のOpCodeの使用を緩和しましたが、ストレージアクセスの範囲を制限しています。- StarkNetは外部契約の呼び出しを許可していません。### 実行ステップ制限- zkSyncはシステムコールを実行するためにシステム確認フラグを要求します。- ERC-4337とStarkNetには、実行フェーズ中に特別な制限はありません。### ランダム数処理- ERC-4337は192ビットのキー値と64ビットのランダム値を区別します。- zkSyncはNonceHolderシステムコントラクトを使用してnonceを管理し、厳密な増加を確保します。- StarkNetのノンスも厳格に増加しますが、専用の管理コントラクトはありません。### 初回取引のデプロイ- ERC-4337のuserOp構造には、アカウント契約を初めてデプロイするためのinitcodeフィールドが含まれています。- StarkNetとzkSyncは、ユーザーに最初の取引をオペレーター/ソート者に送信してアカウント契約を展開することを要求します。### zkSyncの特別なデザインzkSyncは、ユーザーがイーサリアムのEOAからETHを直接移動させることを可能にし、カスタムアカウント契約を展開することなく、同じアドレスのデフォルトアカウントを取得できます。このアカウントは、イーサリアムのEOAのように機能します。! [暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析](https://img-cdn.gateio.im/social/moments-52ccc7ebff94f6c548dd55bc61aad309)## L1とL2におけるERC-4337の実装の違い### プロトコルの違いL2はデータをL1にアップロードして安全性と決済を確保する必要があります。ERC-4337では、関連するL1の安全料金とblob料金は事前検証Gasに含まれるべきであり、適切なアップロード料金を特定することに課題をもたらしています。### アドレスの違い異なるチェーンのアドレス計算方法には違いがあります:- zkSync ERAのcreate関数におけるアドレスエンコーディング方式は、イーサリアムやOPの総和とは異なります。- StarkNetは独自のハッシュ関数を使用してアドレスを計算します。さらに、ハードフォークで新たに追加されたオペコードはバイトコードの変化を引き起こす可能性があり、その結果アカウントのコントラクトアドレスの一貫性に影響を与える可能性があります。例えば、L2チェーンが上海ハードフォークをサポートしておらず、コンパイル時にEVMバージョンが指定されていない場合、push0の導入はバイトコードを変更します。! [暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析](https://img-cdn.gateio.im/social/moments-180475deec41c605ac65be9b2b494048)
デプス解析:マルチチェーンアカウントの抽象化技術の現状と未来の発展
マルチチェーンアカウントの抽象化:暗号化インフラの未来を明らかにする
2024年7月8日至11日、ヨーロッパ最大規模のイーサリアム年次イベント——イーサリアムコミュニティカンファレンス(EthCC)がベルギーのブリュッセルで開催されました。本カンファレンス(EthCC 7)では、350人以上のブロックチェーン業界の第一線の意見リーダーが講演を行い、その中にはimToken Labsの開発者Alfredが含まれており、"マルチチェーンアカウントの抽象化解析"というテーマについて深く掘り下げました。
! 暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析
スピーチの要点
アカウントの抽象化(AA)の二大コア:署名の抽象化と支払いの抽象化。前者はユーザーが任意の検証メカニズムを選択できるようにし、後者は多様な取引支払いオプションをサポートし、共に安全性とユーザー体験を向上させます。
ERC-4337とネイティブAAは、検証および実行段階のエントリポイント関数の設計に違いがあります。ERC-4337の検証段階のエントリポイントは固定されていますが、実行段階は固定されていません。ネイティブAAでは、両方の段階のエントリポイントは固定されています。
EVM互換チェーンでERC-4337を実装する際、Rollup設計におけるプロトコルの違いやアドレス計算方式の違いにより、L1とL2間の実装には微妙でありながら重要な違いが生じます。
アカウントの抽象化の概要
アカウントの抽象化の本質
アカウントの抽象化(AA)は主に2つの重要なポイントを含みます:
サインの抽象化:ユーザーは好みの検証メカニズムを選択でき、特定のデジタル署名アルゴリズムに制限されなくなります。
支払いの抽象化:ユーザーは、ERC-20トークンをネイティブ資産の代わりに使用することや、第三者が取引を支援するなど、さまざまな方法で取引手数料を支払うことができます。
この柔軟性は、安全性とユーザー体験を大幅に向上させました。
ERC-4337 解析
ERC-4337は、Ethereumの外部所有アカウント(EOA)の制限を克服することを目的としており、より柔軟なアカウント管理と取引処理方法を導入しています:
userOp 構造体: ユーザーが userOp を Bundler に送信すると、Bundler は複数の userOps を収集し、handleOps 関数を呼び出してそれらを EntryPoint コントラクトに送信します。
EntryPointコントラクト:取引処理の核心として、主な機能は次のとおりです:
ネイティブAAの概要
ネイティブAAでは、各アカウントは1つの契約であり、取引処理メカニズムはブロックチェーンプロトコルに直接組み込まれています。異なるネットワークで採用されているAA設計はそれぞれ異なります。
! 暗号インフラストラクチャの未来は? マルチチェーンアカウントの抽象解析
ERC-4337とネイティブAAの比較
オペレーティングシステムの役割
AAオペレーティングシステムは以下の問題を解決する必要があります:
ERC-4337は、BundlerとEntryPoint Contractの協力により、これらのタスクを完了します。一方、ネイティブAAでは、ユーザーはuserOpsを公式サーバーのオペレーター/ソートラーに直接送信します。
StarkNetでは、Sequencerがこれらすべてのタスクを処理します。zkSync Eraでは、Operatorがbootloader(システムコントラクト)と連携して作業する必要があります。
契約インターフェース
アカウント契約インターフェースは、異なる実装で大まかに似ており、AAオペレーティングシステムによって呼び出されるエントリポイント関数を含んでいます。
検証ステップの制限
DoS攻撃を防ぐために、各実装は取引の検証に異なる制限を課しました:
実行ステップ制限
ランダム数処理
初回取引のデプロイ
zkSyncの特別なデザイン
zkSyncは、ユーザーがイーサリアムのEOAからETHを直接移動させることを可能にし、カスタムアカウント契約を展開することなく、同じアドレスのデフォルトアカウントを取得できます。このアカウントは、イーサリアムのEOAのように機能します。
! 暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析
L1とL2におけるERC-4337の実装の違い
プロトコルの違い
L2はデータをL1にアップロードして安全性と決済を確保する必要があります。ERC-4337では、関連するL1の安全料金とblob料金は事前検証Gasに含まれるべきであり、適切なアップロード料金を特定することに課題をもたらしています。
アドレスの違い
異なるチェーンのアドレス計算方法には違いがあります:
さらに、ハードフォークで新たに追加されたオペコードはバイトコードの変化を引き起こす可能性があり、その結果アカウントのコントラクトアドレスの一貫性に影響を与える可能性があります。例えば、L2チェーンが上海ハードフォークをサポートしておらず、コンパイル時にEVMバージョンが指定されていない場合、push0の導入はバイトコードを変更します。
! 暗号インフラストラクチャの未来は? マルチチェーンアカウントの抄録解析