原因(个人理解,可能有误,未深究):
SecureRandom为了成为一个密码安全的伪随机数发生器,熵池要有尽可能大的输出。当熵池为空时,这个噪声数据的收集是比较花时间的。安全性要求高的场景不适用。
解决:
查看Jdk安装路径:
which java
/usr/local/jdk1.7.0_80/bin/java
cd /usr/local/jdk1.7.0_80
cd jre/lib/security/
root用户
vi java.security
securerandom.source=file:/dev/urandom
替换成
securerandom.source=file:/dev/./urandom