是否可以从 Java Bouncy Castle 使用 SSL/TLS 连接到远程服务器,然后获取服务器支持的密码套件列表?我需要接收它的 HEX 值,如果可能的话,还需要接收它的“字符串常量”(可能只针对客户自己知道的那些)。
我需要使用任何协议(HTTPS、AMQPS、STOMPS……)连接到任何端口。
是否可以从 Java Bouncy Castle 使用 SSL/TLS 连接到远程服务器,然后获取服务器支持的密码套件列表?我需要接收它的 HEX 值,如果可能的话,还需要接收它的“字符串常量”(可能只针对客户自己知道的那些)。
我需要使用任何协议(HTTPS、AMQPS、STOMPS……)连接到任何端口。
您可以做的是编写一个CipherSuiteFinder
调用重写的类,TlsClientProtocol
它只是为服务器提供一个密码套件。为此,您创建一个派生自DefaultTlsClient
该 extends的新类AbstractTlsClient
。
提供协议并收到响应后,您关闭连接。如果服务器没有出错,它接受了单个提供的密码套件,这意味着该密码套件存在。然后,您可以通过遵循 TLS 标准关闭连接来很好地关闭连接,只有在一切完成后才关闭套接字。
现在CipherSuiteFinder
只需遍历密码套件并收集结果。
HTTP 和 STOMP 等顶级协议无关紧要;它们仅在 TLS 连接建立后调用。