32个版本
0.2.15 | 2024年5月6日 |
---|---|
0.2.12 | 2024年1月9日 |
0.2.11 | 2023年11月8日 |
0.2.10 | 2023年6月6日 |
0.1.0 | 2019年3月23日 |
#2 in 操作系统
每月下载量:12,502,044
用于 27,545 个crate(1,020 直接使用)
79KB
987 行
getrandom
一个用于从(操作)系统源获取随机数据的Rust库。假设系统总是提供高质量的加密安全随机数据,理想情况下由硬件熵源支持。该crate的名称来源于Linux的getrandom
函数,但它是跨平台的,大致支持与Rust的std
库相同的平台集合。
这是一个低级API。大多数用户应该优先使用高级随机数库,如rand
。
用法
将其添加到您的Cargo.toml
[dependencies]
getrandom = "0.2"
然后调用getrandom
函数
fn get_random_buf() -> Result<[u8; 32], getrandom::Error> {
let mut buf = [0u8; 32];
getrandom::getrandom(&mut buf)?;
Ok(buf)
}
有关支持的目标、熵源、no_std
目标、crate功能、WASM支持和自定义RNG的更多信息,请参阅getrandom
文档和getrandom::Error
文档。
最低支持的Rust版本
此crate需要Rust 1.36.0或更高版本。
平台支持
此crate通常支持与Rust标准库相同的操作系统和平台版本。可以使用可插拔的自定义实现支持其他目标。
这意味着随着Rust在稳定版本中取消对旧操作系统版本(如旧Linux内核版本、Android API级别等)的支持,getrandom
可能会创建新的补丁版本(0.N.x
),以取消对过时平台版本的支持。
许可证
getrandom
库根据您的选择,可以分发给
。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您提交的任何旨在包含在作品中的贡献都将双重授权,如上所述,没有任何附加条款或条件。
依赖项
~2–710KB
~13K SLoC