Tag: 随机种子

我在哪里可以得到可靠的熵源(真正的随机字节)?

目前,我正在寻找一种方法来提高我的Android应用程序(纸牌游戏) 的随机性质量 。 以前,据估计,对于我的情况(52!置换),需要至少226位熵(226个随机位)。 我打算使用这个byte[]作为SecureRandom的种子: SecureRandom random = new SecureRandom(); random.setSeed(/* insert seed here, byte[] */) 问题是 – 在Android上哪里可以可靠地获得此数量的随机位(至少226位),最好不需要任何权限和没有互联网。 此外,无论设备和API级别如何,它都应该工作。

在Math.random()上设置种子

我需要在调用Math.random() Java代码上编写一些junit测试。 我知道如果我实例化自己的Random对象以产生可重复的结果,我可以设置种子。 有没有办法为Math.random()做到这一点?

有没有办法从一系列数字中生成种子?

例如,如果java通过使用23作为种子产生伪随机序列: 9 3 2 5 6 ,我该如何进行反演? 即从序列中获得23 个3 3 2 5 6 。 或者我如何为特定序列分配种子? 如果有数据库则很容易 – 只需为序列分配一个随机密钥 INSERT INTO SEQUENCE_TABLE VALUES (RANDOM_KEY, SEQUENCE) 但是,如果我不被允许使用数据库,是否有一个公式来做这样的事情?

如何从Java中的Random中获取种子?

我正在为某个对象创建一个深层克隆。 该对象包含一个Random 。 从Random检索种子是一种好习惯吗? 如果是这样,怎么样? 没有Random.getSeed() 。

Java中的随机种子Math.random

在我的代码中,我使用不同类中的随机数。 如何定义随机种子? 我可以为主代码中的所有类定义此种子吗? double rnd = Math.random();