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:
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.
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804