WATS Wallet logoWATS Wallet
技術6 分で読めます

スマートアカウント対EOA:Ethereumウォレットはどう変わりつつあるか

EOAは固定されたルールを一つだけ持つ素の鍵ペアであり、スマートアカウントはルールがコントラクトコードに存在するアカウントです。リカバリー、支出上限、バッチ処理、セッションキー、paymasterによる手数料の支払い。コスト、互換性、カストディの観点で両者を比較し、EIP-7702が一つのアドレスに両方を兼ねさせる仕組みを解説します。

EOAとスマートアカウントの違いは、何がトランザクションを認可するかにあります。外部所有アカウント(EOA)は素の鍵ペアであり、そのアドレスにはコードが存在しません。したがって、その秘密鍵による有効なECDSA署名が一つあれば何でも実行でき、手数料はそのチェーンのネイティブなガストークンで支払わなければなりません。一方スマートアカウントは、認可ルールがコントラクトコードに存在するアカウントです。そのため、複数の署名者を要求し、支出上限を強制し、有効期限付きのセッションキーを発行し、複数の呼び出しを一つのアトミックな操作にまとめ、paymasterに手数料を精算させることができます。ERC-4337標準は、Ethereumの基盤プロトコルを変更することなく、これらの機能をEVMチェーン上で利用可能にしました。トレードオフはコストと対応範囲です。EOAは最も安価でシンプルかつ最も広くサポートされている選択肢である一方、スマートアカウントは検証のオーバーヘッドを加え、一回限りのデプロイが必要になる場合があります。カストディはアカウントタイプとは別の軸であり、どちらのモデルも完全にノンカストディアルにできます。そしてEIP-7702は今や、通常のEOAがアドレスを変えることなくスマートアカウントの振る舞いを借りることを可能にしています。WATS Hot Walletは、それらの機能の一つが実際に動いている例です。EVMチェーン上ではERC-4337のpaymasterを使うため、ネットワーク手数料は各チェーンのネイティブなガストークンではなくATSで課金され、その間WATSは完全にノンカストディアルなままです。

EOAとは実際に何なのか

外部所有アカウント(EOA)は、Ethereumが初日から持っているアカウントタイプです。それは暗号鍵ペア以上の何物でもありません。トランザクションに署名する秘密鍵と、対応する公開鍵から導出されるアドレスです。秘密鍵を持つ者(通常は12語または24語のシードフレーズから復元されます)が、アカウントを完全に管理します。アドレスにはコードも、ロジックも、条件もありません。プロトコルが行うチェックは一つだけです。これはこのアドレスを所有する鍵による有効なsecp256k1署名で、かつnonceは次の連番か? そうであれば、トランザクションは実行されます。

そのシンプルさこそが最大の魅力です。EOAは安価で、普遍的にサポートされ、あらゆるEVMチェーン上で同一に振る舞います。しかしこのモデルは融通が利きません。一つの鍵が完全な管理権を意味するため、シードを失えば資金を失い、シードが漏洩すれば取り返しのつかない流出を意味します。アカウントは支出上限を強制できず、二段目の承認を要求できず、アプリに限定的な権限を委譲することもできず、そしてチェーンのネイティブトークン以外で自身のガスを支払うこともできません。

スマートアカウントとは何か

スマートアカウント(スマートコントラクトアカウントとも呼ばれる)は、その固定された鍵チェックをプログラム可能なロジックに置き換えます。アカウント自体がコントラクトであり、アクションは、コントラクトが定義するどんなルールであれそれを満たす場合にのみ認可されます。それらのルールはほぼ何でもあり得ます。複数の署名者、1日の上限、一つのアプリと一つの時間枠に範囲を限定したセッションキー、ソーシャルリカバリーのガーディアン、EVMがネイティブに検証できない署名方式(たとえば、EOAが構造的に固定されているsecp256k1署名ではなく、P-256曲線上のWebAuthnデバイスパスキー)、あるいは第三者が手数料をスポンサーできるようにするルールです。

歴史的にこれは専用のコントラクトウォレットをデプロイすることを意味し、それは高価で、分断されており、ほとんどのツールでサポートされていませんでした。ERC-4337というアカウント抽象化標準は、並列のトランザクションパイプラインを追加することでそれを変えました。アカウントは意図をUserOperationとして表現し、bundlerがそれらの操作を集めてまとめ、共有のEntryPointコントラクトがそれらを検証して実行します。しかもEthereumの基盤プロトコルにはいっさい変更を加えません。より広い全体像については、アカウント抽象化とは何かに関する解説がその構成要素を一つずつ説明しています。

知っておく価値のある構造上の細部が一つあります。スマートアカウントは自分自身でトランザクションを開始できません。Ethereumは依然としてオンチェーンのトランザクションを発信するEOAを必要とするため、bundler(他のチェーンでは同等のリレイヤーや手数料支払者)がそれを送信します。これはカストディの問題ではなく配管の細部です。bundlerは、あなたのアカウント自身のロジックがすでに認可したものしか実行できません。

