Leancrypto Version 1.3.0

Code

Changes 1.3.0

  • Allow CPU entropy sources to be used as seed sources with meson option “seedsource=cpu”

  • Ensure full clean run on vintage system without AVX2 (thanks to “David C. Rankin” drankinatty@gmail.com)

  • EFI: compilation support on AARCH64

  • Meson: reduce number of object files to speed up compilation process

  • Intel assembler: add endbr[64|32] to every function and ensure IBT is enabled

  • ARMv8 assembler / ELF: add BTI and PAC support

  • Full FIPS 140 compliance: Invoke PCT, add integrity test for ELF compilations, enable FIPS compilation by default

  • ML-DSA: add external-mu support; new API: lc_dilithium_ctx_external_mu

  • Add optional Jitter RNG entropy source

  • Add SLH-DSA-Ascon-128[s|f] (by default they are disabled, enable with meson configuration options slh_dsa_ascon_128s and slh_dsa_ascon_128f)

  • ML-KEM: use common poly_tobytes / poly_compress including fix for kyberslash for ARMv8 (thus all ML-KEM implementations have proper protections against it)

  • ML-KEM: reduce code duplication

  • Big-Endian: fixes on X.509 key usage processing, ML-KEM modulus tester