#random #numbers #getrandom #randomness #generator #verifier

无std getrandom_or_panic

实现了一个RngCore,除非存在getrandom否则会panic

2个版本

0.0.3 2023年11月21日
0.0.2 2023年11月21日
0.0.1 2023年11月21日

密码学 中排名 #403

Download history • Rust 包仓库 34872/week @ 2024-03-14 • Rust 包仓库 41884/week @ 2024-03-21 • Rust 包仓库 42375/week @ 2024-03-28 • Rust 包仓库 52441/week @ 2024-04-04 • Rust 包仓库 46203/week @ 2024-04-11 • Rust 包仓库 41512/week @ 2024-04-18 • Rust 包仓库 36223/week @ 2024-04-25 • Rust 包仓库 33552/week @ 2024-05-02 • Rust 包仓库 32366/week @ 2024-05-09 • Rust 包仓库 32347/week @ 2024-05-16 • Rust 包仓库 45763/week @ 2024-05-23 • Rust 包仓库 42047/week @ 2024-05-30 • Rust 包仓库 30471/week @ 2024-06-06 • Rust 包仓库 35207/week @ 2024-06-13 • Rust 包仓库 37906/week @ 2024-06-20 • Rust 包仓库 26789/week @ 2024-06-27 • Rust 包仓库

每月下载量 137,023
688 个crates中使用(通过 schnorrkel

BSD-3-Clause

4KB

getrandom_or_panic

解决了密码学crates中的一个小的难题

我们希望最终用户签名者和证明者直接依赖getrandom来获取系统随机数,这样用户就不能提供不安全的随机数生成器。

但是,我们需要验证者在没有系统随机性的环境中运行,例如区块链。

理想情况下,我们会通过特性来分离证明者和验证者,但随着crates变得越来越复杂,这样做变得棘手,并且使得为getrandom提供不安全的后端变得诱人。

因此,我们假装系统随机性存在以满足编译器,但如果未调用getrandom则panic。您仍然可以提供不安全的getrandom,但现在您已经被警告了这个潜在的问题。


lib.rs:

返回带有getrandom的OsRng或不带getrandom的panic的CryptoRng

依赖关系

~230KB