zig/lib/std/crypto
Frank Denis 21ae64852a
std.crypto.kem.kyber: mitigate KyberSlash (#18316)
On some architectures, including AMD Zen CPUs, dividing a secret
by a constant denominator may not be a constant-time operation.

And most Kyber implementations, including ours, could leak the
hamming weight of the shared secret because of this. See:

https://kyberslash.cr.yp.to

Multiplications aren't guaranteed to be constant-time either, but
at least on the CPUs we currently support, it is.
2023-12-22 15:57:16 +00:00
..
25519 lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
aes std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
Certificate update for the std.fs.Dir changes 2023-11-22 15:24:57 -07:00
pcurves lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
tls verify_buffer is not expected to be sentinel-terminated 2023-12-01 20:04:52 +01:00
aegis.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
aes.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
aes_gcm.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
aes_ocb.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
argon2.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
ascon.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
bcrypt.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
benchmark.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
blake2.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
blake3.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
Certificate.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
chacha20.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
cmac.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
ecdsa.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
errors.zig std: fix a bunch of typos 2023-04-30 18:16:04 -07:00
ff.zig std.crypto.ff: simplify implementation 2023-11-22 11:32:14 -07:00
ghash_polyval.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
hash_composition.zig x86_64: implement enough to pass unicode tests 2023-10-23 22:42:18 -04:00
hkdf.zig x86_64: implement enough to pass unicode tests 2023-10-23 22:42:18 -04:00
hmac.zig update codebase to use @memset and @memcpy 2023-04-28 13:24:43 -07:00
isap.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
keccak_p.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
kyber_d00.zig std.crypto.kem.kyber: mitigate KyberSlash (#18316) 2023-12-22 15:57:16 +00:00
md5.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
modes.zig update codebase to use @memset and @memcpy 2023-04-28 13:24:43 -07:00
pbkdf2.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
phc_encoding.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
poly1305.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
salsa20.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
scrypt.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
sha1.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
sha2.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
sha3.zig std.crypto.sha3: Minor TurboSHAKE/Keccak fixes (#16408) 2023-07-14 14:02:01 +00:00
siphash.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
test.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
tlcsprng.zig Add illumos OS tag 2023-10-02 15:31:49 -06:00
tls.zig TLS: The 0x1306 TLS identifier was updated to TLS_AEGIS_256_SHA512 2023-12-01 18:00:15 +01:00
utils.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00