是否可以从 Java Bouncy CaSTLe 使用 SSL/TLS 连接到远程服务器,然后获取服务器支持的密码套件列表?我需要接收它的十六进制值,如果可能的话还需要接收它的“字符串常量”(也许只是为了客户端自己知道的那些)。
我需要使用任何协议(protocol)(HTTPS、AMQPS、STOMPS...)连接到任何端口。
最佳答案
您可以做的是编写一个 CipherSuiteFinder
类来调用重写的 TlsClientProtocol
它只是向服务器提供一个密码套件。为此,您创建一个派生自 DefaultTlsClient
的新类。延伸AbstractTlsClient
.
提供协议(protocol)并收到响应后,您将关闭连接。如果服务器没有出错,它接受单个提供的密码套件,这意味着该密码套件存在。 然后,您可以按照 TLS 标准关闭连接,仅在一切完成后才关闭套接字。
现在,CipherSuiteFinder
只需迭代密码套件并收集结果即可。
HTTP 和 STOMP 等顶级协议(protocol)并不重要;它们仅在建立 TLS 连接后才会被调用。
关于java - 使用 Java Bouncy CaSTLe 列出服务器支持的密码套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32584337/