It is relatively well known that Ivy Bridge CPUs (Core iX 3XXX) have
built-in hardware random number generator, which is claimed to be both
very fast and high quality. Generator is accessible using non-privileged
RDRAND instruction. It is claimed that CPU performs sanitization of the
random sequence. In particular, it seems that paranoid AES encryption of
the raw random stream, performed by our padlock driver, is not needed
for Bull Mountain (there are hints that hardware performs it already).

See
http://spectrum.ieee.org/computing/hardware/behind-intels-new-randomnumber-generator/0
http://software.intel.com/en-us/articles/intel-digital-random-number-generator-drng-software-implementation-guide/
and IA32 ADM.

Patch at
http://people.freebsd.org/~kib/misc/bull_mountain.2.patch
implements support for the generator. I do not own any IvyBridge machines,
so I cannot test. Patch makes both padlock and bull generators the options,
you need to enable IVY_RNG to get support for the generator.

I would be interested in seeing reports including verbose boot dmesg,
and some tests of /dev/random quality on the IvyBridge machines, you can
start with http://lists.gnupg.org/pipermail/gnupg-devel/2000-March/016328.html.

Thanks.

Attachment: pgpWI1zFeuN0l.pgp
Description: PGP signature

Reply via email to