Skip to content

Releases: smuellerDD/leancrypto

v0.7.0

11 Sep 12:12
v0.7.0
8ac47fb
Compare
Choose a tag to compare
  • enhancement: add XDRBG256 - the SHAKE256-based DRNG discussed for SP800-90A
    inclusion (almost idential to cSHAKE/KMAC DRNG specified with leancrypto)

  • enhancement: add SymKMAC AEAD algorithm - it uses 100 bytes less context than
    SymHMAC (it is less than 1024 bytes now), uses accelerated Keccak for KDF and
    authentication but is otherwise identical to SymHMAC

  • Kyber: switch responder and initiator definitions

  • enhancement: add ESDM seed source to seed lc_seeded_rng

  • editorial: reformat code using clang-format and provided configuration file

  • Dilithium: Update implementation to match FIPS 204 (draft from Aug 24, 2023)

  • Kyber: Update implementation to match FIPS 203 (draft from Aug 24, 2023)

  • enhancement: Dilithium and Kyber security strengths are selectable via Meson options

  • Kyber KEM: Update shared secret KDF (as the KDF is now removed from FIPS 203,
    it can be adjusted to be more performant and consistent with SP800-108)

  • Kyber KEX: Updated shared secret KDF to use SP800-108 compliant KMAC KDF

  • enhancement: Add input parameter validatino to Kyber as specified in FIPS 203

  • enhancement: consolidate all testing requiring an RNG to use selftest_rng

Full Changelog: v0.6.0...v0.7.0

v0.6.0

03 Jun 08:10
v0.6.0
855fc46
Compare
Choose a tag to compare
  • enhancement: Linux - add memfd_secret(2) support for secure memory allocation

  • fix: documentation of lc_kyber_keypair

  • enhancement: remove the rng_ctx parameter in all Kyber APIs except the key generation - internally lc_seeded_rng is used instead

  • enhancement: use -Wmissing-prototypes and fix reported issues

  • enhancement: provde standalone CBC, CTR, KW implementation

  • enhancement: provide AESNI implementation

  • enhancement: provide AES ARM CE implementation

  • enhancement: provide AES RISC-V 64 assembler implementation

  • enhancement: provide Linux kernel configuration option to enable startup health tests

  • fix: apply fixes such that all self tests and regression tests pass when compiled for Linux kernel

  • fix: properly zeroize memory when using the workspace memory

v0.5.3

15 Mar 14:50
v0.5.3
7fc8cf5
Compare
Choose a tag to compare
  • convert to safe min/max implementations

  • enhancement: allow kernel modules to be compiled directly from installed user space headers

  • enhancement: make ARMv8 code compile on macOS

  • use O3 compiler optimization instead of Os - O3 is significantly faster especially for Kyber C implementation, yet both options work fine

v0.5.2

15 Feb 08:42
v0.5.2
34c2bdf
Compare
Choose a tag to compare

enhancement: add ARMv7 Neon assembler support for Keccak

enhancement: add but disable ARMv8 Neon assembler support for Keccak (it is slower than optimized C)

enhancement: add sign/update/final Dilithium APIs

enhancement: add RISC-V assembler support for Keccak (yet disabled)

enhancement: add ARMv8 assembler implementation of Kyber

enhancement: add counter KDF RNG interface

enhancement: add ARMv8 assembler and ARMv8 CE Keccak support

Full Changelog: v0.5.1...v0.5.2