如何从JSSE中的SSL握手获取协商信息

时间:2017-05-09 15:27:54

标签: java ssl jsse

我想在JSSE中记录客户端发送的tls版本,服务器首选版本,服务器首选密码套件等内容。这该怎么做? 请注意,我只能使用Java代码执行此操作。不接受解析日志文件。

2 个答案:

答案 0 :(得分:1)

您可以将 -Djavax.net.debug = all 标记添加到您的java执行字符串中,它会将所有信息转储到控制台中。

http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/ReadDebug.html

答案 1 :(得分:0)

此信息可用的唯一方法是通过javax.net.debug系统属性。如果您无法解析该输出,那么您可以得到的结果是SSLSession中的数据,其中包含协商协议和密码套件以及对等证书。您还可以查看自己的SSLSocket启用的协议和密码套件,但我不知道它将从何处获取。