阅读Ruby Doc 2.3.0,其中陈述了Ruby代码用于生成随机数的策略。
但是看2.3.0来源我没有看到任何使用/dev/urandom
的迹象。
Atleast 2.2.2有/dev/urandom
逻辑。
如果我错了,请纠正我。我只是帮助自己了解Ruby中是如何生成随机数的。
答案 0 :(得分:0)
您必须查看可在random.c
中找到的Random.raw_seed
实施。
由于文档没有提到它:在尝试从/dev/urandom
读取之前,代码尝试在最近的Linux版本上调用getrandom(2)
(请参阅fill_random_bytes()
)。