java -Djava.security.egd=file:/dev/./urandom用处

centos7.2 启动卡在部署 manager 上 -Djava.security.egd=file:/dev/./urandom

将$JAVA_HOME/jre/lib/security/Java.security内,将securerandom.source的内容改为file:/dev/./urandom即可

Linux或者部分unix系统提供随机数设备是/dev/random 和/dev/urandom ,两个有区别,urandom安全性没有random高,但random需要时间间隔生成随机数。

可能在生成随机数的时候卡住了,导致tomcat启动不了

在服务器启动时也可以加上参数 -Djava.security.egd=file:/dev/./urandom

其中

-Djava.security.egd=file:/dev/random( 这等于默认选项 )
默认算法: NativePRNG
提供程序: SecureRandom.NativePRNG算法来自:SUN

-Djava.security.egd=file:/dev/urandom
默认算法: NativePRNG
提供程序: SecureRandom.NativePRNG算法来自:SUN

-Djava.security.egd=file:/dev/./urandom
默认算法: DRBG
提供者: SecureRandom.DRBG算法来自:SUN

结论:

建议继续使用-Djava.security.egd=file:/dev/./urandom 以确保:

  1. 无论使用什么平台(DRBG),都可以利用最强大的 SecureRandom 实现
  2. 避免使代码意外阻塞(securerandom.source=file:/dev/urandom
posted @ 2021-08-04 16:18  Mr.zzz  阅读(1803)  评论(0编辑  收藏  举报