0

通读 Ruby Doc 2.3.0,其中说明了 Ruby 代码用于生成随机数的策略。

  • openssl
  • /dev/urandom
  • Win32

但是看2.3.0 Source 我看不到任何/dev/urandom被使用的迹象。

至少2.2.2/dev/urandom逻辑。

如果我错了,请纠正我。我只是在帮助自己理解随机数是如何在 Ruby 中生成的。

4

1 回答 1

0

您必须查看Random.raw_seed可在 中找到的实现random.c

而且由于文档没有提及它:在尝试读取/dev/urandom代码之前尝试调用getrandom(2)最近的 Linux 版本(请参阅 参考资料fill_random_bytes())。

于 2016-05-06T10:09:08.123 回答