Changes for version 0.080 - 2023-10-04

  • fix #95 AES-NI troubles on MS Windows (gcc compiler)
  • fix #96 Tests failure with Math::BigInt >= 1.999840
  • Enabled AES-NI for platforms with gcc/clang/llvm

Modules

[internal only]
Authenticated encryption in CCM mode
Authenticated encryption in ChaCha20-Poly1305 mode
Authenticated encryption in EAX mode
Authenticated encryption in GCM mode
Authenticated encryption in OCBv3 mode
[internal only]
Compute Adler32 checksum
Compute CRC32 checksum
Generic interface to cipher functions
Symmetric cipher AES (aka Rijndael), key size: 128/192/256 bits
Symmetric cipher Anubis, key size: 128-320 bits
Symmetric cipher Blowfish, key size: 64-448 bits
Symmetric cipher CAST5 (aka CAST-128), key size: 40-128 bits
Symmetric cipher Camellia, key size: 128/192/256 bits
Symmetric cipher DES, key size: 64[56] bits
Symmetric cipher DES_EDE (aka Triple-DES, 3DES), key size: 192[168] bits
Symmetric cipher IDEA, key size: 128 bits
Symmetric cipher KASUMI, key size: 128 bits
Symmetric cipher Khazad, key size: 128 bits
Symmetric cipher MULTI2, key size: 320 bits
Symmetric cipher Noekeon, key size: 128 bits
Symmetric cipher RC2, key size: 40-1024 bits
Symmetric cipher RC5, key size: 64-1024 bits
Symmetric cipher RC6, key size: 64-1024 bits
Symmetric cipher SAFER+, key size: 128/192/256 bits
Symmetric cipher SAFER_K128, key size: 128 bits
Symmetric cipher SAFER_K64, key size: 64 bits
Symmetric cipher SAFER_SK128, key size: 128 bits
Symmetric cipher SAFER_SK64, key size: 64 bits
Symmetric cipher SEED, key size: 128 bits
Symmetric cipher Serpent, key size: 128/192/256 bits
Symmetric cipher Skipjack, key size: 80 bits
Symmetric cipher Twofish, key size: 128/192/256 bits
Symmetric cipher XTEA, key size: 128 bits
Generic interface to hash/digest functions
Hash function BLAKE2b [size: 160 bits]
Hash function BLAKE2b [size: 256 bits]
Hash function BLAKE2b [size: 384 bits]
Hash function BLAKE2b [size: 512 bits]
Hash function BLAKE2s [size: 128 bits]
Hash function BLAKE2s [size: 160 bits]
Hash function BLAKE2s [size: 224 bits]
Hash function BLAKE2s [size: 256 bits]
Hash function - CipherHash based on AES [size: 128 bits]
Hash function Keccak-224 [size: 224 bits]
Hash function Keccak-256 [size: 256 bits]
Hash function Keccak-384 [size: 384 bits]
Hash function Keccak-512 [size: 512 bits]
Hash function MD2 [size: 128 bits]
Hash function MD4 [size: 128 bits]
Hash function MD5 [size: 128 bits]
Hash function RIPEMD-128 [size: 128 bits]
Hash function RIPEMD-160 [size: 160 bits]
Hash function RIPEMD-256 [size: 256 bits]
Hash function RIPEMD-320 [size: 320 bits]
Hash function SHA-1 [size: 160 bits]
Hash function SHA-224 [size: 224 bits]
Hash function SHA-256 [size: 256 bits]
Hash function SHA-384 [size: 384 bits]
Hash function SHA3-224 [size: 224 bits]
Hash function SHA3-256 [size: 256 bits]
Hash function SHA3-384 [size: 384 bits]
Hash function SHA3-512 [size: 512 bits]
Hash function SHA-512 [size: 512 bits]
Hash function SHA-512/224 [size: 224 bits]
Hash function SHA-512/256 [size: 256 bits]
Hash functions SHAKE128, SHAKE256 from SHA3 family
Hash function Tiger-192 [size: 192 bits]
Hash function Whirlpool [size: 512 bits]
PBKDF1, PBKDF2 and HKDF key derivation functions
[internal only]
Message authentication code BLAKE2b MAC (RFC 7693)
Message authentication code BLAKE2s MAC (RFC 7693)
Message authentication code F9
Message authentication code HMAC
Message authentication code OMAC
Message authentication code PMAC
Message authentication code Pelican (AES based MAC)
Message authentication code Poly1305 (RFC 7539)
Message authentication code XCBC (RFC 3566)
miscellaneous functions related to (or used by) CryptX
[internal only]
Block cipher mode CBC [Cipher-block chaining]
Block cipher mode CFB [Cipher feedback]
Block cipher mode CTR [Counter mode]
Block cipher mode ECB [Electronic codebook]
Block cipher mode OFB [Output feedback]
[internal only]
Public key cryptography based on Diffie-Hellman
Public key cryptography based on DSA
Public key cryptography based on EC
Digital signature based on Ed25519
Public key cryptography based on RSA
Asymmetric cryptography based on X25519
Cryptographically secure random number generator
Cryptographically secure PRNG based on ChaCha20 (stream cipher) algorithm
Cryptographically secure PRNG based on Fortuna algorithm
Cryptographically secure PRNG based on RC4 (stream cipher) algorithm
Cryptographically secure PRNG based on Sober128 (stream cipher) algorithm
Cryptographically secure PRNG based on Yarrow algorithm
Stream cipher ChaCha
Stream cipher RC4
Stream cipher Rabbit
Stream cipher Salsa20
Stream cipher Sober128
Stream cipher Sosemanuk
Cryptographic toolkit
Use the libtommath library for Math::BigInt routines