October 24, 2017 Mir Random v0.2.8 release | ||||
---|---|---|---|---|
| ||||
About package -------------- >Mir-Random [1] is a random number generator library that covers C++ STL [2]. It is compatible with mir.ndslice, std.algorithm, and std.range. In the same time mir.random has its own API, which is more secure and safe compared with std.random. Release v0.2.8 -------------- Additions: - Added xorshift1024*φ and xoroshiro128+ generators [3] (mir.random.engine.xorshift : Xorshift1024StarPhi, Xoroshiro128Plus) - Mt19937 and Mt19937_64 can be seeded from array or ndslice - mir.random.engine.preferHighBits!T to query new optional enum bool preferHighBits Improvements: - When the high bits of a PRNG's output are known to have better statistical properties than the low bits, use high bits when not all bits of output are required. - On macOS, OpenBSD, and NetBSD, use arc4random_buf [4] in unpredictableSeed and genRandomNonBlocking. Bugfixes: - Fix isSaturatedRandomEngine!T not working when T.opCall is a function template. - Fix address-based increment for PCGs in unique_stream mode. - Incorporated upstream fix for seeding a MCG with a seed that's a multiple of the modulus. Links -------------- [1] https://github.com/libmir/mir-random [2] http://en.cppreference.com/w/cpp/numeric/random [3] http://xoroshiro.di.unimi.it/ [4] https://man.openbsd.org/arc4random.3 |
October 24, 2017 Re: Mir Random v0.2.8 release | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nathan S. | On Tuesday, 24 October 2017 at 03:30:19 UTC, Nathan S. wrote:
> - On macOS, OpenBSD, and NetBSD, use arc4random_buf [4] in unpredictableSeed and genRandomNonBlocking.
Since I am not sure whether this is common knowledge, arc4random isn't based on RC4 on these platforms. macOS uses AES, and OpenBSD and NetBSD use ChaCha20.
|
Copyright © 1999-2021 by the D Language Foundation