#fully #homomorphic #encryption #fhe #cryptography

bin+lib concrete-csprng

Cryptographically Secure PRNG used in the FHE concrete library

4 releases

Uses new Rust 2021

0.2.0 Jul 6, 2022
0.1.8 Sep 30, 2021
0.1.7 Jun 22, 2021
0.1.6 Mar 25, 2021

#824 in Cryptography

Download history 79/week @ 2022-06-12 76/week @ 2022-06-19 77/week @ 2022-06-26 194/week @ 2022-07-03 66/week @ 2022-07-10 186/week @ 2022-07-17 132/week @ 2022-07-24 121/week @ 2022-07-31 305/week @ 2022-08-07 243/week @ 2022-08-14 155/week @ 2022-08-21 106/week @ 2022-08-28 125/week @ 2022-09-04 146/week @ 2022-09-11 100/week @ 2022-09-18 78/week @ 2022-09-25

461 downloads per month
Used in 6 crates (2 directly)

BSD-3-Clause-Clear

115KB
2K SLoC

Concrete CSPRNG

This crate contains a fast Cryptographically Secure Pseudoramdon Number Generator, used in the 'concrete-core' library, you can find it here in this repo.

The implementation is based on the AES blockcipher used in CTR mode, as described in the ISO/IEC 18033-4 standard.

Two implementations are available, an accelerated one on x86_64 CPUs with the aes feature and the sse2 feature, and a pure software one that can be used on other platforms.

The crate also makes two seeders available, one needing the x86_64 feature rdseed and another one based on the Unix random device /dev/random the latter requires the user to provide a secret.

Running the benchmarks

To execute the benchmarks on an x86_64 platform:

RUSTFLAGS="-Ctarget-cpu=native" cargo bench --features=seeder_x86_64_rdseed,generator_x86_64_aesni 

License

This software is distributed under the BSD-3-Clause-Clear license. If you have any questions, please contact us at hello@zama.ai.

Dependencies

~255–560KB
~13K SLoC