【问题标题】:Use Java Bouncy Castle to list cipher suites supported by server使用 Java Bouncy Castle 列出服务器支持的密码套件
【发布时间】:2015-12-11 14:35:27
【问题描述】:

是否可以从 Java Bouncy Castle 使用 SSL/TLS 连接到远程服务器,然后获取服务器支持的密码套件列表?我需要接收它的 HEX 值,如果可能的话,还需要接收它的“字符串常量”(可能只针对客户自己知道的那些)。

我需要使用任何协议(HTTPS、AMQPS、STOMPS……)连接到任何端口。

【问题讨论】:

    标签: java ssl cryptography bouncycastle tls1.2


    【解决方案1】:

    您可以做的是编写一个CipherSuiteFinder 类,该类调用一个重写的TlsClientProtocol,它只是为服务器提供一个单一的密码套件。为此,您需要创建一个派生自 DefaultTlsClient 的新类,该类扩展 AbstractTlsClient

    提供协议并收到响应后,您关闭连接。如果服务器没有出错,它接受了单个提供的密码套件,这意味着该密码套件存在。 然后您可以按照 TLS 标准关闭连接来很好地关闭连接,只有在一切完成后才关闭套接字。

    现在CipherSuiteFinder 只需遍历密码套件并收集结果。


    HTTP 和 STOMP 等顶级协议无关紧要;它们仅在 TLS 连接建立后调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-26
      • 2012-03-19
      • 2023-01-31
      • 1970-01-01
      • 2020-09-01
      • 2019-05-24
      • 2021-11-04
      相关资源
      最近更新 更多