linux 内核长期以来一直尊重“nordrand”内核参数,以禁用内核使用英特尔 rdrand 和 rdseed 指令(如果不信任它们)——出于安全考虑,它们可能会被供应商破坏或遇到硬件/固件问题rdrand 用法。但 linux 内核正准备放弃该内核参数,鼓励用户使用更通用的“random.trust_cpu”参数。
wireguard 的 jason donenfeld 继续致力于清理 linux 内核的随机/rng 代码。他对这个兔子洞的最新工作是删除“nordrand”标志,以鼓励用户使用更通用的“random.trust_cpu”参数来指示他们是否信任他们的 cpu 的硬件 rng 支持。
目前在 random.git 中排队:
“nordrand”标志是在 rdrand 的早期添加的,当时人们担心仅仅使用它的值可能会损害 rng。然而,这些天来,rdrand 值不再直接使用,而是总是通过 rng 的哈希函数,使得“nordrand”不再有用。
相反,正确的开关是“random.trust_cpu”,它不仅直接处理相关的信任问题,而且对多种 cpu 类型通用,而不仅仅是 x86。
但是,x86 rdrand 确实有偶尔出现问题的历史。之前,当内核注意到一些奇怪的事情时,它会在 dmesg 中发出警告并建议启用“nordrand”。我们可以通过改进测试来改进这一点,然后在我们检测到它时采取自动禁用 rdrand 的步骤’
除了 rdrand 之外,还将基本健全性测试扩展到 rdseed,如果其中一个失败,则禁用两者。
使用 rdrand 改进的测试失败检测非常有用,因为偶尔用户,特别是 amd 方面的用户报告了各种 rdrand 问题。 用于指示您不信任 cpu 的 rng
的通用random.trust_cpu=0支持早在 2018 年就已添加到内核中。
十年前,rdrand “bull mountain” 凭借 ivy bridge 在英特尔方面首次亮相。
鉴于 random.git 中补丁的时间安排,它可能会作为 linux 5.20 的随机更改的一部分发送。
未经允许不得转载:ag凯发k8国际 » linux 放弃“nordrand”选项——用户应该改用“random.trust_cpu”