中級者用語を調べる
アカウント抽象化とは
- 執筆
- CRYPTO PORT 編集部
- 公開日
- 更新日
- 読了目安
- 5 分
結論
アカウント抽象化は、ウォレットの検証ルールを秘密鍵1本に固定せず、プログラムで自由に決められるようにする考え方です。これにより、生体認証での承認や、鍵を失ったときの復旧、手数料の肩代わりといった仕組みが可能になります。イーサリアムではERC-4337として実装されています。
要点
- 署名の検証ルールをプログラムで定義できる
- 鍵を失っても復旧できる設計が可能になる
- 手数料を第三者やトークンで支払える
- スマートコントラクト自体がウォレットになる
定義
取引の正当性を判断する条件を、プロトコル固定の署名検証ではなくスマートコントラクトのコードで定義できるようにする設計。
従来のイーサリアムには2種類のアカウントがありました。秘密鍵で操作するEOAと、コードで動くコントラクトアカウントです。しかし取引を開始できるのはEOAだけで、その検証ルールは「ECDSA署名が正しいこと」に固定されていました。鍵を失えば終わり、ガス代はETHでしか払えない、という制約はここから来ています。
アカウント抽象化はこの制約を外します。たとえば「1日1ETHまでは1つの鍵で、それ以上は2つの鍵が必要」「30日間操作がなければ指定した相手が引き継げる」といったルールを、ウォレット自身のコードとして書けます。従来なら不可能だった、鍵を紛失しても資産を取り戻せる設計が成立します。
利用者から見える変化は、まず手続きの単純化です。DEXでのスワップは通常「承認」と「交換」の2回の署名が必要ですが、抽象化されたアカウントでは1回にまとめられます。ガス代をUSDCで払う、あるいはアプリ側が肩代わりするといった運用も、この仕組みの上に成り立っています。
注意点
- · ウォレットがコードである以上、そのコードの脆弱性がそのまま資産のリスクになる
- · 復旧機能は、復旧できる相手が資産を奪える経路にもなりうる
- · 監査状況と、提供者が停止した場合に資産を取り出せる手段を確認する