Commit graph

55 commits

Author SHA1 Message Date
Karel Miko
5b05baaf36 BLAKE3 2026-08-04 11:26:06 +02:00
Karel Miko
9e2984aa7e SHA-512 accelerated by x86 (alternative) 2026-08-01 11:17:36 +02:00
Steffen Jaeckel
97f5d72457 Ensure the table sizes are OK.
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-07-31 23:57:51 +02:00
Steffen Jaeckel
7978822b69 Add help to test binary.
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-07-31 23:57:51 +02:00
Steffen Jaeckel
54f5803ad8 Rename keccac hash descriptors.
They're the only ones which don't follow the same pattern.

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-07-31 23:57:51 +02:00
Karel Miko
6c885c7732 SM3 hash function 2026-05-19 13:29:36 +02:00
Karel Miko
4d513a02fc ARIA block cipher (RFC 5794) 2026-05-16 11:38:38 +02:00
Karel Miko
1e4d471a9f RFC 8702: RSA-PSS-SHAKE128/256 and ECDSA-SHAKE128/256 2026-05-06 09:23:52 +02:00
Steffen Jaeckel
a724483a0b Add gcm_hw_pmul_is_supported()
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-05-04 10:47:11 +02:00
Steffen Jaeckel
0834f876cd Split up ec25519/448 tests.
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-05-03 11:11:39 +02:00
Steffen Jaeckel
811b1a6c14 Introduce LTC_NOP_TEST()
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-05-03 11:11:39 +02:00
Karel Miko
076a11037a Ed448 + X448 2026-04-24 11:49:23 +02:00
Steffen Jaeckel
661dad10c7 Make HW-accel checkers always available.
Since the SHA-NI checker does the same for all three versions, we only have
to make one version public. This also now enables explicit testing of the
SHA-NI blocks.

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-04-23 09:13:02 +02:00
Marek Knápek
874e095a19 SHA-256 & SHA-224 x86 2026-04-15 15:22:25 +02:00
Marek Knápek
7ac05df902 Add x86-optimized SHA1. 2026-04-15 15:20:28 +02:00
Steffen Jaeckel
11929885a4 Basic algo self-tests should be run before the ones using them.
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2026-04-09 15:40:07 +02:00
Steffen Jaeckel
b46c695505 Add tests for deprecated APIs
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2025-11-18 18:53:26 +01:00
Steffen Jaeckel
fe32e7ea9d Add LTC_ARRAY_SIZE() macro
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2025-09-06 15:00:00 +02:00
Steffen Jaeckel
236477823a prefix the MPI related macros with ltc_
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2025-02-20 14:41:50 +01:00
Chao Wei
6f15a45adc Add SM4 block cipher
SM4 (formerly SMS4)[1] is a block cipher used in the Chinese
National Standard for Wireless LAN WAPI (Wired Authentication
and Privacy Infrastructure).
--from wikipedia
2024-08-30 05:30:48 +02:00
Steffen Jaeckel
c0be0aa0bf Add support for more types of encrypted PEM files
1. ChaCha20, two-key 3DES and DES-X encrypted OpenSSL PEM files

2. AES-GCM and Chacha20+Poly1305 encrypted SSH keys

* OpenSSH uses a slightly different algorithm for its
  `chacha20-poly1305@openssh.com` than defined in the RFC.
  Therefore add an `openssh_compat` flag to
  `chacha20poly1305_state`.
* Add the option to give a 16byte IV and no counter, when calling
  `chacha20poly1305_memory()`
* Add support for DES-X

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2024-08-20 13:29:27 +02:00
Steffen Jaeckel
370457f405 add PEM tests
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2024-08-20 13:29:27 +02:00
Steffen Jaeckel
d11758e700 Add support for Tiger2
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2024-02-26 15:51:54 +01:00
Steffen Jaeckel
9e0a131b2c introduce separate aes_desc
`aes_desc` and `aes_enc_desc` now do auto-detection of the best suitable
AES implementation for the platform.

Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2023-06-22 18:37:25 +02:00
Steffen Jaeckel
31c7f891aa add support for AES-NI instructions
Signed-off-by: Steffen Jaeckel <s@jaeckel.eu>
2023-06-22 18:37:25 +02:00
Steffen Jaeckel
c5d7bfb2cc manually fix the remaining leading _'s 2020-07-16 10:38:33 +02:00
Steffen Jaeckel
9824af8e3b update header 2020-07-14 18:41:30 +02:00
Steffen Jaeckel
24765c30c5 remove footer 2020-07-14 18:41:29 +02:00
Steffen Jaeckel
2a63adc1ab add XSTRLEN 2019-10-17 10:29:27 +02:00
Steffen Jaeckel
52a24ca3a3 add Curve25519 API 2019-06-09 20:40:40 +02:00
Karel Miko
ae2ab2083b ecc_test cleanup 2018-11-07 09:25:08 +01:00
Steffen Jaeckel
d9215be060 Remove katja 2018-06-03 19:19:58 +02:00
Karel Miko
29af2d95cc fix getting current time on MS Windows + improve gettimeofday/clock_gettime usage on UNIX 2018-05-04 16:42:47 +02:00
Karel Miko
3cd8044290 Keccak 2018-03-08 07:18:33 +01:00
Steffen Jaeckel
35c4d157d0 as of POSIX.1-2008 gettimeofday() is obsolete 2017-12-16 16:02:00 +01:00
Karel Miko
152513477b fix return value of register_all_*() 2017-10-18 22:35:16 +02:00
Karel Miko
5a63e7ef7d Serpent cipher 2017-10-18 17:21:46 +02:00
Steffen Jaeckel
735566993b add crypt_mp_init() 2017-10-18 08:46:17 +02:00
Steffen Jaeckel
fdc6cd2013 improve tests and timing in regards to MPI provider selection 2017-10-18 08:46:17 +02:00
Karel Miko
a2dd766ed5 IDEA cipher 2017-10-16 21:20:33 +02:00
Steffen Jaeckel
e438dbc3bf add ltc_mp_digit to sizes and tests 2017-10-03 18:43:32 +02:00
Steffen Jaeckel
a9d9466694 beautify some strings
[skip-ci]
2017-09-20 15:06:28 +02:00
Steffen Jaeckel
1fa8caff6c fix call to gettimeofday()
as of `man gettimeofday`
"The use of the timezone structure is obsolete;
the tz argument should normally be specified as NULL."
2017-08-16 11:52:40 +02:00
Steffen Jaeckel
a65cfb8dbe make it possible to 'make all' w/o an MPI provider 2017-08-07 21:11:42 +02:00
Steffen Jaeckel
28ecdd5d12 minor improvements
[skip ci]
2017-08-07 16:33:38 +02:00
Steffen Jaeckel
ed149c9396 add tests for radix_to_bin() 2017-06-28 14:40:30 +02:00
Steffen Jaeckel
b03b93099d allow to give only a part as parameter to ./test 2017-06-22 14:21:14 +02:00
Steffen Jaeckel
6fc0a90a1e fix headers & footers in demos & tests 2017-06-20 15:16:11 +02:00
Steffen Jaeckel
fe19dad623 replace SVN tags 2017-06-20 15:16:11 +02:00
Steffen Jaeckel
a06cba4cb5 fix tests when compiled for pthread 2017-06-12 17:19:43 +02:00