数日前の数晩、比較的新しいイーサリアムのアカウント抽象に関する議論をいくつか読んでいました。特に、昨年のペトラ(Pectra)アップグレードにあわせた EIP-7702 の出荷についてのあたりで、途中のどこかでふと、ニュートンプロトコルのことをまた考えてしまったんです。誰かがそれを直接話題にしていたわけではないのに、というのも、ニュートンがその周りに組み込んでいるように見える、ある特定の問題が何度も繰り返し浮かんできて、以前はそこまで深く理解できていなかったからです。委任モデルにおける核心的な緊張関係は、見かけよりも単純です。つまり、別の鍵にあなたの代わりに行動する許可を与えるとしたら、それが意図したとおりのことだけを行い、それ以上のことは決してしないようにどう担保するのか? 多くのスマートアカウント実装では、セッションキーという形で対応します。つまり、付与される権限が上限つきの一時的な資格情報です。ただし、その結びつきは通常、ウォレット開発者が書いたロジックによって、単一チェーン上のコントラクトレベルで強制されます。ニュートンが見せている違いは、それらの境界条件を、セッションキーが発行される前に、ゼロ知識回路の中に埋め込んでいる点にあります。すなわち、zkPermission です。これにより、その制約は、どこかのコントラクトに書かれたルールであるだけでなく、その鍵自体の暗号学的な性質になるのです。

私にとって興味深いのは、いわゆる“ハッピーパス”ではなく失敗パターンを考えようとすると、その違いが実際にどれほど重要になるのかです。標準的なセッションキー方式は、その権限範囲を強制するコントラクトの実装の出来にのみ、信頼性が左右されます。開発者がそのロジックに誤りを入れてしまった場合、あるいは権限が定義されたときに想定されなかったエッジケースが存在した場合、そのキーは、技術的には検証を通過しつつ、ユーザーが本当に意図していたことを侵害するような使われ方をされる可能性があります。これに対して zkPermission の回路は、オートメーションのルールを数学的な制約としてエンコードし、実行が進む前に、そのアクションがそれを満たしていることを証明します。DeFi におけるエージェントの委任を語る多くの人が、この違いを本当に慎重に考えたのか、ときどき疑問に思います。ユーザーの信頼という観点では、これら2つのモデルは見た目が似ている(すべてがうまくいっているときには)としても、意味のある違いがあります。その違いがはっきり出るのは、物事がうまくいかないとき、あるいは誰かがエージェントに許されていることの境界を悪用しようとしているときです。

私の考えの中でまだ完全に解決できていないのは、そもそもユーザー体験として、これらの zkPermission の制約をどう定義するのかという点です。ゼロ知識回路は表現力に富み、数学的にも厳密ですが、仕様レベルで扱うには非常に手厳しいことで有名です。ふと頭に浮かぶのは、開発者ではない普通のユーザーが、例えば「この資産は価格がある一定のしきい値より上のときにだけ取引し、さらにこの時間帯の間だけ、かつ1 回の取引で私の残高のこの割合を超えて決して取引しない」といった繊細な権限を実際にどう表現しようとするのは何が起きるのか、ということです。そのような人間の意図を、正確に捉える回路へ、しかも誤って厳しすぎる/緩すぎることなく変換するのは、本当に難しいインターフェース設計の問題であり、すべての暗号学的な洗練の“手前”に位置しているように思えます。Newton の VaultKit SDK は開発者向けにそれを抽象化するために設計されていますが、その抽象化が、回路の制約を考えることにまったく興味がないエンドユーザーに対してどこまで及ぶのかは、私はまだ確信が持てていません。

外から見ると、ここにはもう一つ広いタイミングの問題もあって、ずっと頭から離れません。Newton は ERC-4337 と EIP-7702 の両方の上に構築されています。両者は合わせて、専用に作られたスマートアカウントと、EIP-7702 によって移行を必要とせずにスマートアカウント挙動を後付けできるようになった既存の外部所有ウォレット(数億規模)の両方をカバーしています。理論上は非常に大きな適用範囲ですが、実際の採用はウォレット、チェーン、開発者向けツール間でまだまだ不均一です。Newton の委任・認可モデルが最も強力なのは、その下にあるウォレット層がすでにスマートアカウントネイティブであるときであり、その条件は“すでに普遍的に当てはまっている”というより、“徐々に成り立ちつつある”段階です。ウォレットの抽象化の状況が Newton のインフラの途中地点に追いつくほど十分に速く成熟するのか、それとも Newton がその橋をさらに多く自分で作らなければならなくなるのか—それは、ドキュメントには表れないけれど、実際の採用の進み方をほぼ何よりも左右するような、そういう静かな依存関係の一つに思えます。とにかく、時間が答えてくれるでしょう💻

#newt $NEWT

@NewtonProtocol