今朝、友人のウォレット復旧を手伝いました。ハッキングではなく、特に大きな騒ぎでもありません。彼は新しいdAppで出てきた署名リクエストを、速すぎるくらいにサッとクリックしてしまい、トランザクションが通った後になって初めて、自分が実際に何を承認していたのかに気づいたんです。鍵はずっと大丈夫でした。それが私に刺さりました。

だからチャートに戻る代わりに、そのことを考え続けて、結局Newtonプロトコルのタスクに戻りました。トークン価格ではなく、エージェントの認可(authorization)の側を見直すことにしたんです。

そして、ちょっと居心地の悪さを伴う形でハッとした点があります。私たちは何年も、「プライベートキーを守れ」と言い続けてきました。コールドウォレット、紙に書いたシードフレーズ、共有するな、全部そうです。そして、それは今も真実です。でも、私の友人の鍵は侵害されていません。彼は自分自身を侵害したのです——鍵が完全に安全な状態でそこに置かれている間に、署名によって。脆弱性は移動しました。「誰があなたの鍵を持っているか」ではなく、「それを保持している間に、あなたが何を承認したのか」なんです。

実際に起きていることの単純版です。人は、トランザクションへの署名は小さく区切られた行為だと思い込みます——これを承認して終わり。けれども実際には、特に反復するエージェントや自動承認が絡む場合、あなたが承認しているのは「単発の出来事」ではなく、継続的な行為の範囲であることが多い。Newtonの売り込み全体——zkPermissionsやKeystoreのロールアップ——は、これが今や本当の攻撃面になっているという事実の認めに近いものです。鍵そのものではなく、鍵が署名した後に許される範囲です。

でも、ここが私の気になる部分で、ずっと行ったり来たりしています。もし本当のリスクが「鍵の保管(key custody)」から「権限スコーピング(permission scoping)」へ移ったのなら、負担は結局、ユーザー側にまた戻ってきただけです——ただ、より紛らわしい形で。以前の助言はシンプルでした。「シードフレーズは決して共有するな」。今の助言はこうです。「この特定の署名が、どれくらいの期間、どんな条件のもとで、正確に何を許可するのかを理解してから承認しろ」と。…これは一般の人に求めるには、ずいぶん難しいことです。スコープ付きの権限ならユーザーのために簡単になるはずだと思っていました。けれど実際は、そうではありません。複雑さを、まだ多くの人が流し読みしてしまう別のステップへ移しただけです。

そして、状況が忙しくなるとこれが成り立つとは、私はまだ十分に確信できていません。落ち着いた瞬間なら、たしかに許可スコープを読みます。でも市場が急騰・急落して、みんながエントリーやエグジットを素早く決めようと殺到しているときに、誰かが「そのエージェントが何をできると権限付与されているのか」を立ち止まって確認するでしょうか? 価格が動いているからと、とにかく承認を押してしまうだけになりがちです。まさにそのタイミングで、旧来の鍵の盗難は起きていました——パニック、急ぎ、手順の省略。 「『鍵を守れ』から『スコープを理解せよ』に変えても、その失敗モードが消えるわけではなく、失敗の形が変わるだけだと思います。

これが本当に影響するのは、すでにこの領域に深くいる人たちというより——私たちは十分に神経質で、スピードを落としてでも確認するでしょうから——むしろ、エージェントや自動化があることで簡単になるはずだ、という前提でオンボードされている新しいユーザーだと思います。簡単になればなるほど、何かがうまくいかなかったときに起きる摩擦(立ち止まり)が減り、誰も「さっき自分が署名した内容」を読まない可能性が高くなります。

小さな出来事なんですが、思った以上に私の頭に残りました。結局、友人の資金は無事でした——おそらくは大半が運です。でも、以前から自分の中であまり疑っていなかったことを、別の形で捉え直させてくれました。「安全」と「鍵は安全」は、もう同じ文にならない。しかも、権限を説明するためのツール類は、まだそこに追いついていないと思います。

とにかく。実際に自分がどう感じるのかを決める前に、もう少しこれを頭の中で考えてみます。市場はいまも裏で勝手に動いています。

@NewtonProtocol #Newt $NEWT