zig/lib/std/rand
Frank Denis f62e3b8c0d std.crypto: add the Ascon permutation
Ascon has been selected as new standard for lightweight cryptography
in the NIST Lightweight Cryptography competition.

Ascon won over Gimli and Xoodoo.

The permutation is unlikely to change. However, NIST may tweak
the constructions (XOF, hash, authenticated encryption) before
standardizing them. For that reason, implementations of those
are better maintained outside the standard library for now.

In fact, we already had an Ascon implementation in Zig:
`std.crypto.aead.isap` is based on it. While the implementation was
here, there was no public API to access it directly.

So:

- The Ascon permutation is now available as `std.crypto.core.Ascon`,
with everything needed to use it in AEADs and other Ascon-based
constructions
- The ISAP implementation now uses std.crypto.core.Ascon instead of
keeping a private copy
- The default CSPRNG replaces Xoodoo with Ascon. And instead of an
ad-hoc construction, it's using the XOFa mode of the NIST submission.
2023-02-13 02:22:24 -05:00
..
Ascon.zig std.crypto: add the Ascon permutation 2023-02-13 02:22:24 -05:00
Gimli.zig Add argument for fillFn to Random.init 2021-10-29 19:20:31 -04:00
Isaac64.zig Add argument for fillFn to Random.init 2021-10-29 19:20:31 -04:00
Pcg.zig std: fix bug in Pcg32 fill function (#13894) 2022-12-12 14:19:49 -05:00
RomuTrio.zig Add std.rand.RomuTrio 2022-05-24 22:48:51 -04:00
Sfc64.zig Add argument for fillFn to Random.init 2021-10-29 19:20:31 -04:00
test.zig std.rand: make weightedIndex proportions param a const slice 2022-08-30 13:02:17 +03:00
Xoodoo.zig crypto: add the Xoodoo permutation, prepare for Gimli deprecation (#11866) 2022-07-01 13:18:08 +02:00
Xoroshiro128.zig rand: add pub to next/jump 2022-12-18 01:46:09 -05:00
Xoshiro256.zig rand: add pub to next/jump 2022-12-18 01:46:09 -05:00
ziggurat.zig std: remove OOM workarounds 2022-12-14 11:42:28 -05:00