• Home
  • History
  • Annotate
Name
Date
Size
#Lines
LOC

..--

src/25-Apr-2025-941711

.cargo-checksum.jsonD25-Apr-2025817 11

Android.bpD25-Apr-20251.4 KiB6459

CHANGELOG.mdD25-Apr-20251.3 KiB3627

COPYRIGHTD25-Apr-2025569 139

Cargo.tomlD25-Apr-20251.3 KiB4641

LICENSED25-Apr-202510.6 KiB202169

LICENSE-APACHED25-Apr-202510.6 KiB202169

LICENSE-MITD25-Apr-20251.1 KiB2723

METADATAD25-Apr-2025382 1817

MODULE_LICENSE_APACHE2D25-Apr-20250

README.mdD25-Apr-20252 KiB4933

TEST_MAPPINGD25-Apr-20252 KiB9392

cargo_embargo.jsonD25-Apr-202569 65

README.md

1# rand_chacha
2
3[![Test Status](https://github.com/rust-random/rand/workflows/Tests/badge.svg?event=push)](https://github.com/rust-random/rand/actions)
4[![Latest version](https://img.shields.io/crates/v/rand_chacha.svg)](https://crates.io/crates/rand_chacha)
5[![Book](https://img.shields.io/badge/book-master-yellow.svg)](https://rust-random.github.io/book/)
6[![API](https://img.shields.io/badge/api-master-yellow.svg)](https://rust-random.github.io/rand/rand_chacha)
7[![API](https://docs.rs/rand_chacha/badge.svg)](https://docs.rs/rand_chacha)
8[![Minimum rustc version](https://img.shields.io/badge/rustc-1.36+-lightgray.svg)](https://github.com/rust-random/rand#rust-version-requirements)
9
10A cryptographically secure random number generator that uses the ChaCha
11algorithm.
12
13ChaCha is a stream cipher designed by Daniel J. Bernstein[^1], that we use
14as an RNG. It is an improved variant of the Salsa20 cipher family, which was
15selected as one of the "stream ciphers suitable for widespread adoption" by
16eSTREAM[^2].
17
18The RNGs provided by this crate are implemented via the fast stream ciphers of
19the [`c2-chacha`](https://crates.io/crates/c2-chacha) crate.
20
21Links:
22
23-   [API documentation (master)](https://rust-random.github.io/rand/rand_chacha)
24-   [API documentation (docs.rs)](https://docs.rs/rand_chacha)
25-   [Changelog](https://github.com/rust-random/rand/blob/master/rand_chacha/CHANGELOG.md)
26
27[rand]: https://crates.io/crates/rand
28[^1]: D. J. Bernstein, [*ChaCha, a variant of Salsa20*](
29      https://cr.yp.to/chacha.html)
30
31[^2]: [eSTREAM: the ECRYPT Stream Cipher Project](
32      http://www.ecrypt.eu.org/stream/)
33
34
35## Crate Features
36
37`rand_chacha` is `no_std` compatible when disabling default features; the `std`
38feature can be explicitly required to re-enable `std` support. Using `std`
39allows detection of CPU features and thus better optimisation.
40
41
42# License
43
44`rand_chacha` is distributed under the terms of both the MIT license and the
45Apache License (Version 2.0).
46
47See [LICENSE-APACHE](LICENSE-APACHE) and [LICENSE-MIT](LICENSE-MIT), and
48[COPYRIGHT](COPYRIGHT) for details.
49