我必须使用预共享密钥与远程服务器建立 TLS 连接。我目前正在使用 Bouncycastle 的 PSKTlsClient。我的初始化代码如下所示:
socket_ = new Socket(address,port);
tlsHandler_ = new TlsProtocolHandler(socket_.getInputStream(),socket_.getOutputStream());
pskTlsClient_ = new PSKTlsClient(tlsPskInfo_);
tlsHandler_.connect(pskTlsClient_);
但是我得到了这个堆栈跟踪:
java.io.IOException: Internal TLS error, this could be an attack
at org.bouncycastle.crypto.tls.TlsProtocolHandler.failWithError(Unknown Source)
at org.bouncycastle.crypto.tls.TlsProtocolHandler.safeReadData(Unknown Source)
at org.bouncycastle.crypto.tls.TlsProtocolHandler.connect(Unknown Source)
at common.network.Transport.PskTlsClientSocket.connect(PskTlsClientSocket.java:61)
我还在消息中得到了一个 TLS 证书,PSK 是在其中传输的,但是我不知如何建立这个连接。你有什么建议如何进行吗?