astrid: WASM sandboxingを使用した、構成可能なAIエージェントソフトウェアのための権限保護型OS
astrid: WASM sandboxingを使用した、構成可能なAIエージェントソフトウェアのための権限保護型OS
解決する課題
Astridは、AIエージェントのための安全でポータブルなランタイムを提供します。プロンプトベースの信頼に代わり、OSグレードのセキュリティ境界を導入することで、ローカルマシン上で信頼できないエージェントコードを実行する際のセキュリティリスクに対処します。暗号化された権限モデルを通じて明示的に許可を与えられない限り、エージェントがファイル、ネットワーク、または認証情報にアクセスできないことを保証します。
仕組み
Astridは、capsulesと呼ばれる一連の隔離されたWebAssembly (WASM) コンポーネントを管理する「単純な」カーネルとして動作します。これらのcapsulesには、providers、tools、およびorchestratorsのロジックが含まれています。
- Isolation: Capsulesは、ambient authority(直接的なsyscallやファイルアクセス)を持たないWasmtimeサンドボックス内で実行されます。
- Communication: Capsulesは、IPCプロトコルを使用したイベントバスを介して通信します。カーネルは、これらのイベントをルーティングするために権限ベースのAccess Control List (ACL) を強制します。
- Capability Model: リソース(ファイル、ネットワークホスト)へのアクセスは、principal-boundで取り消し可能な、署名されたed25519 grantsによって管理されます。
- Uplinks: CLIやHTTP gatewayのようなフロントエンドは、「uplinks」としてカーネルに接続し、イベントの送受信を行います。
対象ユーザー
厳格なセキュリティ保証、principalごとの隔離、およびシステムを再起動せずにツールをホットロードおよび更新する方法を必要とする、構成可能なAIエージェントソフトウェアを構築する開発者向けに設計されています。
ハイライト
- Cryptographic Capabilities: すべてのリソースアクセスには署名されたgrantが必要であり、capsuleが侵害された場合でも不正アクセスを防ぎます。
- WASMB Sandboxing: WebAssemblyコンポーネントモデルを使用して、コードがホストシステムから隔離されていることを保証します。
- Per-Principal Isolation: 各エージェントのidentityは、独自の隔離されたsecrets、home directory、およびaudit chainを持っています。
- Hot-Loading: Capsulesは、実行中のdaemonから再起動を必要とせずにインストール、アップグレード、または削除できます。
- Signed Audit Chain: 独立した検証のために、すべての決定と呼び出しのハッシュリンクされた署名付きログを維持します。
Sources
- undefinedastrid-runtime/astrid