mirror of
https://github.com/luxfi/crypto.git
synced 2026-07-27 01:54:50 +00:00
All 23 lux-crypto-* crates now have: - README.md with algorithm description, build instructions (CRYPTO_DIR / CRYPTO_BUILD_DIR), source attribution - workspace-inherited authors/homepage/repository/documentation - crates.io-ready metadata (description, keywords, categories) cargo publish --dry-run --no-verify passes for all 23 crates. PUBLISHING.md documents the publish runbook: license decision required before upload, cargo login flow, name reservation order, dry-run sweep, ordered upload, native-archive dependency (Option C documented), docs.rs follow-up, versioning policy, source attribution table. This prepares the crates for a human with a crates.io token to run the real cargo publish step. No upload happens automatically -- the LICENSE decision (BSD-3-Clause vs Lux Ecosystem License) must be confirmed first.
655 B
655 B
lux-crypto-aead
Canonical Rust binding for ChaCha20-Poly1305 AEAD (RFC 8439).
Wraps the C-ABI exposed by luxcpp/crypto/aead. Verified against the RFC 8439
reference vectors.
Algorithm
- ChaCha20-Poly1305 -- AEAD, RFC 8439
- 256-bit key, 96-bit nonce, 16-byte tag
Build
Set CRYPTO_DIR (install prefix) or CRYPTO_BUILD_DIR (cmake build dir) so
the build script can find libaead_cpu.a.
git clone https://github.com/luxfi/crypto
cd crypto && cmake -S . -B build-cto && cmake --build build-cto
export CRYPTO_BUILD_DIR=$(pwd)/build-cto
cargo build -p lux-crypto-aead
License
See LICENSE at the repository root.