Commit Graph
1896 Commits
Author SHA1 Message Date
mschwarzlandFrank Denis b7b1c08272 Support for Cloudflare Workers for javascript_stir (#1401)
* Support for Cloudflare Workers for javascript_stir

* Ramove debugging comment

---------

Co-authored-by: Frank Denis <124872+jedisct1@users.noreply.github.com>
2024-08-13 21:40:54 +02:00
Frank Denis 0217d07326 Start introducing optblockers to prevent unwanted conditional jumps 2024-08-03 18:14:26 +02:00
Frank Denis f2303ba3f0 Update autoconf 2024-08-01 13:57:57 +02:00
Frank Denis dcc6471e26 Indent 2024-08-01 13:57:32 +02:00
SeungHwan Hur 28ac48d112 help MSVC optimize ROL/ROR functions (#1392) 2024-08-01 13:57:26 +02:00
Frank Denis 87f46367c4 AEGIS: improve performance of AD absorption on x86_64
No apparent regression on other platforms.

Adapted from libaegis.
2024-05-25 00:43:57 +02:00
Frank Denis 54b04533cc Explicitly enabling evex512 is now required with LLVM 18 2024-05-09 22:21:10 +02:00
Frank Denis bf972efda0 Use clang pragmas to enable features rather than depend on compiler settings 2024-04-27 23:18:59 +02:00
Andrzej Fiedukowicz b3333f07fa Move includes in crypto_onetimeauth_poly1305.h outside of extern C (#1345)
Includes being outside of `extern "C"` are de-facto standard in all other include files of libsodium.

At the same time, having inside the `extern "C"` is causing problem with C++ vs. C toolchain being confused about which libraries should be linked. This was especially painful while working on `swift-sodium` integration with windows.
2024-01-17 15:06:29 +01:00
Frank Denis 5068a8f257 When using MSVC on aarch64, __ARM_ARCH is not defined
Reported by RADDI.net -- Thanks!
2024-01-07 16:12:41 +01:00
Frank Denis 60c0c40b55 Add forgotten crypto_kdf_hkdf_sha512_statebytes() 2023-11-29 22:03:05 +01:00
Frank Denis f1184e45d9 Include argon2id in crypto_pwhash_primitive()
Fixes #1331
2023-11-10 12:36:32 +01:00
Frank Denis 420356c58a Add a comment where coordinates are expected to be normalized 2023-11-08 07:38:04 +01:00
Frank Denis d1a0b7e7cb _M_AMD64 is the same as _M_X64 2023-11-02 06:40:41 +01:00
Frank Denis bb6e6a4b52 aarch64: set compiler attributes *after* including <arm_neon.h>
Fixes #1321
2023-10-20 13:57:44 +02:00
Frank Denis fb4533b0a9 Port the GCC target changes for aarch64 to aegis
Fixes #1313
2023-09-13 15:46:16 +02:00
Frank Denis b795a93fa8 Promote HKDF to minimal builds 2023-09-13 09:00:06 +02:00
Frank Denis 443617d750 Remove expected length from the pwhash_str_verify()/needs_rehash() 2023-09-13 09:00:06 +02:00
Frank Denis 854947a4ce Add AEGIS AEADs 2023-09-13 09:00:06 +02:00
Frank Denis b8a6fecdb6 Add support for HKDF 2023-09-13 09:00:06 +02:00
Frank Denis 61674c6c87 Use ANDROID_CPU_ARM64_FEATURE_AES for AES detection on Android/aarch64 2023-09-13 08:59:50 +02:00
Frank Denis a589d64b42 Handle SIGPROT, CHERI's in-address space security exception 2023-09-12 21:04:06 +02:00
Frank Denis b6bcb3dc22 Forgotten attribute pop 2023-09-12 16:03:13 +02:00
Frank Denis e2935b6943 aarch64: try harder when checking for the crypto extensions 2023-09-12 15:59:05 +02:00
Frank Denis 652c081535 Don't hardcode type sizes 2023-09-12 12:52:08 +02:00
Frank Denis dcf78d77be Inline 2023-09-12 12:38:52 +02:00
Frank Denis 6d5cf12fca define randombytes_set_implementation argument to be const (#1068) 2023-09-12 12:30:19 +02:00
martingd b335abd946 Error from argon2_hash() during verify propagated. (#1039) 2023-09-12 12:13:49 +02:00
Frank Denis ed9e3e18f1 Indent 2023-09-12 12:09:39 +02:00
Frank Denis 18727ac58f Nits 2023-09-12 12:08:23 +02:00
Frank Denis 2800307b05 Nits 2023-09-12 12:07:32 +02:00
Frank Denis 6e0c80f169 Remove unused variables 2023-09-11 15:05:43 +02:00
Frank Denis 709fb29e79 Visual Studio: define __ARM_NEON on Windows/ARM 2023-09-11 00:59:59 +02:00
Frank Denis 9a55460523 Define additional capabilities when using Visual Studio 2023-09-11 00:59:51 +02:00
Frank Denis 6c35bcaabf Downgrade ax_valgrind_check 2023-09-10 22:26:31 +02:00
Frank Denis 7793ba6bc4 Move sodium implementations out of their dedicated directory 2023-09-09 17:33:02 +02:00
Frank Denis 21223ba7a1 Add ge25519_clear_cofactor() 2023-09-09 13:25:09 +02:00
Frank Denis 5e4affe9d8 Support gcc-like and C11-like memory fences 2023-09-09 09:01:51 +02:00
Frank Denis e95d437f84 Add memory fences where supported 2023-09-09 09:01:44 +02:00
Frank Denis 3a6a6025cc Backport aarch64 support for aes256-gcm 2023-09-09 01:04:48 +02:00
Frank Denis 2a72d4501b Simplify how non-deterministic ed25519 nonces are computed 2023-09-08 23:37:55 +02:00
Frank Denis a77269a21b Regen 2023-09-08 22:03:03 +02:00
Scr3amer 375a01d722 Add missing undef in _mm_roti_epi64 definition for blake2b-ssse3 (#1306) 2023-09-02 22:16:26 +02:00
Scr3amer 4322f15012 Do not redefine _mm_roti_epi64 if xop target feature is enabled. (#1305)
Undefine compiler macro if present and XOP not enable to avoid preprocessor warnings due to macro redefinition
2023-09-02 15:26:00 +02:00
Scr3amer 52b90532f6 Define TLS as _Thread_local if the compiler supports C11 (#1304) 2023-09-01 23:47:12 +02:00
Frank Denis 6256e097c9 scrypt_nosse: Remove the 64-bit version of blkxor()
It broke strict aliasing.

Also remove ARCH_BITS that is not required any longer.

Fixes #1301
2023-08-31 23:27:46 +02:00
Frank Denis 9e42094343 scrypt_integerify_sse: be consistent with the no_sse version 2023-08-31 23:25:52 +02:00
Frank Denis 1913882616 scrypt_nosse: no need to use void * in integerify() 2023-08-31 23:25:47 +02:00
Frank Denis 4388ef37db Require/enable AVX for AES256-GCM 2023-08-05 09:39:11 +02:00
Frank Denis 4f099fc593 Add proper CET support (followup to #1290) (#1291) 2023-07-19 18:31:55 +02:00