java - 如何用种子生成 key ?

标签 java random key

我需要使用种子(字节数组)为我的算法生成一个 key 。此代码不起作用,因为它在不同平台上给出了 2 个不同的结果:

byte seed [] = {50,30,...};
byte result [] = new byte [20];
SecureRandom rand = new SecureRandom();
rand.setSeed(seed);
rand.nextBytes(result);

我需要在不同平台上获得相同的结果。

最佳答案

使用 SHA1PRNG 算法而不是 NativePRNG。

SecureRandom rand = SecureRandom.getInstance("SHA1PRNG");
rand.setSeed(seed);
rand.nextBytes(result);

关于java - 如何用种子生成 key ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30184912/

相关文章:

java - Oracle XML 解析与 Java XML 解析

java - 具有 XMLBeans 数据绑定(bind)的 Axis2 - 从具有任何类型的 XSD 架构生成的 Java 客户端出现问题

r - 如果用户没有设置,如何选择种子?

javascript - 使用 jQuery 循环随机 JSON 条目

perl 确定 URL SSL 证书 key 长度

java - 如何通过 Intellij 自动修复 FinalLocalVariable 和 FinalParameters 的 checkstyle 警告

java - 如何在 eclipse/Android 中使用 --core-library 选项

C++ : Read random line from text file

PHP Array - 将数组值转换为键

xsd - XSD 中的可选 key