From: degski (degski_at_[hidden])
Date: 2020-06-17 20:52:30


On Wed, 17 Jun 2020 at 09:53, Paul A Bristow via Boost <
boost_at_[hidden]> wrote:

> I have wanted to use boost::random::random_device; as a seeder for my
> generator.
>
> #include <boost/random/random_device.hpp> // For
> boost::random::random_device; seeder
>
> But using this requires that I link to a library file
> // LINK : fatal error LNK1104: cannot open file
> 'libboost_random-vc142-mt-gd-x64-1_73.lib'
>
> So I have instead used C++ std random device successfully
>
> using std::random_device;
> random_device seeder;
> // Use seeder to get a different set of values each time.
> static boost::random::mt19937 gen(seeder()); // uint32_t
>
> But is there any way I can stick to the Boost version (I imagine that it
> might prove more portable?
>

Do you mean mean, more portable than the standard?

I have a *PoC* of a sax::aes_random_device at
https://github.com/degski/aes_random_device .

It is a PoC and also needs research, it is undoubtedly much better than
mt19937, and on Windows/MSVC is faster (~30%) than std::mt19937. The
Crypto-claim needs more code and research related to
backtracking-resistance, there will be no difference to the current
implementation of the hot path. The API is equal to std::random_device.

Alexander Grund has inspected the code and he has given me his feedback,
not all that feedback is (yet) incorporated.

degski