zig/lib/std/crypto
Frank Denis 119fc318a7 std/crypto/chacha20: add round-reduced versions & cleanup internals
See https://eprint.iacr.org/2019/1492.pdf for justification.

8 rounds ChaCha20 provides a 2.5x speedup, and is still believed
to be safe.

Round-reduced versions are actually deployed (ex: Android filesystem
encryption), and thanks to the magic of comptime, it doesn't take much
to support them.

This also makes the ChaCha20 code more consistent with the Salsa20 code,
removing internal functions that were not part of the public API any more.

No breaking changes; the public API remains backwards compatible.
2021-03-17 11:25:51 -07:00
..
25519 Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
aes std/crypto/aes: fix AES {encrypt,decrypt}Wide 2021-02-28 21:55:58 +02:00
aegis.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
aes.zig std: Add more error checking in hexToBytes 2021-02-21 12:19:03 +02:00
aes_gcm.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
aes_ocb.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
bcrypt.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
benchmark.zig std/crypto/chacha20: add round-reduced versions & cleanup internals 2021-03-17 11:25:51 -07:00
blake2.zig std/crypto: add BLAKE2-160 types and tests 2021-01-03 19:53:30 -08:00
blake3.zig std: Add more error checking in hexToBytes 2021-02-21 12:19:03 +02:00
chacha20.zig std/crypto/chacha20: add round-reduced versions & cleanup internals 2021-03-17 11:25:51 -07:00
error.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
ghash.zig Convert inline fn to callconv(.Inline) everywhere 2021-02-10 20:06:12 -07:00
gimli.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
hkdf.zig Year++ 2020-12-31 15:45:24 -08:00
hmac.zig Year++ 2020-12-31 15:45:24 -08:00
isap.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
md5.zig Year++ 2020-12-31 15:45:24 -08:00
modes.zig Year++ 2020-12-31 15:45:24 -08:00
pbkdf2.zig pbkdf2: use std.math.divCeil() 2021-03-17 10:11:47 +01:00
poly1305.zig Year++ 2020-12-31 15:45:24 -08:00
salsa20.zig Use a unified error set for std/crypto/* 2021-03-14 20:51:31 +01:00
sha1.zig Year++ 2020-12-31 15:45:24 -08:00
sha2.zig Year++ 2020-12-31 15:45:24 -08:00
sha3.zig crypto: add legacy keccak hash functions 2021-01-15 12:36:38 -08:00
siphash.zig fix typo in comment 2021-02-02 20:07:08 -08:00
test.zig Year++ 2020-12-31 15:45:24 -08:00
tlcsprng.zig initial support for haiku sync update 2021-02-25 16:41:42 -07:00
utils.zig std: introduce a thread-local CSPRNG for general use 2020-12-18 12:22:46 -07:00