gpt4 book ai didi

delphi - 如何确定使用 sslvSSLv23 时协商了哪个 TLS/SSL 协议(protocol)?

转载 作者:行者123 更新时间:2023-12-03 14:48:31 25 4
gpt4 key购买 nike

我正在使用 TIdSSLIOHandlerSocketOpenSSL 打开 TLS/SSL 连接。我目前想要支持 tls 1.0 到 1.2。

我像这样初始化 IOHandler。

TIdSSLIOHandlerSocketOpenSSL(FSocket.IOHandler).SSLOptions.SSLVersions := [sslvTLSv1_2,sslvTLSv1_1, sslvTLSv1];

建立连接后,如何获取该连接协商的协议(protocol)? (都是为了确保客户端和测试服务器的配置正确,并最终用于统计目的)。

我在连接后检查了SSLContext.Method,但连接后仍然显示sslvSSLv23SSLContext.SSLVersions 显示[sslvTLSv1_2、sslvTLSv1_1、sslvTLSv1]

那么我如何获取这些信息?

最佳答案

具体协商协议(protocol)在 TIdSSLIOHandlerSocketOpenSSL.SSLSocket.Cipher.Version SSL/TLS session 建立后的属性。 OpenSSL 还有一个SSL_get_version()函数(Indy 不使用该函数,但您可以直接调用)。

关于delphi - 如何确定使用 sslvSSLv23 时协商了哪个 TLS/SSL 协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41127514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com