Google DeepMind AlphaProof Code、Signalプロトコル実装を形式検証
Google DeepMindは、人間の専門知識とAIエージェントを組み合わせて複雑なソフトウェアを形式検証するマルチLLMエージェントフレームワーク「AlphaProof Code」を発表しました。最初の主要なデモンストレーションでは、このフレームワークがSignalのコア暗号コードが主要なセキュリティ特性を満たすことを機械検証されたLean証明で示しました。これは、AIがこれほどの深さで広く展開されている暗号プロトコルを形式検証するために使用された初めてのケースであり、AIの有無にかかわらず、そのようなプロトコル実装が形式検証された初めてのケースでもあります。
AlphaProof Codeとは
AlphaProof Codeは、前例のない深さで形式検証を行うための新しいエージェントフレームワークです。人間の判断を置き換えるのではなく、人間の専門知識とAIエージェントを組み合わせるように設計されています。
このフレームワークは、研究チームが行うように形式検証を分割します。人間の専門家がAIと協力して何を証明するかを決定し、AIエージェントのグループが証明を実行します。Signalプロジェクトでは、研究者がさまざまなモデルと協力してSignalのセキュリティ目標を形式数学仕様に変換し、人間の専門家がすべての仕様をレビューしました。Gemini Carbonを搭載したエージェントが証明を生成しました。
Signal検証の仕組み
Signalの検証は、仕様、コード、証明の3部構成のワークフローに従いました。研究者はまずSignalのセキュリティ目標をLean仕様に変換し、すべてを人間がレビューしました。その後、エージェントは、デバイス上で実行される正確なコードに至るまで、コンパイルされたコードがそれらの仕様を満たしていることを証明しました。
証明作業では、コードの正確性を数学的に証明するコンピューター言語であるLeanの600万行以上が生成されました。Leanは生成された証明を自動的にチェックします。エージェントはまた、証明を監査し、人間による再確認が必要な領域(コードベースのわずか1%)を強調しました。これにより、専門家は人間の判断が最も重要となるレビューに集中できました。
ほとんどのプロトコル検証は設計レベルで停止します。AlphaProof Codeはさらに進んで、コンパイルされた実装が主要なセキュリティ特性(デバイスが一時的に侵害される前後でメッセージが保護されることなど)を満たすことを証明しました。実際の脆弱性は設計と実装のギャップに隠れていることが多く、そのギャップを埋めることで証明ははるかに複雑になります。
その複雑さにもかかわらず、検証プロセスはわずか4週間で完了しました。Google DeepMindによると、このようなタスクはこれまで専門家チームで数年かかっていたとのことです。
Signalの結果が重要な理由
暗号プロトコルは、オンラインバンキングからウェブブラウジングまで、ほぼすべてのデジタル通信の基盤となっています。単一の欠陥が一度に何百万人もの人々を危険にさらす可能性があるため、専門家は数十年にわたってそれらを形式分析してきました。Signalのプロトコルは、SignalやGoogle Messagesなどのアプリで何十億ものプライベートな会話を保護しています。
SignalのCTOであるEren Kret氏は、この結果を実用的な保証への大きな一歩と説明しました。
以前の形式検証はコードのより小さな部分に焦点を当てていましたが、Google DeepMindのアプローチは大幅な拡張を可能にします。AIエージェントを使用してライブコードを有効なLean定理に変換することは、大きなブレークスルーです。AI主導のセキュリティ脅威が成長するにつれて、Signalプロトコル実装を厳密に検証することで、コードのプライバシー保証に対する信頼がさらに高まります。
Google DeepMindは、この作業を企業、政府、重要インフラにエリートレベルのセキュリティ保証をもたらし、エージェント主導のサイバー脅威から防御する手段として位置付けています。同社は、Signalのコア暗号を検証することが、医療機器ファームウェアから電力網ソフトウェアに至るまで、他の重要なシステムを保護するための基盤を築くと述べています。
システムが実際のバグを検出するかどうかのテスト
AlphaProof Codeが正しいコードとバグのあるコードを区別できることを確認するために、Google DeepMindはSignalコードの分離バージョンに、実際に修正された2つのバグを再導入しました。両方のケースで、システムはバグのあるバージョンが安全でないことを機械検証された証明を生成しました。
この検証が重要なのは、形式検証が成功を確認するだけでなく失敗を検出できて初めて有用だからです。したがって、Signalの結果は2つの主張に基づいています。検証されたコードが指定されたセキュリティ特性を満たすこと、そしてフレームワークがバージョンがそれらに違反する場合に機械検証された証拠を生成できることです。
公開された成果物と次のステップ
Google DeepMindは、コミュニティが使用できるように形式検証の成果物をオープンソース化しています。技術論文は「Formal Verification of Signal 4」と題され、Google DeepMindから入手できます。
同社は、これらの技術を拡大するには継続的な研究が必要だと述べています。CodeMenderなどの自動防御エージェントと組み合わせることで、形式検証は、保護が機能することを数学的に証明するソフトウェアを作成することにより、現代のサイバー脅威の速度と規模に対抗するのに役立ちます。
AlphaProof Codeが主張しないこと
この発表は、AlphaProof Codeが人間の検証専門家を置き換えることや、人間の関与なしにあらゆるソフトウェアを検証できることを主張していません。人間の専門家がすべての形式仕様をレビューし、エージェントはコードベースの1%を人間のレビュー用にフラグ付けしました。Leanは生成された証明を自動的にチェックしました。
この結果は、Signalのコア暗号コードと、研究者とSignalが指定したセキュリティ特性に固有のものです。Google DeepMindはこれをマイルストーンであり、より広範な検証作業の基盤であると提示しており、すべてのソフトウェアに対する汎用の保証としてではありません。