使用java.security.SecureRandom
SecureRandom random = new SecureRandom();
byte bytes[] = new byte[20];
random.nextBytes(bytes);
将根据
http://docs.oracle.com/javase/7/docs/api/java/security/SecureRandom.html
使用NativePRNG的系统实现生成随机字节。
Java运行时如何知道系统在这个实现中的位置?在GNU / Linux上,它通常是/ dev / random,但在Windows上并非如此。在某处有配置文件吗?
由于
答案 0 :(得分:1)
通过检查SecureRandom.java的源代码可以收集以下信息,该源代码随
使用来源,卢克!
Java运行时如何知道系统在这个实现中的位置?
这是JDK的平台特定部分。
SecureRandom
枚举已注册的java.security.Provider
个实例,查找提供java.security.Provider.Service
类型"SecureRandom"
的实例。
JDK通常附带一个内部默认安全提供程序,它以特定于平台的方式实现它。
如果找不到任何内容,则会回退到纯java SHA1PRNG。