What is Intel® Secure Key Technology?

ID 662550
Updated 5/14/2012
Version Latest




Intel® Secure Key, was previously code-named Bull Mountain Technology. It is the Intel® name for the Intel® 64 and IA-32 Architectures instruction RDRAND and its underlying Digital Random Number Generator (DRNG) hardware implementation. Among other things, the DRNG using the RDRAND instruction is useful for generating high-quality keys for cryptographic protocols.

Because this technology recently launched (May 2012) with the Intel® 3rd Generation Core™ processors (code-named Ivy Bridge) the Bull Mountain Software Implementation Guide has been renamed to the Intel® Digital Random Number Generator Software Implementation Guide.

About the Intel® DRNG Software Implementation Guide:

This technology is documented and described in the Intel® Digital Random Number Generator Software Implementation Guide. It is intended to provide a complete source of technical information on the RDRAND Instruction usage, including code examples.  Here is a recap of what this guide covers:

    • Random Number Generator (RNG) Basics and Introduction to the DRNG. This guide describes the nature of an RNG and its pseudo- (PRNG) and true- (TRNG) implementation variants, including modern cascade construction RNGs. We then present the DRNG's position within this broader taxonomy.


    • A technical overview of the DRNG, including its component architecture, robustness features, manner of access, performance, and power requirements.


    • RDRAND Instruction usage, providing reference information on the RDRAND instruction and code examples showing its use. This includes RDRAND platform support verification and suggestions on DRNG-based libraries.

This Software Implementation Guide is designed to serve a variety of readers. Software Developers who already understand the nature of RNGs may skip the first 3 sections and simply refer to the RDRAND instruction reference and code examples.

Here is the link for the  Intel® Digital Random Number Generator (DRNG) Software Implementation Guide.

Questions?  Please visit our forum and start a discussion.