Commit Graph
2169 Commits
Author SHA1 Message Date
Frank Denis 3e039f7c03 Add code comments about why variable-time is fine for public inputs 2026-04-08 07:54:27 +02:00
Frank Denis ad53cae4c3 ML-KEM: wipe ephemeral seeds and harden invalid-pk test 2026-04-08 00:55:41 +02:00
Frank Denis f54f20abbf sha3: make post-final misuse safe and deterministic 2026-04-08 00:16:01 +02:00
Frank Denis fd52fd61a2 C++ compat 2026-04-05 21:59:25 +02:00
Frank Denis 9f181dfc25 Remove ctype usage 2026-04-05 21:26:55 +02:00
Frank Denis 1573e29bf3 Refactor IPv6 zone ID parsing and reject malformed zone identifiers 2026-04-05 21:26:49 +02:00
Frank Denis 6b726ca29c gcc on FreeBSD can produce bogus code for isspace 2026-04-05 21:26:41 +02:00
Frank Denis 7fd99d8800 defined _AIX -> defined(_AIX) 2026-04-05 21:26:27 +02:00
Frank Denis 591326921c Define TLS as _Thread_local only if not properly autoconfigured 2026-04-05 21:26:20 +02:00
Frank Denis fef6efea2e Some AIX versions define a macro named ip_len
So, workaround that by using ip_len_ :/
2026-04-05 21:24:46 +02:00
Frank Denis cb797420ed Revert "No need to include the hkdf headers twice"
This reverts commit 7d15af325d.
2026-03-31 23:00:09 +02:00
Frank Denis a615d0ed74 base64: reject signed chars 2026-03-29 09:21:42 +02:00
Frank Denis 7d15af325d No need to include the hkdf headers twice 2026-03-26 23:54:27 +08:00
Frank Denis 38aeb9d930 Avoid an MSVC warning in sodium_base64_ENCODED_LEN macro
Reported by @valveri , thanks!

Fixes #1526
Fixes #1527
2026-03-24 23:00:43 +08:00
Frank Denis f3b5cbfddd Restrict evex512 to clang 18-21 only 2026-03-16 20:52:14 +01:00
Frank Denis 178763f174 Add some coverage exclusions 2026-03-15 13:32:12 +01:00
Frank Denis fc98842884 Relax crypto_auth_hmacsha{256,512}_init to accept NULL pointers 2026-03-15 13:06:59 +01:00
Frank Denis 3052baa7eb Add LCOV markers 2026-03-15 12:41:11 +01:00
Frank Denis eabccb959f Add some ending CRLF 2026-03-14 19:38:20 +01:00
Frank Denis da1424fa9a Add inlilne hints for aegis hot paths 2026-03-14 19:20:15 +01:00
Frank Denis 7035cb0e27 Remove useless sodium_memzero, add one that makes sense 2026-03-08 15:27:35 +01:00
Frank Denis c948d3d2c6 Add some sodium_memzero 2026-03-08 15:07:37 +01:00
Frank Denis 35dad2e7b5 Add a couple sodium_memzero 2026-03-08 14:49:53 +01:00
Frank Denis af0dd1b4ac Indent 2026-02-20 23:27:12 +01:00
Frank Denis 38a82863f1 crypto_core_*_from_string: drop the _ro suffix 2026-02-20 23:23:12 +01:00
Frank Denis 8bb79ae24d Rename crypto_core_*_from_string to crypto_core_*_from_string_nu
RO should be the default
2026-02-20 23:19:12 +01:00
Frank Denis 44cf631d04 Add argon2_fill_segment_neon to the quirks 2026-02-20 23:12:12 +01:00
Frank Denis 530252d9a3 Add crypto_core_ed25519_scalar_from_string 2026-02-20 23:06:12 +01:00
Frank Denis babd0c3e59 Remove crypto_core_ristretto255_from_string 2026-02-20 12:05:55 +01:00
Frank Denis ed661cd1fc More fixes for MSVC/aarch64 2026-02-10 23:05:40 +01:00
Frank Denis e4575f45e2 Add casts for aarch64+gcc 2026-02-10 23:00:40 +01:00
Frank Denis f6e26ce153 Try to enable aes256-gcm even on non-clang compilers 2026-02-10 08:56:52 +01:00
Frank Denis e8492b1859 Zero the state afetr AES decryption 2026-02-05 21:42:03 +01:00
Frank Denis 69435b04fe SHAKE: in case update is called right after squeezing, permute
Calling update after squeezing is undocumented and non standard,
but if an application still decides to do it, permute the state
before absorbing so that it's still safe to do so.

We can easily do it since we keep track of the state.

Still return an error as this is not the expected usage of SHAKE,
and zeroing the state is another thing we could do.
2026-02-05 23:08:48 +01:00
Frank Denis 012bab9616 Zeroize a few things after use 2026-02-05 23:01:48 +01:00
Frank Denis 3e4de8a134 Change crypto_core_ed25519_from_string to take a binary string 2026-01-23 23:07:00 +01:00
Frank Denis 54cd5d0ae9 Add hardware acceleration for SHA256 on aarch64 2026-01-23 23:01:00 +01:00
Frank Denis 9561aea8e5 Add NEON optimizations for Argon2 2026-01-22 12:00:49 +01:00
Frank Denis b36e407fe5 Add WASM SIMD implementations of Argon2 2026-01-22 12:00:49 +01:00
Frank Denis 15e6dad043 Just use sodium_memcmp 2026-01-15 23:30:59 +01:00
Frank Denis 557dc9e51d Add a high-level crypto_kem API mapping to xwing 2026-01-15 23:29:59 +01:00
Frank Denis bd6a8af323 Add X-Wing 2026-01-15 23:26:59 +01:00
Frank Denis 44443f9bcb Add back symbols for Intel implementations 2026-01-15 19:26:15 +01:00
Frank Denis bc43c46a43 Cleanup symbols 2026-01-15 23:18:59 +01:00
Frank Denis 02e707a963 Remove SHA3 wrapper 2026-01-15 23:17:59 +01:00
Frank Denis 49d1b7e0ea ml-kem: remove internal SHA3 implememtation
Now that there's a public SHA3 API.
2026-01-15 23:10:59 +01:00
Frank Denis 036e268e17 Add new symbols 2026-01-15 23:10:59 +01:00
Frank Denis a6038f815c Add support for SHA3 2026-01-15 23:03:59 +01:00
Frank Denis e7c1796015 JavaScript: faster randomness generation
Fill entire buffers directly.
2026-01-13 23:00:03 +01:00
Frank Denis 4a7692a723 Compatibility with gcc 4.x
Reported by @pedro0311

Fixes #1507
2026-01-13 20:00:17 +01:00