已弃用 java.security.egd=file:/dev/./urandom 用于 Spring Boot 应用程序?

Joc*_*ist 5 tomcat docker spring-boot

我曾经-Djava.security.egd=file:/dev/./urandom在我的 Dockerfile 中为 Spring Boot 应用程序配置。

https://spring.io/guides/gs/spring-boot-docker/中添加了一条评论,指出新版本不再需要这样做:

为了减少 Tomcat 启动时间,我们添加了一个指向“/dev/urandom”作为熵源的系统属性。如果您使用 Tomcat(或任何其他 Web 服务器)的“标准”版本,则对于较新版本的 Spring Boot,这不是必需的。

我正在 Tomcat 或 Spring Boot 存储库中寻找有关此更改的任何参考,以及哪些 Spring Boot 版本受到影响。

Ort*_*kni 6

JDK 增强提案:JEP 123, Configurable Secure Random-Number Generation应该已经解决了这个问题。

根据JDK 8 Security Enhancements官方 Oracle 文档,/dev/./urandomJDK 8 不再需要该解决方法。

SHA1PRNG 和 NativePRNG 已修复,以正确遵守 java.security 文件中的 SecureRandom 种子源属性。(不再需要使用 file:///dev/urandom 和 file:/dev/./urandom 的模糊解决方法。)