Tags give the ability to mark specific points in history as being important
-
v0.2.0
96bea996 · ·- Added CryptoHandler class to jlizard namespace - moved overview before the TOC in the README.md - fixed the markdown code display for the gmac example - Removed redundant main.cpp - Removed some redundant comments
-
v0.1.0-alpha.2
4d28dca8 · ·- Removed redundant calculate_digest signature. Kept only signature in active use, old function was not used and doesn't adhere to error propagation methodology applied for other functions - Updated Readme.md with reference to ByteArray library - Reorganize the structure of readme and improve examples - Fixed some bugs in the provided examples
-
v0.1.0-alpha.1
69bb3540 · ·- Initial implementation of CryptoHandler class with support for: - AES encryption in CBC and GCM modes - SHA-256 message digest functionality - HMAC generation with SHA-256 - CBC-MAC authentication - GMAC authentication for GCM mode - Comprehensive set of unit tests: - AES-CBC encryption/decryption with and without padding - AES-GCM authenticated encryption - SHA-256 digest calculation and truncation - HMAC-SHA256 verification against RFC 4231 test vectors - CBC-MAC and GMAC authentication - Error handling for mismatched modes and wrong keys - New edge case tests for AES-GCM: - Behavior when tag is missing during decryption - Handling of tags smaller than required 16 bytes - Validation of empty tag buffers - Support for oversized tag buffers - Proper error handling and reporting through std::expected - Comprehensive validation of cryptographic parameters - Support for legacy crypto algorithms through providers - Secure memory handling with ByteArray class that wipes sensitive data - Proper IV handling for CBC and GCM modes - Complete tag validation for authenticated encryption - Implementation follows cryptographic best practices - OpenSSL-based cryptographic operations