Anthropic Confidential Inference via Trusted Virtual Machines

Anthropicは、機密性の高いユーザーデータと最先端モデルの重みがプライバシーを維持することを暗号学的に保証するために設計されたシステムである、Confidential Inference(機密推論)の研究フレームワークを導入しました。信頼できる仮想マシンと機密コンピューティングを利用することで、Anthropicは、データが処理される正確な瞬間にのみ、高度に制限され検証可能な環境内で復号されることを確実にすることを目指しています。

Core Objectives of Confidential Inference

Confidential Inferenceは、主に2つのセキュリティ目的を果たします:モデルの重みの保護とユーザーデータのプライバシー確保です。

  • Model Weight Security: 有能な脅威アクターから最先端モデルを保護するための、より広範な取り組みの一環として機能します。
  • User Security: 機密性の高いユーザー情報が推論プロセス全体を通じてプライバシーが保たれていることを証明するメカニズムを提供します。

Technical Architecture: The Inference Service

Confidential Inferenceは、機密データは処理の時点を除いて暗号化されたまま維持されなければならないという原則に基づいています。このシステムは、ソフトウェアのセキュリティを証明し、どのソフトウェアが暗号化キーにアクセスできるかに関するルールを強制するために、信頼の連鎖(chain of trust)を採用しています。

The Role of the Trusted Loader

多くのハードウェアアクセラレータがまだ機密コンピューティングを完全にはサポートしていないため、Anthropicは、小型で安全な「model loader and invoker」を使用した実装を検討しています。このローダーは信頼できる環境内で動作し、以下の機能を行います:

  1. Decryption: 暗号化されたデータを受け取り、復号して、アクセラレータに送信します。
  2. Invocation: アクセラレータに対して呼び出しを実行し、呼び出し元に暗号化された結果を返します。

このアーキテクチャでは、ローダーが復号されたデータにアクセスできる唯一のコンポーネントです。システムの残りの部分は「untrusted(信頼できない)」とみなされ、ローダーにリクエストを送信することしかできません。ローダーはハイパーバイザによって隔離された別の仮想マシン上で動作し、Inference Serverに対して「virtual accelerator」として自身を提示します。セキュリティを維持するため、ローダーは安全な継続的インテグレーション(CI)サーバーによって署名されたプログラムのみを受け入れ、実行されるすべてのコードが複数のエンジニアによるレビューを受けていることを保証します。

The Trusted Environment and Attestation

ローダーが正しく動作することを確実にするために、ローダーは以下の3つの主要な特徴を持つ機密コンピューティング環境内で動作します:

  1. Encrypted Memory: メモリはハードウェアによって他のワークロードから隔離されています。これは物理的な攻撃や悪意のあるハイパーバイザに対する保護を提供しますが、Anthropicは、暗号化されたホストメモリをアクセラレータと共有するための機能がまだ十分に確立されていないことを指摘しています。
  2. Disabled Debugging: 不正アクセスを防ぐために、デバッグ機能は無効化されています。
  3. Cryptographic Proof: システムは、正しいコードが実行されていることの証明を提供します。

これらの保護策は、信頼の起点(root of trust)として機能するTrusted Platform Module (TPM) を介して管理されます。TPMはブートプロセスを測定し、アテステーション(証明)として機能するハッシュを生成します。次に、キーサーバーがこの証明を検証し(ローダーが隔離されており、署名されたコードを実行しており、デバッグが無効化されていることを確認)、必要な復号キーをリリースします。

Data Flow and Lifecycle

ユーザーリクエストの場合、データのライフサイクルは、復号が安全なコンテキストでのみ発生するように設計されています:

  • Initial Encryption: リクエストはAnthropicのサーバーに到達する前に暗号化されます。
  • API Server Processing: APIサーバーは、リクエストを転送する前に、リクエストを復号、処理、および再暗号化を行います。
  • Inference Server Handling: Inference Serverは、リクエストを暗号化された形式で扱います。リクエストは、信頼できるローダーに送信されたときにのみ復号されます。
  • Final Delivery: 完了内容は、ローダーを離れる前に暗号化され、APIサーバーを経由して呼び出し元に返されます。

モデルの重みはより単純な経路を辿ります:それらは暗号化された状態で保存され、ローダーでのみ復号され、その環境から決してリリースされません。

Future Directions and Hardware Requirements

Anthropicは、ローダー層におけるさらなる保護策を検討しています。これには、暗号化されたモデルの重みを持つサーバーにおけるエグレス帯域幅の制限や、推論を実行するために安全性分類器(safety classifiers)からの署名が必要となることなどが含まれます。

さらに、Anthropicはハードウェア設計者に対し、機密コンピューティングとハードウェアの信頼の起点(root of trust)をアクセラレータに直接組み込むことで、これらのシステムの信頼境界を大幅に縮小することを推奨しています。

Sources

関連

  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch