astrid-runtime/astrid
Astrid is a portable, capability-secure operating system for composable software.
何を解決するか
Astridは、安全性にプロンプトを依存するAIエージェントフレームワークに固有のセキュリティリスクに対処します。モデルの挙動を信頼する代わりに、AstridはOSグレードのセキュリティ境界を提供し、モデルの意思決定とアクションの実行権限を分離します。これにより、信頼できないコードが明示的かつ暗号学的な許可なしにファイル、ネットワーク、または認証情報にアクセスできないようにします。
仕組み
Astridは、ソフトウェアをWebAssembly (WASM) "capsules"として実行するユーザー空間ランタイム(スタンドアロンOSになることを目標としています)として動作します。これらのcapsulesはWasmtimeを使用してサンドボックス化されており、ambient authority(環境権限)を持ちません。つまり、syscallsやホストメモリに直接アクセスすることはできません。
通信と権限は以下を通じて管理されます:
- The Kernel: イベントバスを管理し、capability-based Access Control List (ACL)を強制し、署名付きの監査チェーンを維持する「単純な」イベントルーターです。
- Capabilities: リソース(ファイル、ネットワークホスト)へのアクセスは、principal-boundであり、かつ取り消し可能な、署名付きのed25519トークンを介して許可されます。
- IPC Bus: Capsulesは、直接的な関数呼び出しではなく、型付きインターフェース (WIT ABI) とイベントバスを介して通信します。
- Per-Principal Isolation: すべてのアイデンティティ (principal) は、独自の分離されたストレージ、シークレット、およびcapsuleへのアクセス権を持っています。
対象者
Astridは、高度なセキュリティ分離と明示的な権限管理を必要とするエージェントシステム、ツール、およびサービスを構築する開発者、ならびにWASMコンポーネントに基づいた独自のソフトウェア配布を実現したいと考えている開発者向けに設計されています。
ハイライト
- Cryptographic Capability Model: すべてのリソースアクセスは、プロンプトの指示ではなく、署名付きの許可です。
- WASM Sandboxing: Capsulesはambient authorityなしで実行され、不正なホストアクセスを防止します。
- Hot-Loading: Capsulesは、ランタイムの実行中に再起動を必要とせずに、インストール、アップグレード、または削除が可能です。
- Durable State: macOS (FSKit) および Linux (FUSE) 用のネイティブマウントを備えた、コンテンツアドレス指定ストレージです。
- Auditability: 署名付きのハッシュリンクされた監査チェーンが、すべての決定と呼び出しを記録し、独立した検証を可能にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch
- Dispatch