Account Abstraction(アカウント抽象化)という概念は、イーサリアムの利用体験を根本から変える可能性を秘めた技術革新です。2023年3月に本番ネットワークへ展開されたERC-4337は、イーサリアムプロトコル自体を変更することなく、スマートコントラクトウォレットを実現するという画期的なアプローチを採用しました。
従来のEOA(Externally Owned Account)では、ユーザーは秘密鍵を管理し、ガス代をETHで支払い、すべての操作を自分で署名する必要がありました。この複雑さが、一般ユーザーにとって暗号資産の大きな参入障壁となっていました。ERC-4337はこの問題を解決するため、UserOperationという新しい概念を導入し、バンドラーやペイマスターといった中間レイヤーを設けることで柔軟な操作を可能にしました。
本記事では、ERC-4337の技術的な仕組みから実際の活用事例まで、初心者にも理解できるよう丁寧に解説します。スマートウォレットがどのようにWeb3の未来を形作っていくのか、一緒に見ていきましょう。
ERC-4337とは何か:Account Abstractionの基本概念
EOAとスマートコントラクトアカウントの違い
イーサリアムには大きく分けて2種類のアカウントが存在します。一つはEOA(Externally Owned Account:外部所有アカウント)であり、もう一つはコントラクトアカウントです。
EOAは秘密鍵によって管理されるアカウントで、MetaMaskなど一般的なウォレットがこれに該当します。EOAはトランザクションを開始できますが、プログラム可能なロジックを持ちません。一方、コントラクトアカウントはスマートコントラクトコードを保有し、複雑なロジックを実行できますが、自律的にトランザクションを開始することができませんでした。
ERC-4337はこの制約を取り払い、スマートコントラクト自体がウォレットとして機能する「スマートウォレット」を実現します。ユーザーはコントラクトの柔軟なロジックを活用しながら、通常のウォレット感覚で操作できるようになります。
Account Abstractionが解決する課題
従来のEOAウォレットには以下のような課題がありました。
- 秘密鍵の紛失によるアカウント復元不能
- ガス代を必ずETHで支払う必要性
- 複数の操作を一つのトランザクションにまとめる(バッチ処理)が困難
- ソーシャルリカバリーや多重署名の実装の複雑さ
- セッションキーによる安全な一時的権限付与の不可
ERC-4337はこれらの課題すべてに対応する枠組みを提供しており、Web3のUXを劇的に改善する可能性があります。
ERC-4337のアーキテクチャ:技術的な仕組みを理解する
UserOperation:新しいトランザクション形式
ERC-4337の中心にあるのが「UserOperation」という概念です。これは通常のイーサリアムトランザクションとは異なる、新しい操作形式です。
UserOperationには以下の主要なフィールドが含まれます。
- sender:操作を実行するスマートウォレットのアドレス
- nonce:リプレイ攻撃を防ぐための一意の番号
- initCode:ウォレットがまだデプロイされていない場合のデプロイコード
- callData:ウォレットが実行するアクションのデータ
- callGasLimit:実行に使用するガスの上限
- paymasterAndData:ガス代の支払い方法を指定するデータ
- signature:操作を承認する署名
UserOperationは通常のトランザクションとは別のメモリプール(オルタナティブメンプール)で管理されるため、既存のイーサリアムプロトコルを変更せずに実装できます。
バンドラー:UserOperationの処理者
バンドラーはERC-4337エコシステムにおける重要な中間者です。バンドラーはオルタナティブメンプールからUserOperationを収集し、それらをまとめて通常のイーサリアムトランザクションとしてEntryPointコントラクトに送信します。
バンドラーは以下の役割を担います。
- UserOperationの妥当性検証
- 複数のUserOperationのバンドル(束ね)処理
- EntryPointへの送信とガス代の立て替え
- 報酬としてのガス代の受け取り
バンドラーの役割はマイナーやバリデーターに類似しており、誰でもバンドラーとして参加できる分散型の設計となっています。
EntryPointコントラクトの役割と動作フロー
EntryPointとは何か
EntryPointは、ERC-4337エコシステムの中核となるシングルトンコントラクトです。すべてのUserOperationはこのEntryPointを通じて処理されます。
EntryPointコントラクトは以下の2つの主要な機能を提供します。
- handleOps:バンドラーからUserOperationを受け取り、各ウォレットコントラクトに対して実行を要求する
- handleAggregatedOps:署名集約を使用したUserOperationのバッチ処理
EntryPointのアドレスは標準化されており、すべてのERC-4337準拠ウォレットが同一のEntryPointを使用します。これにより、エコシステム全体での相互運用性が確保されます。
処理フローの詳細
ERC-4337のトランザクション処理は以下の順序で行われます。
- ユーザーがUserOperationを作成し、オルタナティブメンプールに送信する
- バンドラーがUserOperationを収集し、シミュレーションで妥当性を確認する
- バンドラーが複数のUserOperationをまとめてEntryPointに送信する
- EntryPointが各ウォレットコントラクトのvalidateUserOp関数を呼び出す
- 検証が成功したら、EntryPointがcallDataを実行する
- ペイマスターが指定されている場合は、ガス代の支払い処理が行われる
- バンドラーがガス代相当の報酬を受け取る
このフローにより、ユーザーはETHを持っていなくてもトランザクションを実行できる可能性が生まれます。
ペイマスター:ガス代の柔軟な支払いを実現する仕組み
ペイマスターの基本概念
ペイマスターはERC-4337において最も革新的な概念の一つです。ペイマスターは、ユーザーに代わってガス代を支払うスマートコントラクトです。
ペイマスターを活用することで、以下のようなユースケースが実現します。
- スポンサード・トランザクション:dAppが自分のユーザーのガス代を負担する(ガスレス体験)
- ERC-20でのガス払い:ETHの代わりにUSDCやDAIなどのトークンでガスを支払う
- サブスクリプションモデル:月額料金でガス代を無制限にカバーするサービス
- 条件付き無料トランザクション:特定の条件を満たした場合のみガスを肩代わり
これにより、一般ユーザーはETHの存在を意識することなくdAppを利用できるようになります。
主なペイマスターの実装例
現在、複数のプロジェクトがペイマスターサービスを提供しています。
Biconomyは開発者向けのペイマスターAPIを提供しており、dAppが簡単にガスレス体験を実装できるようにしています。StackUpはERC-4337のインフラを提供する企業で、バンドラーサービスとペイマスターAPIを組み合わせた統合ソリューションを提供しています。
Alchemy、Infura、QuickNodeといった既存のブロックチェーンインフラプロバイダーも、ERC-4337対応のサービスを追加しており、開発者エコシステムが急速に整備されています。
スマートウォレットの主要機能:EOAを超える体験
ソーシャルリカバリー:秘密鍵を失っても復元可能
スマートウォレットの最も重要な機能の一つが、ソーシャルリカバリーです。従来のEOAウォレットでは、秘密鍵やシードフレーズを失うとアカウントの完全な喪失を意味しました。
ソーシャルリカバリーでは、信頼できる「ガーディアン」(友人、家族、別のデバイスなど)をあらかじめ設定しておきます。アカウントへのアクセスを失った場合、ガーディアンの多数決によってアカウントを新しい鍵に切り替えることができます。
Vitaly Buterin氏が提唱したこの概念は、Web3のセキュリティと利便性を両立させる重要な突破口として注目されています。代表的な実装として、Argentウォレットのガーディアンシステムが挙げられます。
バッチトランザクションとセッションキー
スマートウォレットにより、複数の操作を一つのトランザクションにまとめて実行できるようになります。例えば、トークンの承認(Approve)とスワップを別々のトランザクションとして送信する代わりに、一つのUserOperationで両方を実行できます。
これにより、ユーザーのガス代削減と操作の簡素化が実現します。DeFiプロトコルとの複雑なインタラクションも、単一の確認操作で完結するようになります。
セッションキーは、特定の条件下で限定的な権限を持つ一時的な鍵を発行する仕組みです。例えば、「24時間以内に、このゲームコントラクトに対して0.01 ETH以下の操作のみを承認する」といった条件付き権限を設定できます。これにより、毎回の操作に署名する手間を省きながら、セキュリティを維持できます。
ERC-4337の現状:採用状況と主要プロジェクト
主要スマートウォレットプロジェクト
ERC-4337エコシステムには、すでに多くのプロジェクトが参加しています。
Safe(旧Gnosis Safe)は、最も実績あるスマートコントラクトウォレットの一つです。マルチシグ(多重署名)機能に定評があり、機関投資家や企業での採用が進んでいます。ERC-4337への対応も積極的に進めています。
Biconomyは開発者向けのスマートウォレットSDKを提供しており、dAppへの統合を簡素化しています。Hyphen、Forward、Gaslessといった製品群でガスレス体験の実現を支援します。
ZeroDevはERC-4337のカーネルウォレットを提供しており、プラグイン形式での機能拡張を可能にしています。開発者が独自のウォレットロジックを組み込む際の標準的なフレームワークとして採用が広がっています。
オンチェーンデータと採用状況
ERC-4337は2023年3月のメインネット展開以来、着実に採用が拡大しています。2024年末時点で、累計UserOperation数は数億件を超え、特にPolygonやOptimismなどのLayer2チェーンでの活用が目立ちます。
ガス代が低いLayer2環境では、スマートウォレットの費用対効果が高く、一般ユーザー向けアプリケーションでの採用が進んでいます。Coinbase Walletのスマートウォレット機能や、FarcasterクライアントのWarpcastでの活用が代表例です。
まとめ
ERC-4337は、イーサリアムプロトコルを変更せずにAccount Abstractionを実現する革新的な標準です。UserOperation、バンドラー、EntryPoint、ペイマスターという4つの構成要素が連携することで、従来のEOAウォレットが抱えていた課題を解決します。
ソーシャルリカバリー、ガスレストランザクション、バッチ処理、セッションキーといった機能は、Web3の大衆化に向けた重要なステップです。Layer2チェーンを中心に採用が拡大しており、今後さらに多くのアプリケーションでスマートウォレットが標準となる可能性があります。
ただし、スマートウォレットのスマートコントラクト自体にバグが含まれるリスクや、エコシステムの複雑さに伴うセキュリティ上の考慮事項も存在します。技術の進化を見守りながら、適切なリスク管理のもとで活用することが重要です。
よくある質問
ERC-4337のスマートウォレットは既存のMetaMaskと互換性がありますか?
ERC-4337のスマートウォレットは、既存のMetaMaskとは異なる仕組みで動作します。ただし、多くのスマートウォレットはMetaMask等の従来ウォレットをガーディアンとして設定したり、署名者として使用することができます。完全な移行は必要なく、既存のウォレットと並行して利用することも可能です。
ERC-4337のガス代は通常のトランザクションより高くなりますか?
スマートコントラクトの実行コストが加わるため、シンプルなEOAトランザクションと比較するとオーバーヘッドが生じます。ただし、バッチトランザクションで複数の操作をまとめた場合は全体的なコストを削減できます。Layer2チェーンではガス代が非常に低いため、スマートウォレットのオーバーヘッドも実質的に問題にならないケースが多いです。
ERC-4337のスマートウォレットで資産を失う可能性はありますか?
スマートコントラクトウォレット自体にコードのバグが含まれる可能性があります。このため、実績あるウォレットプロバイダーを選択し、監査済みのコントラクトを使用することが重要です。また、ソーシャルリカバリーを設定する場合は、ガーディアンの選択を慎重に行ってください。
※本記事は情報提供を目的としており、投資を推奨するものではありません。暗号資産への投資は元本割れのリスクがあります。投資判断はご自身の責任で行ってください。