Java bouncyCastle是否提供TLS功能?

Java bouncyCastle是否提供TLS功能?,java,ssl,bouncycastle,Java,Ssl,Bouncycastle,我觉得我应该解释一下为什么我想实施一个看似糟糕的解决方案 我是一名系统管理员,不是java程序员,我继承了大量在Tomcat中运行Java1.7的应用程序 虽然我渴望升级这些产品,但这需要开发团队的时间和合作。我最大的担忧(相当局部地)是从网络中删除SSLv3、TLS/1.0和TLS/1.1。传入连接的SSL终止由代理处理,因此我可以(原则上)停止暴露服务中的漏洞,但这将破坏在单独JVM中运行并通过HTTPS通信的组件之间的集成(例如CAS身份验证) (是的,我可以运行单独的内部/外部代理或绕过

我觉得我应该解释一下为什么我想实施一个看似糟糕的解决方案

我是一名系统管理员,不是java程序员,我继承了大量在Tomcat中运行Java1.7的应用程序

虽然我渴望升级这些产品,但这需要开发团队的时间和合作。我最大的担忧(相当局部地)是从网络中删除SSLv3、TLS/1.0和TLS/1.1。传入连接的SSL终止由代理处理,因此我可以(原则上)停止暴露服务中的漏洞,但这将破坏在单独JVM中运行并通过HTTPS通信的组件之间的集成(例如CAS身份验证)

(是的,我可以运行单独的内部/外部代理或绕过代理使用直接寻址…,但这似乎更像是一种黑客行为)

这就引出了我的问题

BouncyCastle只提供密码套件还是提供TLS


如果我安装这些较旧的java应用程序,它们是否能够使用TLS/1.2发出HTTPS客户端请求,或者是否需要进一步的代码更改?

BouncyCastle提供程序将允许您使用jvm不支持的密码。但是,根据您的jvm版本,可能不支持tls 1.2协议。看来Java7应该能够支持它

无论哪种方式,要强制使用tls1.2,都需要进一步的配置,但不需要进行必要的代码更改。必须将服务器配置为专门使用它(配置可能是特定于供应商的)。您的客户端也可能被配置为仅使用tls1.2(例如使用-Dhttps.protocols)


有关更多信息,请参阅。

您确定需要外部库吗?从谷歌上看,Java 7似乎支持TLS 1.2。从他们的网站上可以清楚地看到,bouncycastle有一个单独的库(bctls)来实现TLS。这似乎间接地回答了我的问题:不,bouncycastle不提供TLS,只提供密码套件。不幸的是,由于我使用的是比1.7.0.95更旧的Java版本,我正在考虑升级。这将和使用1.8.x一样具有破坏性:(