Skip to main content

macula_rust/
lib.rs

1//! Rust SDK for the macula mesh on wire 1.0: node keys (ML-DSA-87, and the
2//! LAMPS composite ML-DSA-87 + RSA-PSS-4096 in pq_hybrid), bindings and
3//! signed objects, and a station dialed over QUIC with a post-quantum key
4//! exchange.
5//!
6//! Mobile (iOS/Android via UniFFI, `macula-rust-ffi`) is the flagship
7//! consumer, not the ceiling: nothing below the FFI layer is mobile-specific.
8
9/// The wire this crate speaks, major.minor (macula docs/design/WIRE_1_0.md).
10/// Every wire 1.x peer shares its frozen core: the handshake, the frame
11/// envelope, the record types and their signing rules, and the `_dht.*`
12/// procedures.
13pub const WIRE_VERSION: &str = "1.0";
14
15pub mod binding;
16pub mod cbor;
17pub mod frame;
18pub mod handshake;
19pub mod keystore;
20pub mod manifest;
21pub mod node_key;
22pub mod petname;
23pub mod pool;
24pub mod profile;
25pub mod record;
26pub mod seal;
27pub mod signed_object;
28pub mod statement_issuer;
29pub mod station_link;
30pub mod transport;
31pub mod ucan;
32mod uuid_v7;
33#[cfg(test)]
34mod wire_vectors;