Releases: oopsio/nanosha256
Releases · oopsio/nanosha256
Release list
v1.0.0
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
1.0.0 - 2026-03-31
Added
- nanosha256.h: Initial release of a high-performance, single-header C library for SHA-256 (FIPS 180-4).
- Streaming API: Added
SHA256_CTXandSHA256_Updatefor handling arbitrary-length messages. - Low-Level Primitives: Exposed
sha256_init,sha256_transform, andsha256_finalfor specialized use-cases. - Optimizations: Fully unrolled 64-round compression loop with inline bitwise macros.
- Documentation: Professional Markdown-to-HTML build system with minification via @swc/html.
- CI/CD: GitHub Actions workflow for automated docs deployment.
- Community Standards: Added CONTRIBUTING, CODE_OF_CONDUCT, SECURITY, and issue/PR templates.
- Verification Suite: Integrated NIST/FIPS test suite in
test.c.
Changed
- Refactored
sha256.htonanosha256.hwith enhanced security guards.
Security
- Added NULL pointer validation for all public API functions.
- Integrated integer overflow protection in global message length tracking.
- Implemented secure memory cleanup (memset) to wipe sensitive state/buffer from memory after finalization.
- Alignment-safe byte loading via
memcpyfor portable binary compatibility.