直接対決:重要な違い

リカバリー。EOAはリカバリー経路がちょうど一つ(シードフレーズ)しかなく、フォールバックはなく、新しいアドレスに移らずに鍵をローテーションする方法もありません。スマートアカウントはガーディアンやバックアップ署名者を定義し、時間とともにそれらを入れ替えることができるため、一つの署名者を失うことがアカウントを失うことを意味する必要はありません。

手数料の支払い。EOAはガスを支払うためにチェーンのネイティブトークン(EthereumとほとんどのL2ではETH、PolygonではPOL、BNB ChainではBNBなど)を保有しなければなりません。スマートアカウントは支払いをpaymaster経由でルーティングできるため、手数料をアプリにスポンサーしてもらったり、ネイティブコインの代わりにERC-20トークンで課金したりできます。

バッチ処理。EOAはトランザクションごとに一つの操作を送るため、approveしてからswapするには2つの署名と2つの確認が必要で、その間には承認が未使用のまま残る時間が生じます。スマートアカウントは複数の呼び出しを、完全に成功するか完全に元に戻るかのどちらかである単一のアトミックな操作にまとめることができます。

権限。EOAの署名はオール・オア・ナッシングです。ごく少額の送金ができる鍵は、アカウントを空にできる鍵でもあります。スマートアカウントは、マスター署名者を晒すことなく、範囲と期限を限定した権限を付与できます。たとえば、1時間だけ一つのコントラクトしか呼び出せないゲームのセッションキーです。

コストと互換性。EOAは最も安価な基準であり、あらゆるツール、エクスプローラー、コントラクトに理解されます。スマートアカウントは作業を追加します。コントラクトロジックの検証に加え、EVMではEntryPointの間接参照が入るため、同等のアクションは通常より多くのガスを消費し、アカウントは初回利用前に一回限りのデプロイを必要とする場合があります。

カストディ。これは人々が誤解する点です。カストディとは、どのアカウントタイプを使うかではなく、誰が鍵を保有するかということです。詳しくは後述します。

それぞれがいつ理にかなうか

EOAは、シンプルでコストに敏感な用途にとって依然として堅実なデフォルトです。資産の保有、時折の送金、そして機能よりも最大の互換性と最小のオーバーヘッドが重要なコントラクトとのやり取りです。スマートアカウントは、利便性と安全性の機能そのものが目的であるときに、そのオーバーヘッドに見合う価値を発揮します。リカバリーガーディアン、支出ポリシー、スポンサー付きまたは単一トークンの手数料、バッチ化されたDeFiアクション、アプリごとに範囲を限定したセッションキーです。共同管理を必要とするチームやトレジャリー、そしてWeb2のような体験を望む日常のユーザーはスマートアカウントに引き寄せられ、素で携帯可能かつ普遍的に認識される鍵を望む人々はしばしばEOAに留まります。

両者がどう収束しつつあるか

モデル間の明確な境界線は溶けつつあります。EthereumのPectraアップグレードで導入されたEIP-7702は、EOAが自らのコードフィールドをスマートコントラクトの実装に向ける認可に署名できるようにします。これにより、素のアドレスがスマートアカウントのロジックを実行しながら、すでに資金を入れたのと同じアドレス、同じ秘密鍵、同じ残高のままでいられます。この委任は向け先を変更したり解除したりできるため、移行ではなく可逆的なアップグレードになります。実際上、通常のEOAは自らの履歴を捨てることなく、バッチ処理、スポンサー付きまたはネイティブ以外のトークンでの手数料支払い、セッションキーにオプトインできます。さらに、7702で委任されたアカウントはERC-4337互換のロジックを採用し、同じEntryPoint、bundler、paymasterのインフラを再利用できます。

その結果は、二者択一ではなくスペクトラムです。時が経つにつれ、問いは「EOAかスマートアカウントか?」から「今どの機能をオンにしたいか?」へと移ります。

どちらのモデルも完全にノンカストディアルにできる

どちらのモデルも、あなたが鍵を手放すことを要求しません。EOAは、あなたがそのシードを保有しているときノンカストディアルです。スマートアカウントは、あなた(そしてあなたが管理する署名者だけ)がその認可ロジックを満たせるときノンカストディアルです。「スマートアカウント」は、企業があなたの資金を保有することを意味するのではありません。あなたのアカウントが、あなたが設定したルールに従うことを意味します。どちらのタイプも、第三者が管理鍵を保有するときにのみカストディアルになります。それはアカウントモデルではなくプロダクトについての問いです。この区別が初耳であれば、カストディアルウォレット対ノンカストディアルウォレットがきちんと解説しています。

実際に使えるウォレットではどう見えるか

