【问题标题】:how to generate a non-pseudo random number in .net on windows [duplicate]如何在Windows上的.net中生成非伪随机数[重复]
【发布时间】:2022-01-21 00:54:15
【问题描述】:

如何在 Azure Windows 10 Pro 虚拟机上运行的 .Net Framework(最新)中生成非伪(即真正的)随机数?

显然,它必须通过某些外部变体的功能定期自我播种,例如操作系统内的某些计数器,例如 Internet 事件计数,或某些用户操作/输入计数或其他。

【问题讨论】:

  • 非prng为什么需要播种?如果你有一个真正的随机数生成器,那就去使用它吧。
  • System.Random()你可以在这里给一个种子“重置”它。有RNGCryptoServiceProvider()可以生成更安全的随机字节和数字。
  • 你说的非伪随机数是什么意思?你的意思是确定性数字吗?还是由外部噪声产生的真正随机数?或者一个技术上的伪随机数,但质量比System.Random 更高? 你看到How can I generate truly (not pseudo) random numbers with C#? 了吗?如果这不能回答您的问题,那么在 Azure VM 上运行时是否存在一些特定的困难,例如获得随机种子?
  • DanielTuzes:我的意思是非伪必须自播。 dbc:是的,确实是随机的。

标签: c# .net windows vb.net random-seed


【解决方案1】:

RNGCryptoServiceProvider() 显然是来自外部变体的自播。我会用它。我希望它很快。

【讨论】:

    猜你喜欢
    • 2018-03-20
    • 2011-01-05
    • 1970-01-01
    • 2011-11-24
    • 2013-04-06
    • 1970-01-01
    相关资源
    最近更新 更多