3

到目前为止,我知道 TPM 正在使用热噪声来生成真正的随机数。但我也确信 TPM 使用了更多的熵源。因为击键时间、驱动器寻道时间或时钟抖动都是可能的。但是 TPM 使用哪些来源?它如何将它们转换为真正的随机数?

4

1 回答 1

1

可以在规范中阅读 TPM 的随机数生成器的外观。对于 TPM 1.2,我链接了这个 PDF:第 1 部分设计原则

当您查看第4.2.5 节随机数生成器时,您会很好地了解它通常是如何工作的。但是,某个 TPM 的 RNG 如何工作是一个实现细节,取决于制造商。但是,规范提到了一些可能的熵源:

来源类型可能包括噪音、时钟变化、空气流动和其他类型的事件

使用状态机和混合函数完成向随机数的转换。同样,实施是特定于供应商的。我引用:

RNG 由一个接受和混合不可预测数据的状态机和一个具有单向功能(例如SHA-1)的后处理器组成。设计背后的想法是,TPM 可以成为很好的随机源,而无需真正的硬件熵源。

于 2016-01-13T23:13:21.380 回答