Expand description

License BSD-2-Clause License MIT docs.rs crates.io Download numbers AppVeyor CI dependency status

osrandom

Welcome to osrandom 🎉

This crate provides access to your operating system’s cryptographically secure random number generator.

APIs used

The following native APIs are used:

  • macOS/iOS: SecRandomCopyBytes from the security framework
  • FreeBSD/OpenBSD/NetBSD: arc4random_buf (which does not use ARC4 anymore but a secure PRF like ChaCha20)
  • Windows: CryptGenRandom with PROV_RSA_FULL as provider
  • Linux-GNU: getrandom for glibc versions >= 2.25 or /dev/urandom for ancient distributions
  • Linux-MUSL: /dev/urandom for ancient distributions

Functions

Returns the name of the underlying provider

Creates a LEN-sized array filled with crpytographically secure random bytes

Fills the given slice with crpytographically secure random bytes

Creates a len-sized vec filled with crpytographically secure random bytes