[cryptography] Intel RNG
cloos at jhcloos.com
Sat Jun 18 02:11:08 EDT 2011
>>>>> "PG" == Peter Gutmann <pgut001 at cs.auckland.ac.nz> writes:
PG> Does this mean it's unavailable in 32-bit mode?
Unlikely; see below.
PG> What does the notation "0F C7 /6" indicate in terms of encoding? It
PG> looks like RdRand r16 and r32 have the same encoding, or do you
PG> encode (for example) r16 vs. r32 in whatever the "/6" signifies?
PG> How would you encode, for example, 'RdRand eax'?
AIUI, when the 32-bit and 16-bit versions have the same opcode, that
generally means that when the cpu is in 16-bit mode (such as when running
venerable DOS or the BIOS) that opcode works on 16-bit registers and
when the processor is in 32-bit or 64-bit mode that same opcode works
on 32-bit registers.
>From p 8-15 of 319433-011.pdf, I presume that the assembly would look like;
RDRAND eax ; randomize 32-bit register eax
RDRAND rdx ; randomize 64-bit register rax
and, in 16-bit code:
RDRAND al ; randomize 16-bit register al
James Cloos <cloos at jhcloos.com> OpenPGP: 1024D/ED7DAEA6
More information about the cryptography