我正在寻找一种在FPGA中生成随机数的方法,用作加密应用程序的IV。但是,到目前为止,我在Stackoverflow上找到的类似问题的答案会从“固定SEED”中生成随机数,这些数据根本不适用于加密应用程序。指向其中两个答案的指针如下: -
Random number generation on Spartan-3E 和 How to generate pseudo random number in FPGA?
希望社区从这方面得到一些有用的答案! 感谢
答案 0 :(得分:2)
问题在于您需要一些随机熵才能生成加密安全伪数生成器(CSPRNG)。这通常是通过使用来自操作系统的部分实时事件获得的,其中可能包括中断时间和攻击者难以影响的其他困难事件。
孤立的FPGA不具备这种熵源。
还有几种方法可以创建真随机数生成器,例如使用多个自由运行的振荡器。