Some checks failed
CI / lint (push) Successful in 1m37s
CI / test-python (push) Successful in 1m49s
CI / test-zig (push) Successful in 1m39s
CI / test-wasm (push) Successful in 1m54s
CI / test (push) Successful in 14m44s
CI / miri (push) Successful in 14m18s
CI / build (push) Successful in 1m9s
CI / fuzz-regression (push) Successful in 9m9s
CI / publish (push) Failing after 1m10s
CI / publish-python (push) Failing after 1m46s
CI / publish-wasm (push) Has been cancelled
Signed-off-by: Kamal Tufekcic <kamal@lo.sh>
39 lines
1.8 KiB
Markdown
39 lines
1.8 KiB
Markdown
# libsoliton
|
|
|
|
Pure-Rust post-quantum cryptographic library. Provides composite identity keys (X-Wing + ML-DSA-65), hybrid signatures, KEM-based authentication, asynchronous key exchange, double-ratchet message encryption, streaming AEAD, and encrypted storage — all without a C toolchain.
|
|
|
|
## Features
|
|
|
|
- **Hybrid post-quantum**: X-Wing (X25519 + ML-KEM-768) for KEM, Ed25519 + ML-DSA-65 for signatures
|
|
- **Double ratchet**: KEM-based ratchet with per-epoch forward secrecy and post-compromise security
|
|
- **Streaming AEAD**: Chunked XChaCha20-Poly1305 with random-access decrypt
|
|
- **Encrypted storage**: Versioned key rings, community blobs, DM queue blobs
|
|
- **Zero-knowledge auth**: KEM challenge-response proof of identity key possession
|
|
- **Pure Rust**: No C dependencies, no system linker requirements, cross-compiles to WASM
|
|
|
|
## Usage
|
|
|
|
```rust
|
|
use soliton::identity::generate_identity;
|
|
use soliton::primitives::sha3_256;
|
|
|
|
// Generate a post-quantum identity keypair
|
|
let id = generate_identity().unwrap();
|
|
let fingerprint = sha3_256::hash(id.public_key.as_bytes());
|
|
|
|
// Sign and verify
|
|
let sig = soliton::identity::hybrid_sign(&id.secret_key, b"hello").unwrap();
|
|
soliton::identity::hybrid_verify(&id.public_key, b"hello", &sig).unwrap();
|
|
```
|
|
|
|
See [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) for the full API reference.
|
|
|
|
## Documentation
|
|
|
|
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Specification.md) — full cryptographic specification
|
|
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Abstract.md) — security analysis specification
|
|
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) — API quick reference
|
|
|
|
## License
|
|
|
|
[AGPL-3.0-only](https://git.lo.sh/lo/libsoliton/src/branch/main/LICENSE.md)
|