イーサリアムアカウントの抽象化進化史:EIP4337からEIP7702への革命的変革

イーサリアムアカウントの抽象化トラックの過去と未来の深い解読

イントロダクション

本文は二つの大きな部分に分かれています:

上半分は2015年の最初のアカウントの抽象化(AA)提案を出発点に、システムはこれまでのEIP提案の主要内容を整理し、AAの歴史的提案の発展過程を振り返り、各提案を総合的に評価します。

下半部分重点対比了EIP4337提案後面臨の市場低迷のフィードバック、深く分析したイーサリアムの次のバージョンアップグレードに含まれるEIP7702。この提案が統合されると、チェーン上のアプリケーションの形態を全方位で変えることになる。

EIP-7702は画期的な意味を持ち、その詳細を深く理解しましょう。

1. アカウントの抽象化の背景

1.1 アカウントの抽象化の意義の定位

イーサリアム創設者Vitalikは2023年末にETHの開発ロードマップを更新する際、アカウントの抽象化の設定は変更されなかった。現在の主流モデルはEIP-4337から、次の段階の自発的なEOAアカウントへの移行に入っている。

EIP4337が導入されてから1年以上経った2023年3月1日、デンバーのWalletConで正式に発表され(、ユーザーから広く認識されているが、広く使用されていない。このような矛盾した市場環境の中で、EIP-7702の進捗が大幅に前倒しされ、次回のアップグレードで統合されることが決定された。

) 1.2 アカウントの抽象化の市場現状

一年半の発展を経て、EIP4337のメインストリームチェーン上のアカウント数は1200万に過ぎず、その中でイーサリアムメインネット上のアクティブアドレスはわずか6,764個です。それに対して、イーサリアムメインネットの独立アドレス数は2.7億に達しています。EIP4337はメインネット上で事実上実質的な発展がなかったと言えます。

しかし、これはAAの本質的価値に影響を与えません。EIP4337の設計は、メインネットの前方互換性の問題を解決するのが難しいことを意味しています。さまざまなL2がAAをネイティブにサポートする中で、EIP4337はL2上で爆発的な成長を遂げ、BaseとPolygonチェーンの7月の月間アクティブユーザーはそれぞれ100万と300万に達しました。

したがって、EIP4337の設計は誤りではなく、多くの利点があります。現在の状況は、メインネットとL2の違いに起因しており、それぞれに適した解決策が必要です。

! [イーサリアムアカウント抽象化トラックの過去と未来の詳細な解釈]###https://img-cdn.gateio.im/webp-social/moments-cecbf67df71971d38b0a927be5e4c4d9.webp0192837465674839201

2. アカウントの抽象化とは?

アカウントの抽象化は本質的に所有権の分離問題を解決します。

イーサリアム仮想マシン(EVM)アーキテクチャには2種類のアカウントがあります: 外部アカウント(EOA)と契約アカウント(Contract Account)。外部アカウントでは、所有権と署名権は同一の実体によって保持されます。秘密鍵を持つ人は、アカウントの「所有権」を持つだけでなく、「すべての資産を移転する署名権」を持っています。

これはイーサリアムアカウントの取引構造によって決まっています。イーサリアムの標準取引構造には実際にはFromフィールドがなく、資金移転の具体的な消費アドレスはVRSパラメータ(ユーザー署名)を逆解析することによって得られます。

このデザインは、現在のEOAアドレスの所有権統合のジレンマを引き起こしました。そして、EIP4337の核心的な効果は、トランザクションフィールドにSender Addressフィールドを追加することで、秘密鍵と操作対象のアドレスの分離を実現することです。

権利と所有の分離の重要性は、外部アカウント(EOA)設計によってもたらされる多くの問題を解決することにあります:

  1. 秘密鍵の保護が難しい: 秘密鍵を失うことは、すべての資産を失うことを意味します。
  2. 署名アルゴリズムが単一:ネイティブプロトコルはECDSA署名および検証アルゴリズムのみを使用できます。
  3. サイン権限が高すぎる:ネイティブのマルチシグサポートがなく、単一のサインで任意の操作を実行できる。
  4. 取引手数料はETHでのみ支払うことができ、バルク取引には対応していません。
  5. 取引のプライバシーが漏れやすい: 一対一の取引はアカウント保有者の情報を分析しやすい。

これらの制限は、一般ユーザーがイーサリアムを使用するのを難しくしています:

  • ユーザーはETHを保有し、価格変動リスクを負う必要があります。
  • ユーザーは複雑なガス料金のロジックを処理する必要があります。
  • ウォレットやアプリの製品最適化効果は限られています。

解決策はアカウントの抽象化を実現し、所有権(Owner)と署名権(Signer)を切り離すことで、上記の問題を段階的に解決することにあります。

歴史上、いくつかの提案がされ、最終的には2つの主要なルートに集約されました。

! イーサリアムアカウント抽象化トラックの過去と未来の詳細な解釈

3. AAヒストリカルプロポーザルコンテクストコーミング

問題の解決思路は多くのEIP提案があるように見えますが、根本的には2つのコアな思考しかありません。通過されなかったEIPが考慮した問題は、既存のソリューションの突破口に集約されています。

