Subject: Re: [boost] Boost.Uuid and header-only support
From: James E. King, III (jking_at_[hidden])
Date: 2017-11-06 13:26:02
On Mon, Nov 6, 2017 at 7:49 AM, Peter Dimov via Boost <boost_at_[hidden]
> Paul A. Bristow wrote:
>> > I have been following this erudite discussion with interest, but >
>> > Without wishing to add even more entropy, may I suggest that adding
>> more > options is rarely a bad thing, but it creates an even more
>> bewildering > set of options for the user (for UUID, I fear as ignorant as
>> That is why I'd like the default generator to do the right thing and
>> doing the wrong thing to be harder and not be presented as an equivalent...
> ... or more "optimal"...
I'm planning to change random_generator to use the header-only
based on points made in this discussion:
1. It is more secure.
2. I believe it is the most widely used use case: generating a uuid
(i.e. not in bulk).
Therefore it will look something like this:
// The default random_generator uses operating-system provided entropy,
// is the most secure, and fastest random uuid generator for creating a
// small number of uuids with a single generator because it does not need
// expensive seeding to be effective like a PseudoRandomNumberGenerator
// The bulk generator uses a mersenne twister to make random uuid
// many uuids from a single generator more efficient, at the expense of
// and guaranteed randomness.
typedef basic_random_generator<mt19937> random_generator_bulk;
This is a breaking change for anyone providing their own mersenne twister
random_generator constructors that take a UniformRandomNumberGenerator.
I expect this would be quite rare, and in that case one could switch to
Please correct me if I misinterpreted anything.
I'll have a PR into my fork for a dry-run through CI later today and I'll
post the link here.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk