java - 如何获取 HTTPS 连接使用的密码

标签 java ssl tls1.2

如何在 Java 中获取 HTTPS 连接使用的密码?使用以下代码点击 URL 后,我需要找到使用的 TLS 版本,无论是 TLS 1.1 还是 1.2:

url = new URL(https_url);
HttpsURLConnection con = (HttpsURLConnection)url.openConnection();

Firefox 浏览器的屏幕截图如下。 任何人都可以帮助我得到这个吗? TLS Version

我试过了

SSLSocket socket = (SSLSocket) con.getSSLSocketFactory().createSocket();
String[] test = socket.getSSLParameters().getProtocols();

但这给出了为连接启用的协议(protocol)列表。在我需要服务器响应中使用的协议(protocol)的地方。

所附的屏幕截图显示了我期望阅读的内容(TLS 1.2)

最佳答案

我认为 con.getCipherSuite(); 应该可以解决算法问题...

https://docs.oracle.com/javase/7/docs/api/javax/net/ssl/HttpsURLConnection.html

对于 tls 这可能是一个奇怪的解决方案,但如果您设法打开一个新的 SSL 套接字(也许您可以使用 socket.close(); 关闭) SSLSocket socket = (SSLSocket) con.getSSLSocketFactory().createSocket(); String[] test = socket.getSSLParameters().getProtocols(); 在测试值中注意: 您可以获得可用的 TLS 版本,而不仅仅是一个版本。

关于java - 如何获取 HTTPS 连接使用的密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46406717/

相关文章:

java - GWT:使用 RPC 从数据存储填充页面太慢

Java Applet 未在 Eclipse 的内置 applet 查看器中更新

java - OpenGL GlOrtho 没有出现图元

java - 如何在不安装到 keystore 的情况下连接到 SSL 证书 Web 服务?

python - 无法在 Ubuntu 14.04 上升级 pip 1.5.4 - InsecurePlatformWarning : A true SSLContext object is not available

vb.net - 在 VB.Net 中,我使用以下代码发送电子邮件。现在我想使用 TLS 身份验证

ssl - 如何在 IIS 中针对特定 URL 的所有请求要求双向 TLS

node.js - 使用 TLS 协议(protocol)运行 NodeJS

mysql - Azure Advisor for MySql 建议将 TLS 版本更新到 1.2 - 服务器已在运行 'tls_version: TLSv 1.2'

java - 如何将值传递给此构造函数?