( 3.1 第一種ルート:EOAアドレスをCAアドレスに変換する

2015年11月15日に、VitalikはEIP-101の中でアカウントとして契約を新しい構造として提案しました。主な変更点は次のとおりです:

  • アドレスをコードとストレージスペースのみに変更する
  • 手数料の支払い方法を変更し、ERC20トークンによる支払いをサポート
  • プレコンパイル契約を通じてネイティブトークンをERC20トークンのように変更する
  • トランザクションフィールドをto、startgas、data、およびcodeに簡素化する

このプランは多くの利点をもたらします:

  1. 取引はより多くの暗号アルゴリズムを使用でき、アドレス内部コードによって署名検証方法が指定されます。
  2. 量子攻撃に対する耐性を備えており、コードはアップグレード可能です。
  3. エーテルにERC20契約と同じ機能を持たせる、例えば代わりに引き落としの承認をする。
  4. アカウントのカスタマイズスペースを向上させ、ソーシャルリカバリー、SBTサポート、キーリカバリーなどに対応する

しかし、変革があまりにも急進的で、当時の取引ハッシュの衝突や安全性の考慮が不十分だったため、この提案はずっと保留されていました。しかし、その中の多くの理念は、後のEIP4337およびEIP7702の核心機能となりました。

その後、一連のEIPがこの考えを改善しようとしています:

EIP-859:メインチェーンアカウントの抽象化)2018-01-30###

  • コードデプロイメントの問題を解決する
  • PAYGASオペコードを提出し、取引パラメータの検証部分と実行部分の区切りとして使用する

EIP-7702:EOAアカウントのコード(2024-05-07)を設定

  • Vitalikによって提案され、EIP-3074の代替案として
  • 今後のETH Prague/Electraハードフォークに含まれることが確定しました

( 3.2 第二のルート: EOAアドレスでCAアドレスを駆動させる

EIP-3074: AUTH および AUTHCALL オペコード )2020-10-15### を追加

  • EVMに新しい2つのオペコードを追加し、EOAが契約に代わって他の契約を呼び出すことを許可します。

EIP-4337:トランザクションメモリプールを使用してアカウントの抽象化(2021-09-29)

  • MEVからインスパイアを受けて設計され、コンセンサス層プロトコルの変更を完全に回避できます
  • 新しいトランザクションオブジェクトUserOperationを提案し、ユーザーはそれをメモリプールに送信します。
  • バンドラーによってマイナーの観点から契約実行取引が一括でパッケージ化される

EIP-5189:背書人によるアカウントの抽象化(2022-06-29)

  • EIP4337のロジックを最適化
  • 資金罰金エンドーサー(メカニズムを構築することによってDoS攻撃を防止する

) 3.3 その他のAAをサポートする提案

EIP-2718:新しい取引タイプのパッケージ封筒(2020-06-13)

  • 新しい取引タイプを定義し、将来追加される取引タイプの封筒として使用する
  • 新しい取引タイプを導入する際は、後方互換性のみを必要とし、前方互換性は必要ありません。

EIP-3607:EOAアドレスによる契約の展開を禁止###2021-06-10(

  • コントラクトのデプロイ先アドレスとEOAアドレスの衝突を防ぐ
  • EOAアドレスに既にあるアドレスにコードをデプロイすることは禁止されています

) 3.4 アカウントの抽象化の発展の歴史をどのように理解するか?

CAに変換した後の主な価値はEIP-4337の実際の効果に現れます:

しかし、EIP-4337の核心的な欠点は、人間の動機原則に反することです:

  • 多くのDappがまだ互換性がなく、ユーザーはCAアドレスの使用を望んでいません
  • CAを使用すると取引コストが増加する可能性があります
  • Dappの互換性に過度に依存すること

これにより、EIP-4337はイーサリアムメインネットで普及できていません。

コスト削減はユーザーが最も関心を持っている基準です。Gas料金を本当に削減するためには、イーサリアムのソフトフォークアップグレードを通じて、Gas計算やオペコードのGas消費などのモジュールを修正する必要があります。ソフトフォークを行うのであれば、EIP-7702を直接考慮する方が良いでしょう。

! イーサリアムアカウント抽象化トラックの過去と未来の詳細な解釈

4. EIP-7702 は完全に解析されます

4.1 EIP-7702の概要

EIP-7702は新しいトランザクションタイプを通じて、EOAが単一のトランザクションで一時的にスマートコントラクト機能を持つことを可能にし、バッチトランザクション、ガスなしトランザクション、カスタム権限管理などをサポートし、さらに新しいEVMオペコードを導入する必要がありません。

ユーザーはスマートコントラクトを展開することなく、ほとんどのAA機能を得ることができ、さらには第三者がユーザーに代わって取引を開始する能力を提供することも可能で、署名された承認情報を提供するだけで、秘密鍵を提供する必要はありません。

