83 releases (30 stable)
| 4.0.0 | Dec 11, 2025 |
|---|---|
| 3.4.5 | Oct 24, 2025 |
| 3.4.4 | Apr 21, 2025 |
| 3.4.2 | Dec 4, 2024 |
| 0.6.0 | Nov 10, 2020 |
#874 in Algorithms
361,693 downloads per month
Used in 345 crates
(5 directly)
11KB
96 lines
Capability-based random number generators
This corresponds to rand.
Capability-based APIs represent access to external resources as values which can be passed around between different parts of a program.
Two notable features are the OsRng and CapRng types, which
wrap up access to the operating system entropy source in capability
values.
This crate uses the existing rand::SeedableRng trait rather than having
its own version, however while rand::SeedableRng is mostly just a pure
interface, it provides a from_entropy function which directly reads
from the operating system entropy source. To preserve the
capability-based interface, avoid using rand::SeedableRng's
from_entropy function on any of the types that implement that trait; use
std_rng_from_entropy instead.
The cap-rand crate provides a capability-based interface to random number
generators via the rand crate.
Dependencies
~1.5MB
~26K SLoC