当我不使用调试时,我得到了
引起:javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure
至于我启用的原因
javax.net.debug = SSL:握手
找出问题所在。
然而,虽然启用了,但我得到了
引起:java.net.SocketException:对等连接重置:套接字写入错误
每一次......我认为这很可能是由于编写调试日志需要花费大量时间......所以,我如何减少数量以便调试handshake_failure ?
答案 0 :(得分:1)
你的旗帜很可能是正确的。我通常使用-Djavax.net.debug = all或-Djavax.net.debug = ssl:handshake:verbose
你仍然会得到套接字关闭,但根本原因很可能是其他原因。 见https://blogs.oracle.com/java-platform-group/entry/diagnosing_tls_ssl_and_https
JSSE Reference Guide Debugging section中提供了有关调试SSL / TLS的完整详细信息。
考虑将握手指定更强版本的算法,考虑将Java Cryptography Extension (JCE) Unlimited Strengh jurisdiction policy files应用于Java版本。
答案 1 :(得分:0)
您是否尝试过只使用javax.net.debug=ssl
?它可能足以理解发生了什么,除此之外,它很奇怪,我不记得handshake
选项添加所有这些额外的消息。