【发布时间】:2020-06-18 21:37:34
【问题描述】:
我有一个使用 OpenSSL 的 C 客户端,当在服务器上调用 SSL_do_handshake() 期间使用的证书在服务器端验证失败时,该客户端未通过测试。当应用程序使用 TLS 1.2 时,服务器上的 SSL_do_handshake() 失败会在调用 SSL_do_handshake() 作为失败返回值时报告给客户端。
将我的应用程序升级到 OpenSSL 1.1.1 和 TLS 1.3 时,我注意到虽然验证错误仍在服务器上发生,但它不再报告给客户端。
我知道握手协议已完全重写为 TLS 1.3 的一部分,但是似乎有了所有可用的各种回调,我应该能够在客户端以某种方式确定身份验证失败而不必尝试将数据写入服务器。
有没有其他人遇到过这种情况,他们可以推荐一条前进的道路吗?
【问题讨论】: