问题标签 [random-seed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 为什么这些随机种子会打印“Hello World”?
使用这些随机种子值会生成'Hello Word'
,但为什么呢?
random - 种子伪随机数生成器
我正在开发一个基于种子整数和其他两个整数的 Perlin 噪声生成器:x 和 y。
到目前为止,伪随机数生成器如下所示:
但是这种实现存在一些问题:首先,返回间隔不是恒定的(理想情况下,我想使用 [-1, 1] 或 [0, 1]),对于负 x 和 y 值,图案变得块状,看起来一点也不有机。有没有办法改变我的公式(或者可能是一个全新的公式)来满足我的需要?
c++ - 如何在不同的线程中随机播种
我有一个多线程 C++ 应用程序,每个线程中需要许多随机数。
在 C++11 之前,我使用了一个“随机化器”,它使用函数在主线程中生成一些随机rand()
数,并将不同的随机数传递给每个子线程。然后,所有子线程加入主线程,再次使用随机化器并调用新的子线程,依此类推N
。
现在,我想rand()
用 C++11 替换,以避免随机化器并在每个线程中生成随机数。
我想播种随机数生成器,这样:*种子序列从运行到运行*每个线程中的随机数序列因线程而异(如果线程在不同的循环中调用)
我想像这样播种:
这对我有好处,因为this_thread::get_id().hash()
它是一个“随机”数字,但有时,在不同的循环中,我可以获得相同的 id。
如何随机播种随机数生成器以避免在某些线程中获得相同的随机数序列?
java - 跨版本和平台的一致随机数
我需要/想要获得用于密码生成的随机(嗯,不完全)数字。
我做什么:目前我正在使用SecureRandom生成它们。
我正在获取对象
然后像这样播种
目标:一种(最好是快速)创建随机数的方法,它在加密上至少与 SHA1PRNG SecureRandom 实现一样安全。这些在 JRE 和 Android 的不同版本上需要相同。
编辑:种子是从用户输入生成的。
问题:SecureRandom.getInstance("SHA1PRNG", "SUN");
它会像这样失败:
java.security.NoSuchProviderException: SUN
. 省略, "SUN"
会产生随机数,但这些与默认(JRE 7) 数字不同。
问题:我怎样才能实现我的目标?
您不希望它是可预测的:我想要,因为我需要可预测性,以便相同的先决条件产生相同的输出。如果它们不一样,那么很难做到 用户对应用程序的期望。
编辑:通过可预测我的意思是,当知道一个字节(或一百个)时,你不应该能够预测下一个字节,但是当你知道种子时,你应该能够预测第一个字节(以及所有其他字节)。也许另一个词是可重现的。
如果有人知道更直观的方法,请告诉我!
java - 在java中按键播种的PRNG
我需要使用密钥伪随机地创建数字。key 是一个转换为字节数组的字符串。这就是我想出的:
此代码取自 RC4 的 PRNG 并进行了修改。它没有按预期工作,值正在重复。
vb.net - 带有种子但反向的 Visual Basic 随机数
我希望使用种子生成 1 到 26 之间的随机数,但是当我为函数提供相同的种子时,我希望得到相同的数字。
Rnd
andRandomize
函数不适合这种情况,因为它们总是返回一个完全随机的数,而不管种子如何。
c# - 种子中的随机数
我有一个应用程序,如果我的程序使用具有基于其种子的模式的 RNG,它会变得非常引人注目,因为它基于景观的 x 坐标构建景观。虽然Random
如果你Next()
每次都打电话的话效果很好,但我每次使用相同的输入时都需要能够有相同的输出,因此不能依赖Next()
. 相反,我尝试简单地Random
每次使用输入种子创建一个新的。我知道,这不是一个好主意,它表明了。模式非常明显,高低交替,整个景观的整体趋势明显。我不想每次都制作新的生成器,但即便如此,我还是研究了密码安全RandomNumberGenerator
看看我是否至少可以暂时使用它。不过,正如预期的那样,我无法播种,让我没有任何可重现的输出(这正是 的重点RandomNumberGenerator
)。
简而言之,两种常见的 RNG 似乎都不适合我的目的。我需要能够接受一个数字并根据该值返回一个随机数,而输出中没有明显的模式。是否有其他方法可以使用上述两种方法,或者我之前没有使用过的第三种方法更适合我的目的?
为清楚起见,我尝试编写的方法如下所示:
每次给出相同的值时都会返回相同的值input
。
c# - 跨系统的确定性随机数生成
我需要向分布式应用程序网络发送相同的随机数序列。
由于这样的序列可能很长,我正在考虑只发送一个(随机生成的)集中种子初始化编号和所需序列的长度。
鉴于接收方的每个组件都将使用相同的 .NET 版本,在我的所有节点上生成相同的随机数据是否是一个可行的解决方案?
java - Java中的随机种子Math.random
在我的代码中,我在不同的类中使用随机数。如何定义随机种子?我可以为主代码中的所有类定义这个种子吗?
java - 保密 SecureRandom (SHA1PRNG) 种子 - 在播种前计算哈希?
我将 SecureRandom 与 SHA1PRNG 一起使用来生成随机序列。我不会让 SecureRandom 自己播种,我使用自己的价值观来播种。(请不要告诉我这是不安全的,我这样做是有原因的)。
但是,我不想让任何人知道我用的是什么种子。种子必须保密,并且不能从随机序列中重新计算种子。
从我的值计算 SHA-512 并用它播种 SecureRandom 是否有意义?还是 SecureRandom 从种子本身创建一个 SHA1 哈希?
长话短说:如果我想对“值”保密,我应该使用“值”.getBytes() 还是使用“值”的 SHA-512 哈希来播种 SecureRandom?
我在哪里可以找到 SHA1PRNG 算法如何工作的信息?