Releases: app13y/lg15
Releases · app13y/lg15
Version 0.4.1 released
Changelog
- Issues #7 and #8 were fixed (kudos to @alexanius and @SamsonovAnton)
- Minor code improvements were made
- CI script was updated (we migrated to Trusty dist with preinstalled modern CMake)
Version 0.4 released
Changelog
- All functions were renamed to Gost15–specific.
- CTest was integrated instead of self-made selftests, and all implementations are now tested on each iteration.
- Implementation selection was rephrased via
-DIMPLEMENTATION
CMake option, check out README. - Compiler-specific stuff was removed from CMake configuration.
- All inclusions of headers with integers types and qualifiers were moved to
libgost15/platform.h
header.
Compability issues
- Building library requires compiler supporting C99 standard.
- CMake does not generate buildable Microsoft Visual Studio solutions because MSVC does not support C99
restrict
feature.
I am working on this issue, it is to be fixed in future releases.
Roadmap
- Fix missing
restrict
type qualifier in Microsoft environment. - Add seamless support for GOST R 34.13 (2015) modes of operation.
Version 0.3.6 released
Changes log
This release includes
- three versions of block encryption, decryption and key scheduling implementations: compact, optimised and SIMD,
- by-the-book integrated selftests,
- standalone benchmarking utility based on chrono.
Benchmarks and support for CMake build configuration
What's new?
Version 0.3.5 brings these new features:
- support for CMake build management,
- support for hardclock cycle-couting benchmark,
- support for building selftests and benchmarks out-of-the-box with GCC and Clang compilers.
Draft implementation of block encryption, decryption and key scheduling routines
Pre-release
This version of release includes three implementations versions:
- compact (at compact.c),
- optimised (at optimised.c),
- SIMD (at SIMD.c)
of basic cipher primitives:
- block encryption (
encryptBlock
), - block decryption (
decryptBlock
), - key scheduling.
Note that encryption and decryption modes in optimised and SIMD versions of implementation require different sets of round keys, the respective set is generated by functions:
scheduleEncryptionRoundKeys
,scheduleDecryptionRoundKeys
.
All implementation versions are mutually exclusive, and only one version is compiled at a time.