Back to results
US 9,311,051 B2Granted
Hardware random number generator
AssigneeAdvanced Micro Devices, Inc.
InventorsDavid A. Kaplan, Winthrop J. Wu
Life of this patent
Estimating the term…
Abstract
A random number generator may include an input configured to receive a plurality of entropy bits generated by an entropy source of a random number generator, wherein the random number generator is configured to generate a plurality of random numbers; and an entropy health monitor coupled with the input, wherein the entropy health monitor is configured to perform a corrective action based on the plurality of entropy bits.
Claims20
An apparatus, comprising:
- an input configured to receive a plurality of entropy bits generated by an entropy source of a random number generator, wherein the random number generator is configured to generate a plurality of random numbers;
- and
- a hardware entropy health monitor coupled with the input, wherein the entropy health monitor comprises:
- a plurality of health check blocks, wherein a first health check block of the plurality of health check blocks is configured to generate a first health check error based on a subset including fewer than all of the plurality of entropy bits, and wherein a second health check block of the plurality of health check blocks is configured to generate a second health check error based on all of the plurality of entropy bits, and
- an error counter configured to store a number of health check errors generated by the plurality of health check blocks, wherein the entropy health monitor is configured to perform a corrective action in response to the number of health check errors exceeding an error limit.
2 more elements
A hardware random number generator, comprising:
- an entropy source configured to generate a plurality of entropy bits;
- an entropy accumulator coupled with the entropy source, wherein the entropy accumulator is configured to update a seed value based on the plurality of entropy bits;
- a deterministic random bit generator coupled with the entropy accumulator, wherein the deterministic random bit generator is configured to generate one or more final random numbers based on the updated seed value;
- and
- an entropy health monitor coupled with the entropy source, wherein the entropy health monitor comprises:
- a plurality of health check blocks, wherein a first health check block of the plurality of health check blocks is configured to generate a first health check error based on a subset including fewer than all of the plurality of entropy bits, and wherein a second health check block of the plurality of health check blocks is configured to generate a second health check error based on all of the plurality of entropy bits, and
- an error counter configured to store a number of health check errors generated by the plurality of health check blocks, wherein the entropy health monitor is configured to perform a corrective action in response to the number of health check errors exceeding an error limit.
4 more elements
A method of generating a random number, comprising:
- receiving from an entropy source a plurality of entropy bits;
- generating a plurality of final random numbers based on the plurality of entropy bits;
- generating a first health check error based on a subset including fewer than all of the plurality of entropy bits;
- generating a second health check error based on all of the plurality of entropy bits;
- and
- in response to a number of the health check errors generated exceeding an error limit, inhibiting output of at least one of the plurality of final random numbers based on the plurality of entropy bits.
3 more elements
Dependencies are inferred from the claim text.