Revision f2c68fb4009ad058aa5c7d3dfeb2c3b989638614 authored by swift-ci on 17 March 2023, 03:05:27 UTC, committed by GitHub on 17 March 2023, 03:05:27 UTC
2 parent s ca5acf3 + e6ef0c8
Raw File
Random.md
# Random APIs

More documentation to come.

## Platform-Specific Default Random

The implementation of the default random generator varies by platform. The implementation
on each platform must be thread-safe and automatically seeded, and should be
cryptographically secure to the extent possible. Currently supported platforms have the
following implementation details:

- Apple platforms use `arc4random_buf(3)`.
- Linux, FreeBSD, and other UNIX-like platforms use `getrandom(2)` when available;
otherwise, they read from `/dev/urandom`.
- Fuchsia platforms use `getentropy(3)`.
- Windows platforms use `BCryptGenRandom`.
back to top