gpt4 book ai didi

java - 在 JRE 级别限制密码套件

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:17:29 24 4
gpt4 key购买 nike

我们的 Java 应用程序公开了许多受 SSL/TLS 保护的不同接口(interface)(SMTP、FTP、HTTP)。现在的目标是将这些接口(interface)上允许的密码套件限制为仅包含“强”密码套件。我已经有了一个列表,并且很清楚如何让它适用于特定的套接字

socket.setEnabledCipherSuites(ENABLED_SECURE_CIPHER_SUITES);

或用于 Tomcat 连接器

 <Connector port="443" ciphers="..."/>

问题是应用程序中已经有 5 个地方我应该手动应用此限制。 Common SocketFactory 似乎没有帮助,因为向第三方 API 或框架提供自定义 SocketFactory 并不总是可行的。是否有可能以某种方式在 JRE 级别引入此限制,例如使用 JCE 提供程序配置或策略文件?

JRE:甲骨文 JRE 1.7.0_17

最佳答案

好吧,我设法让它工作了。感谢 EJP 指出了正确的方向。从 Java 1.7 开始,$JRE_HOME/lib/security/java.security 中有两个附加属性:

jdk.certpath.disabledAlgorithms=MD2

控制认证路径构建和验证的算法。

jdk.tls.disabledAlgorithms=MD5, SHA1, RC4, RSA keySize < 1024

用于 SSL/TLS 处理的 JVM 范围内的算法限制,我一直在寻找的那个。这里的符号很明显;可以禁止某些算法或限制 key 大小。 Oracle JRE 7、Open JRE 7 和(令人惊讶的)IBM Java v7 都支持这两个属性

关于java - 在 JRE 级别限制密码套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18589761/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com