rustc/vendor/getrandom
2024-06-14 12:43:07 +02:00
..
benches New upstream version 1.71.1+dfsg1 2024-05-08 17:27:53 +02:00
src New upstream version 1.76.0+dfsg1 2024-06-14 12:43:07 +02:00
tests New upstream version 1.71.1+dfsg1 2024-05-08 17:27:53 +02:00
.cargo-checksum.json New upstream version 1.76.0+dfsg1 2024-06-14 12:43:07 +02:00
Cargo.toml New upstream version 1.76.0+dfsg1 2024-06-14 12:43:07 +02:00
CHANGELOG.md New upstream version 1.76.0+dfsg1 2024-06-14 12:43:07 +02:00
LICENSE-APACHE New upstream version 1.52.1+dfsg1 2021-05-14 18:42:13 +01:00
LICENSE-MIT New upstream version 1.52.1+dfsg1 2021-05-14 18:42:13 +01:00
README.md New upstream version 1.76.0+dfsg1 2024-06-14 12:43:07 +02:00
SECURITY.md New upstream version 1.72.1+dfsg1 2024-05-23 21:15:29 +02:00

getrandom

Build Status Crate Documentation Dependency Status Downloads License

A Rust library for retrieving random data from (operating) system sources. It is assumed that the system always provides high-quality cryptographically secure random data, ideally backed by hardware entropy sources. This crate derives its name from Linux's getrandom function, but is cross-platform, roughly supporting the same set of platforms as Rust's std lib.

This is a low-level API. Most users should prefer using high-level random-number library like rand.

Usage

Add this to your Cargo.toml:

[dependencies]
getrandom = "0.2"

Then invoke the getrandom function:

fn get_random_buf() -> Result<[u8; 32], getrandom::Error> {
    let mut buf = [0u8; 32];
    getrandom::getrandom(&mut buf)?;
    Ok(buf)
}

For more information about supported targets, entropy sources, no_std targets, crate features, WASM support and Custom RNGs see the getrandom documentation and getrandom::Error documentation.

Minimum Supported Rust Version

This crate requires Rust 1.36.0 or later.

License

The getrandom library is distributed under either of

at your option.