<p>Although this thread is pretty old, I came across a paper about Intel Secure Key that describes its random number generation, security, and performance aspects.  The full paper is here (<a href="http://iopscience.iop.org/article/10.3847/1538-4357/aa7ede/meta;jsessionid=A9DA9DDB925E6522D058F3CEEC7D0B21.ip-10-40-2-120" rel="nofollow noreferrer">http://iopscience.iop.org/article/10.3847/1538-4357/aa7ede/meta;jsessionid=A9DA9DDB925E6522D058F3CEEC7D0B21.ip-10-40-2-120</a>), but the non-paywalled version is here (<a href="https://arxiv.org/abs/1707.02212" rel="nofollow noreferrer">https://arxiv.org/abs/1707.02212</a>).</p>

<p>In short, the best technology we have for random number generation is Intel Secure Key, which uses the RdRand and RdSeed instruction sets.  It is a cryptographically-secure pseudorandom number generator that uses an on-chip entropy source to randomly seed the number generator.  Its fully compliant with up-to-date security specs such as NIST SP800-90Ar1/B/C, FIPS-140-2, and ANSI X9.82.</p>
Implementing security on the chip level
<p>With Intel's recent purchase of a well known security company, I'm starting to think about what software w/could be more secure on a chip level. Examples I've come up with are: </p>

<ul>
<li>Random number generation</li>
<li>Encryption</li>
<li>Memory protection</li>
</ul>

<p>But is hardware level security any more secure than software based security? ( I would assume garbage in garbage out no matter what level you operate at) What are the design considerations for embedded security? What are the limitations? Finally, do you have any good resources for learning more about the topic?</p>