commit | 691216a9ee7f03dc368d7913954af9c48d89957c | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <[email protected]> | Fri Mar 10 05:15:44 2023 +0000 |
committer | Android Build Coastguard Worker <[email protected]> | Fri Mar 10 05:15:44 2023 +0000 |
tree | 34ebe92523b65cd444f0b368644cf41f8dc9d5ec | |
parent | 393e90d29df16eb3517dd9625da5bccb7a730221 [diff] | |
parent | bc8c811019a3e803519ef8088d3a95e3582d959b [diff] |
Snap for 9722771 from bc8c811019a3e803519ef8088d3a95e3582d959b to udc-d1-release Change-Id: I050330164293d081372665d67624132aa3b5eee4
A Rust library for retrieving random data from (operating) system source. It is assumed that 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
.
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.
This crate requires Rust 1.34.0 or later.
The getrandom
library is distributed under either of
at your option.