如何预测随机数?

时间:2016-02-16 14:09:44

标签: random lua

如果我知道随机生成器的种子是当前的unix时间:

math.randomseed(os.time())

我可以预测math.random的下一个结果是什么吗?

我使用math.random(6)(1-6之间的数字)

我可以创建一个脚本,使用这个逻辑向我显示10秒钟内的随机数吗?

基本上我想知道是否有办法在Lua中重新创建math.random并对其进行逆向工程?

1 个答案:

答案 0 :(得分:2)

如果您知道他们为生成器播种的确切时间(os.time()第二次返回,并且它必须完全相同),并且在同一平台上运行Lua,那么您可以简单地执行:

math.randomseed(time_that_you_know)
math.random(6)

你的答案与他们的答案相同;这就是pRNG的工作方式。