- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已使用 -Djavax.net.debug=all
选项在应用程序中启用日志。已编写的代码应该使用 SSLv3 协议(protocol),但在我检查时在日志中显示为::
*** ClientHello,TLSv1
*** ServerHello,TLSv1
据我从阅读中了解到,客户端和服务器使用 TLSv1 进行握手,但由于我在启动套接字时在代码中使用了 SSLv3,理想情况下它应该打印 SSLv3 而不是 TLSv1。
下面是我使用的代码片段:
SSLContextBuilder builder = new SSLContextBuilder();
builder.useProtocol("SSLv3");
SSLContext sslContext = builder.build();
有人可以澄清同样的原因吗,或者还有其他我错过的事情吗?补充一下,我使用的是 Java 7。
最佳答案
服务器很可能不支持 SSLv3
(出于安全考虑,现在推荐配置),因此该库使用支持最少的 TLS
版本。
UPD:似乎 hello 格式没有说明实际上将使用什么协议(protocol)。有来自 Java docs 的东西:
Currently, the SSLv3, TLSv1, and TLSv1.1 protocols allow you to send SSLv3, TLSv1, and TLSv1.1 hellos encapsulated in an SSLv2 format hello. For more details on the reasons for allowing this compatibility in these protocols, see Appendix E in the appropriate RFCs (previously listed).
Note that some SSL/TLS servers do not support the v2 hello format and require that client hellos conform to the SSLv3 or TLSv1 client hello formats.
The SSLv2Hello option controls the SSLv2 encapsulation. If SSLv2Hello is disabled on the client, then all outgoing messages will conform to the SSLv3/TLSv1 client hello format. If SSLv2Hello is disabled on the server, then all incoming messages must conform to the SSLv3/TLSv1 client hello format.
关于java - 日志显示 TLSv1 而不是 SSLv3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50288123/
我是一名优秀的程序员,十分优秀!