( 4.2 データ構造

EIP-7702は新しいトランザクションタイプ0x04を定義し、そのTransactionPayloadは以下の内容のRLPエンコードされたシリアライズ結果です:

rlp)[チェーンID, ナンス, 最大優先手数料, 最大手数料, ガス制限, 宛先, 値, データ, アクセスリスト, 認可リスト, 署名Yの奇偶性, 署名R, 署名S]###

新たに追加されたauthorization_listオブジェクトは、署名者がそのEOAで実行したいコードを格納します。ユーザーは取引に署名する際に、実行する契約コードにも署名します。これは2次元リストであり、複数の操作情報を格納でき、バッチ操作を実現します。

authorization_list = [[chain_id, 住所, nonce, y_parity, r, s], ...]

4.3 取引ライフサイクル

(# 4.3.1 検証フェーズ

取引が開始されるときに、authorization_list内の各タプルに対して以下のステップを実行します:

  1. ecrecoverを使用して署名者のアドレスを復元する
  2. チェーンID)の検証およびフォークチェーンのリプレイ###
  3. サイン者コードが空であるか、または委任されているかを確認する
  4. サイン者のノンス###による再署名防止(
  5. サイナーコードを0xef0100 || アドレスに設定します
  6. サイン者のnonceを増加させる
  7. サイナーアカウントをアクセス済みアドレスリストに追加する

)# 4.3.2 実行フェーズ

契約コードと操作命令を実行する時:

  • authorization_listのaddressフィールドで指定されたアドレスからコードをロードします。
  • サイン者アカウントの文脈で実行する
  • コントラクトコードはチェーン上の特定のアドレスに保存され、取引に直接含まれているわけではない
  • 操作指令と関連するパラメータは、トランザクションペイロードのdataフィールドに保存されます

( 4.4EIP-7702の値

EIP-7702はWeb3ウォレットの全チェーンに変革をもたらし、ユーザーエクスペリエンスを大幅に改善します。EOAが発起する通常の取引でも、バルク送金などのさまざまなコントラクトロジックを実行できます。これにより、CeFiシーンの取引識別および引き出し手数料の集約に影響を与えるでしょう。

それは複数の既存の固定観念を打破しました:

  1. アカウントの残高はもはやそのアカウントからの取引だけで減少することはありません
  2. 取引実行が開始された後、EOA nonceはもはや1だけ増加しない
  3. tx.originとmsg.senderの2つの比較による防護ロジックが無効になる
  4. EOAはイベントを発行でき、チェーン上のイベント認識リスニングに影響を与えます
  5. EOAアドレスがERC20、721、1155などの資産を受け取ることが必ずしも成功するわけではない

) 4.5 EIP-7702 と EIP-4337 の比較

EIP-7702の利点:

  • ガスコストが低く、エントリーポイントモジュールを経由する必要がありません
  • ユーザーの移行コストが低く、事前にチェーン上の契約を展開する必要がありません。
  • EIP-4337と同様に、コードの委託実行をサポート:
    • 完全委託:特定のアドレスに特定の操作のすべての権限を委託する
    • 保護された委託:委託プロセスに制限と保護措置を追加する

EIP-7702の短所:

  • ソフトフォークのアップグレードが必要で、大きな変更があり、オンチェーンエコシステムに広範な影響を与える
  • 自由度が高く、監査が難しく、ユーザーは信頼できるウォレットによる安全な保護をより必要としています。
  • 原来のアーキテクチャに大きな変更があり、多くのインフラと変更不可能な契約が直接適合しにくい
  • EOAアドレスに契約機能を提供しますが、対応するストレージスペースは保持できません。
  • 単独取引コストがやや高く、Calldata部分が増加します。
  • 受取人が受信機能のないコードに署名すると、資産送信のDoSが発生する可能性があります。
  • チェーン上の入出金ロジックが一致しない可能性があります
  • EOAがイベントを発生させることが新たな問題を引き起こす可能性がある

! [イーサリアムアカウント抽象化トラックの過去と未来の詳細な解釈]###https://img-cdn.gateio.im/webp-social/moments-9d6eae95e3a0983a7b379ce2cfd7945f.webp###

5. まとめ

アカウントの抽象化は現在イーサリアムの開発ロードマップの第六モジュール「すべてを修正する」に置かれています。EIP-7702の進捗を加速させることは主にもたらします

ETH5.34%
原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • 7
  • 共有
コメント
0/400
GasFeeThundervip
· 07-11 01:32
また効率を犠牲にするアップグレードが行われ、マイナーは笑って泣いている。
原文表示返信0
NFTRegretfulvip
· 07-10 18:13
EIP7702がAAを救えると思っているのですか?
原文表示返信0
SandwichHuntervip
· 07-10 11:28
また理解できず、学びたいので、場所を取っておきます。
原文表示返信0
SatoshiNotNakamotovip
· 07-08 02:04
またカモにされる。
原文表示返信0
GasFeePhobiavip
· 07-08 02:03
あtmd ガス費がまた上昇し始めた
原文表示返信0
LayerHoppervip
· 07-08 02:01
うう、このロードマップは全然変わっていない 7702単抗頑張れ
原文表示返信0
CommunitySlackervip
· 07-08 01:39
私の底がまた二度と上がりました
原文表示返信0
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)