Architecture of the Crates
The Rust implementation is partitioned into two specialized crates within the repository workspace:liop-core
Binary Protocol & Stubs: Protocol Buffer definitions (
liop_core.proto) compiled through tonic and prost. Exports typed gRPC service traits, client stubs, and network message types without pulling heavy runtime dependencies.liop-client
Agent Execution Engine: High-level client runtime encapsulating Zero-Trust intent negotiation, post-quantum key encapsulation (ML-KEM-768), symmetric payload sealing (AES-256-GCM), and cryptographic ZK-Receipt validation.
Cargo Dependency Configuration
Until official publication oncrates.io, consume the crates directly from the GitHub repository or as a path dependency in a monorepo workspace.
Consuming from Git Repository
Add the following to yourCargo.toml:
Cargo.toml
Consuming via Local Workspace Path
If developing within a local clone of the LIOP repository:Cargo.toml
In-Situ WASI Logic Injection Example
Theliop-client crate exposes the inject_logic function, automating the full five-stage cryptographic lifecycle:
- Zero-Trust Intent Negotiation: Establishes session parameters with the destination node.
- Post-Quantum Key Exchange: Generates an ephemeral ML-KEM-768 keypair and encapsulates a 256-bit shared secret.
- Payload Sealing: Encrypts the compiled guest WASM binary (
wasm32-wasip1) using AES-256-GCM. - Asynchronous Stream Dispatch: Dispatches the encrypted module over Tonic gRPC to the host sandbox.
- ZK-Receipt Verification: Verifies the host’s HMAC-SHA256 computational proof against the session secret and payload digest.
src/main.rs
Technical Specifications & Dependencies
The crates maintain minimal dependency graphs to ensure deterministic compilation and zero memory leaks:Roadmap to crates.io Publication
The development path for the Rust SDK encompasses three primary milestones:
- WASI Preview 2 (Component Model) Support: Migrating from
wasm32-wasip1to WASI Preview 2 WIT interfaces for rich, strongly-typed object exchange across the guest-host boundary. - Ergonomic Server Traits: Exposing a high-level
LiopServertrait matching the TypeScript ergonomics, enabling developers to author native Rust data enclaves with minimal boilerplate. - Crates.io Automated CI/CD Pipeline: Establishing automated cargo-release workflows with OIDC provenance verification.