使用SecureRandom.getInstance("SHA1PRNG") 发现初始化极慢,改进办法
Posted good_night
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用SecureRandom.getInstance("SHA1PRNG") 发现初始化极慢,改进办法相关的知识,希望对你有一定的参考价值。
在项目中用到了随机数,使用了SecureRandom.getInstance("SHA1PRNG"),发现首次运行,时间极长。
当然,以上说的情况,是Linux环境。
在我本地运行并不慢,本地是Windows环境。
查了一些资料,可参考http://blog.csdn.net/xiaojsj111/article/details/24366127
其中并没有说解决办法,我的解决办法如下:
1.修改Linux的JVM环境,打开$JAVA_PATH/jre/lib/security/java.security这个文件,找到下面的内容
securerandom.source=file:/dev/random
替换为
securerandom.source=file:/dev/./urandom
查看本地环境后,竟然发现使用的是urandom,原因大致可概括为Linux与Windows环境不一样。
涨知识。
以上是关于使用SecureRandom.getInstance("SHA1PRNG") 发现初始化极慢,改进办法的主要内容,如果未能解决你的问题,请参考以下文章
在使用加载数据流步骤的猪中,使用(使用 PigStorage)和不使用它有啥区别?
Qt静态编译时使用OpenSSL有三种方式(不使用,动态使用,静态使用,默认是动态使用)