zig/lib/std/crypto
Frank Denis dff4bbfd24
Remove Gimli and Xoodoo from the standard library (#14928)
These are great permutations, and there's nothing wrong with them
from a practical security perspective.

However, both were competing in the NIST lightweight crypto
competition.

Gimli didn't pass the 3rd selection round, and is not much used
in the wild besides Zig and libhydrogen. It will never be
standardized and is unlikely to get more traction in the future.

Xoodyak, that Xoodoo is the permutation of, was a finalist.

It has a lot of advantages and *might* be standardized without NIST.
But this is too early to tell, and too risky to commit to it
in a standard library.

For lightweight crypto, Ascon is the one that we know NIST will
standardize and that we can safely rely on from a usage perspective.

Switch to a traditional ChaCha-based CSPRNG, with an Ascon-based one
as an option for constrained systems.

Add a RNG benchmark by the way.

Gimli and Xoodoo served us well. Their code will be maintained,
but outside the standard library.
2023-03-21 04:54:10 +00:00
..
25519 crypto.25519.field: de-inline mul for small builds (#14775) 2023-03-06 17:28:11 -05:00
aes Move std.crypto.config options to std.options (#14906) 2023-03-14 06:40:23 +00:00
Certificate Add std.os.darwin.cssm 2023-01-17 09:51:39 -08:00
pcurves update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
tls tls: use post-quantum secure key exchange (#14920) 2023-03-17 17:51:24 +01:00
aegis.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
aes.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
aes_gcm.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
aes_ocb.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
argon2.zig Argon2: properly handle outputs > 64 bytes in blake2Long() (#14914) 2023-03-14 21:40:02 +00:00
ascon.zig Remove Gimli and Xoodoo from the standard library (#14928) 2023-03-21 04:54:10 +00:00
bcrypt.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
benchmark.zig Remove Gimli and Xoodoo from the standard library (#14928) 2023-03-21 04:54:10 +00:00
blake2.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
blake3.zig std: reenable vectorized code with the C backend 2023-03-06 08:09:32 -05:00
Certificate.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
chacha20.zig Remove Gimli and Xoodoo from the standard library (#14928) 2023-03-21 04:54:10 +00:00
cmac.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
ecdsa.zig std.sign.ecdsa: add support for incremental signatures (#13332) 2022-10-28 16:25:37 +02:00
errors.zig std/crypto: use finer-grained error sets in function signatures (#8558) 2021-04-20 19:57:27 +02:00
ghash_polyval.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
hash_composition.zig std.crypto.hash: allow creating hash functions from compositions (#11965) 2022-07-01 11:37:41 +02:00
hkdf.zig hkdf: add prk_length and extractInit() 2022-12-29 17:56:50 -05:00
hmac.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
isap.zig std.crypto: add the Ascon permutation 2023-02-13 02:22:24 -05:00
keccak_p.zig Fix incorrect SHA-3 computation with the streaming API (#14852) 2023-03-09 05:18:15 +00:00
kyber_d00.zig Add Kyber post-quantum key encapsulation mechanism (#14902) 2023-03-15 03:50:45 +00:00
md5.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
modes.zig migrate from std.Target.current to @import("builtin").target 2021-10-04 23:48:55 -07:00
pbkdf2.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
phc_encoding.zig std.builtin: rename Type.UnionField and Type.StructField's field_type to type 2022-12-17 14:11:33 +01:00
poly1305.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
salsa20.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
scrypt.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
sha1.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
sha2.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
sha3.zig TurboSHAKE: change default delimiter to 0x1F (#14857) 2023-03-09 19:20:57 +00:00
siphash.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
test.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
tlcsprng.zig Remove Gimli and Xoodoo from the standard library (#14928) 2023-03-21 04:54:10 +00:00
tls.zig tls: use post-quantum secure key exchange (#14920) 2023-03-17 17:51:24 +01:00
utils.zig update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00