# Hardware entropy: RDRAND

DevFeed: [Hardware entropy: RDRAND](<https://devfeed.tech/articles/hardware-entropy-rdrand-38923.md>)

Original publisher: [Read original article](<https://idea.popcount.org/2013-03-25-hardware-entropy-rdrand>)

Author: Marek

Published: 2013-03-24T23:00:00Z

Content type: article

Language: en

Sources: [Marek Majkowski](<https://devfeed.tech/sources/marek-majkowski.md>)

Topics: [Randomizer](<https://devfeed.tech/topics/randomizer.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [cpu](<https://devfeed.tech/topics/cpu.md>), [Security](<https://devfeed.tech/topics/security.md>), [intel](<https://devfeed.tech/topics/intel.md>), [Linux Kernel](<https://devfeed.tech/topics/linux-kernel.md>)

Tags: [aes](<https://devfeed.tech/tags/aes.md>), [ansi](<https://devfeed.tech/tags/ansi.md>), [bits](<https://devfeed.tech/tags/bits.md>), [cryptographic](<https://devfeed.tech/tags/cryptographic.md>), [entropy](<https://devfeed.tech/tags/entropy.md>), [fips](<https://devfeed.tech/tags/fips.md>), [generator](<https://devfeed.tech/tags/generator.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [intel](<https://devfeed.tech/tags/intel.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [nist](<https://devfeed.tech/tags/nist.md>), [security](<https://devfeed.tech/tags/security.md>), [time](<https://devfeed.tech/tags/time.md>)

## AI overview

This article explains Intel's RDRAND instruction, which uses an on-processor entropy source and AES conditioning to produce hardware-generated random numbers. It also describes checking the carry flag because RDRAND may temporarily return no data when demand exceeds hardware supply.

## Source excerpt

Hardware entropy: RDRAND This is the third blog post on machine instructions: This time I've noticed instruction. According to Wikipedia is: ... a random number generator that is compliant with security and cryptographic standards such as NIST SP800-90, FIPS 140-2, and ANSI X9.82. The generator uses an on-processor entropy source, which passes the randomly generated bits to an AES (in CBC-MAC mode) conditioner to distill the entropy into non-deterministic random numbers. Sounds good.