-1

我正在尝试使用 TLS 协议打开一个安全套接字。查看客户端和服务器之间发送的记录,我可以通过 ClientHello、ServerHello、Certificate(服务器)、ServerHelloDone、ClientKeyExchange 和 ChangeCipherSpec(客户端)进行。但是,服务器无法解密客户端的 Finished 消息。接下来交换一些常规的 TCP 消息,首先从服务器发送一条带有 Finished 标志的记录,然后从客户端发送两条记录,第二条带有 Finished 标志,然后再从服务器发送一条记录。

此设置曾经有效,但我最近更改了服务器的证书。鉴于此,我预计握手会在证书记录之后失败,而不是在尝试解密第一条加密数据时。此握手错误是否表明证书未经身份验证?如果不是,它可以说明什么?我没有收到任何警报。

4

1 回答 1

-1

如果我大胆猜测,我猜问题完全出在服务器端。我猜您没有正确更改私钥以及公钥(证书),并且服务器正在尝试使用其旧私钥解密。我相信你描述的 TLS 消息的顺序与这个场景是一致的。

于 2010-11-10T01:36:39.227 回答