base64-ng 1.0.0
·
38 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
base64-ng 1.0.0
First stable release of base64-ng.
Highlights
- Stable strict RFC 4648 Base64 API with standard, URL-safe, MIME, PEM, bcrypt, crypt, and custom alphabet support
- Zero runtime dependencies in the core crate
no_stdsupport with optionalalloc,std, andstreamfeatures- Strict canonical decoding by default, with explicit legacy/whitespace-tolerant APIs
- Allocation-free slice APIs, stack-backed buffers, and in-place decode support
- Constant-time-oriented decoding APIs for sensitive inputs, with clear-tail variants for failure-safe buffer handling
- Best-effort volatile wiping for internal secret buffers and stream staging buffers
- Streaming
std::ioencoder/decoder adapters - Release-gated security evidence: fuzz harnesses, dudect harness, Miri-compatible tests, cargo-audit/cargo-deny checks, no-alloc smoke tests, and cross-target checks
- Scalar-only backend for 1.0.0; SIMD remains behind documented admission evidence for future releases
Notes
Kani/formal verification remains planned for a future 1.0.x assurance release once toolchain support is suitable. The constant-time and zeroization APIs are documented as best-effort Rust implementations, not formal hardware-level guarantees.