okami-0.1.0 has been yanked.
okami
Post-quantum cryptographic identity for AI agents.
Okami gives AI agents a cryptographic identity using hybrid post-quantum cryptography (Ed25519 + ML-DSA-65, NIST Security Level 3). It provides:
- SPIFFE IDs — standard workload identity URIs
- PQC credentials — shareable public credentials with verifying keys
- Delegation tokens — OAuth-style signed capability tokens with depth-limited chains
- Audit events — tamper-evident signed event chains
- CLI —
okami init,keygen,inspect,delegate,verify-chain,tree
Built on lupine for PQC primitives.
Quick start
Library
use AgentIdentity;
use ;
use Duration;
// Generate agent identities.
let orchestrator = new?;
let worker_id = new?;
// Issue a delegation token.
let scopes = vec!;
let token = issue?;
// Verify.
token.verify?;
println!;
CLI
# Initialize a workspace with a root keypair.
# Generate a worker keypair.
# Inspect a credential.
# Issue a delegation token.
# Verify a chain.
# Visualize a chain.
Cryptography
| Operation | Algorithm | NIST Level |
|---|---|---|
| Key exchange | X25519 + ML-KEM-768 | 3 |
| Signing | Ed25519 + ML-DSA-65 | 3 |
| AEAD | ChaCha20-Poly1305 | — |
| Hashing | SHA-256 | — |
Private keys are handled by lupine types that zeroize on drop. Key files are created with mode 0600; okami refuses to load keys with wider permissions.
Delegation chains
Chains are depth-limited to 3 hops (human → orchestrator → worker → sub-worker). Each token attenuates scopes — you can only grant capabilities you already hold.
[0] spiffe://example.com/orchestrator [read:db, write:api]
-> [1] spiffe://example.com/worker/1 [read:db]
-> [2] spiffe://example.com/sub-worker/1 [read:db]
Building
License
MIT OR Apache-2.0