astrid-runtime/astrid
Astrid is a portable, capability-secure operating system for composable software.
해결하는 문제
Astrid는 안전성을 프롬프트에 의존하는 AI 에이전트 프레임워크에 내재된 보안 위험을 해결합니다. 모델이 올바르게 행동할 것이라고 신뢰하는 대신, Astrid는 모델의 결정과 행동 실행 권한을 분리하는 OS 수준의 보안 경계를 제공하여, 신뢰할 수 없는 코드가 명시적이고 암호학적인 허가 없이 파일, 네트워크, 자격 증명에 접근할 수 없도록 보장합니다.
작동 방식
Astrid는 사용자 공간 런타임으로서(장기적으로 독립형 OS가 되는 것을 목표로 함) WebAssembly(WASM) "캡슐"로 소프트웨어를 실행합니다. 이러한 캡슐은 Wasmtime를 사용해 사전 격리되며, 주변 권한이 없기 때문에 시스템 호출이나 호스트 메모리에 직접 접근할 수 없습니다.
통신과 권한은 다음 방식으로 관리됩니다:
- 커널: "무지한" 이벤트 라우터로, 이벤트 버스를 관리하고, 능력 기반 접근 제어 목록(ACL)을 시행하며, 서명된 감사 체인을 유지합니다.
- 능력: 리소스(파일, 네트워크 호스트 등)에 대한 접근은 서명된 ed25519 토큰을 통해 부여되며, 이 토큰은 주체에 바인딩되어 있으며 취소 가능합니다.
- IPC 버스: 캡슐은 직접적인 함수 호출이 아닌, 타입화된 인터페이스(WIT ABI)와 이벤트 버스를 통해 통신합니다.
- 주체별 격리: 모든 식별자(주체)는 고유한 격리된 저장소, 비밀 정보, 캡슐 접근 권한을 갖습니다.
대상 사용자
Astrid는 고보안 격리와 명시적 권한 관리가 필요한 에이전트 시스템, 도구, 서비스를 개발하는 개발자들, 그리고 WASM 컴포넌트 기반의 자체 소프트웨어 배포를 구축하고자 하는 사용자들을 위한 것입니다.
주요 특징
- 암호학적 능력 모델: 모든 리소스 접근은 프롬프트 지시가 아니라 서명된 부여입니다.
- WASM 격리: 캡슐은 주변 권한이 없이 실행되어, 권한 없는 호스트 접근을 방지합니다.
- 핫로딩: 런타임이 실행 중인 동안 캡슐을 설치, 업그레이드 또는 제거할 수 있으며, 재시작이 필요 없습니다.
- 지속적 상태: 콘텐츠 기반 주소 저장소와 macOS(FSKit) 및 Linux(FUSE)에 대한 네이티브 마운트를 지원합니다.
- 감사 가능성: 서명된 해시 연결 감사 체인은 모든 결정과 호출을 기록하여 독립적인 검증이 가능합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch
- Dispatch