WATSは完全にノンカストディアルです。あなたが鍵を保有し、WATSは鍵を決して保有しません。その上で、上で述べた手数料支払いの機能を理論のままにせず実際に適用しています。WATS Hot Walletでは、ネットワーク手数料は各チェーンのネイティブなガスコインではなく、単一のトークンATSで課金されます。EVMチェーンではこれはERC-4337のpaymasterを通じて行われ、SolanaとTONではERC-4337がEVM専用の標準であるため、同等の手数料支払者(fee-payer)の仕組みを通じて行われます。ATSはLayerZeroのOFTであるため、一つのATS残高でEthereum、Arbitrum、Optimism、Base、Polygon、BNB Chain、Solana、TONをカバーし、集められたATSはバーンされ、供給量は100,000,000から30,000,000のフロアへと減っていきます。一つはっきりさせておくべきことがあります。これは割引ではありません。ネットワークは通常どおりの手数料を請求し、paymasterがそれを精算します。変わるのはあなたの残高から出ていくトークンであって、根底のコストではありません。

WATSの4つのプロダクト(Chrome拡張機能、モバイルアプリ、Hot Wallet、NFCメタルカード)はすべて同じ意味でノンカストディアルです。カードはコールドストレージ端末と誤解されがちなので、ここで正確に説明しておく価値があります。カードは秘密鍵を保存しません。カードは、たった一つのデバイスとペアリングされた固有のカードIDを使い、タップによってWATSアプリ内にある鍵に対して認証を行います。つまり、金庫よりも物理セキュリティキーに近いものです。

EOAの固定されたルールとスマートアカウントの手数料ロジックの違いを、読むのではなく体感したいなら、具体的な一歩は小さなものです。WATS Hot Walletを開き、ネイティブなガストークンを一切保有していないチェーンで送金してみてください。paymasterが見えないところで働き、手数料はあなたのATS残高から支払われます。ATS手数料モデルの仕組みが、その全体像を端から端まで解説しています。

よくある質問

EOAとスマートアカウントの違いは何ですか?

EOAは秘密鍵によって管理される素の鍵ペアです(通常はシードフレーズとしてバックアップされます)。コードを持たないため、プロトコルは一つの固定されたルールだけを適用します。正しいnonceを伴う有効な署名があればトランザクションが実行され、ガスはチェーンのネイティブトークンで支払われます。スマートアカウントはコントラクトコードによって管理されるため、認可がプログラム可能です。リカバリーガーディアン、支出上限、有効期限付きのセッションキー、代替の署名方式、アトミックなバッチ処理、そしてpaymasterを介した手数料の支払いを追加できます。EOAはより安価でシンプルかつ普遍的にサポートされており、スマートアカウントはより多くのガスを消費し一回限りのデプロイが必要になる場合がありますが、EOAには構造的に不可能なことを実現できます。

スマートアカウントはカストディアルですか?

いいえ、本質的にはそうではありません。カストディとは、どのアカウントタイプを使うかではなく、誰が鍵を保有するかということです。スマートアカウントは、あなたが管理する署名者だけがその認可ロジックを満たせるときノンカストディアルであり、第三者が管理鍵を保有する場合にのみカストディアルになります。これはEOAベースのウォレットに当てはめるのとまったく同じ基準です。bundlerとpaymasterはこれを変えません。bundlerはあなたのアカウントがすでに認可した操作しか送信できず、paymasterは手数料を支払うだけです。

EIP-7702は私のEOAをスマートアカウントに変えますか?

恒久的には変えません。EIP-7702は、既存のEOAが自らのコードフィールドをスマートコントラクトの実装に向ける認可に署名できるようにするため、アカウントは同じアドレス、同じ秘密鍵、同じ残高を保ちながらスマートアカウントのロジック(バッチ処理、スポンサー付きまたはネイティブ以外のトークンでの手数料支払い、セッションキー)を実行できます。この委任はいつでも向け先を変更したり解除したりできるため、新しいアカウントへの移行ではなく可逆的なアップグレードです。あなたはEOAを保ちながら、望むときにスマートアカウントの機能を借りるのです。

各チェーンのネイティブなガストークンを保有せずにネットワーク手数料を支払うにはどうすればいいですか?

WATS Hot Walletは今日それを実現しています。手数料は各チェーンのネイティブなガスコインではなく、単一のトークンATSで課金されます。EVMチェーンではERC-4337のpaymasterを通じて行われ、ERC-4337が適用されないSolanaとTONでは、同等の手数料支払者(fee-payer)の仕組みが同じ役割を果たします。ATSはLayerZeroのOFTであるため、一つのATS残高でEthereum、Arbitrum、Optimism、Base、Polygon、BNB Chain、Solana、TONをカバーし、集められたATSはバーンされ、供給量は100,000,000から30,000,000のフロアへと向かいます。これは割引ではありません。ネットワーク手数料は満額支払われ、paymasterがそれを精算することで、あなたの残高から出ていくトークンが変わるだけです。WATSは完全にノンカストディアルです。あなたが鍵を保有し、WATSは鍵を決して保有しません。