如果curl_easy_setopt函数禁用了SSL,cURL 7.19为何在握手期间显示SSLv3?
curl_easy_setopt(m_curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
cURL输出:
CURL Info: SSLv3, TLS handshake, Client hello (1):
CURL Info: SSLv3, TLS handshake, Server hello (2):
CURL Info: SSLv3, TLS handshake, CERT (11):
CURL Info: SSLv3, TLS handshake, Server finished (14):
CURL Info: SSLv3, TLS handshake, Client key exchange (16):
CURL Info: SSLv3, TLS change cipher, Client hello (1):
CURL Info: SSLv3, TLS handshake, Finished (20):
CURL Info: SSLv3, TLS handshake, Unknown (4):
CURL Info: SSLv3, TLS change cipher, Client hello (1):
CURL Info: SSLv3, TLS handshake, Finished (20):
CURL Info: SSL connection using DES-CBC3-SHA
cURL是否可以显示" SSLv3"?
答案 0 :(得分:2)
我引用my own answer(针对不同的问题):
Curl的调试代码(
-v
)仅显示主版本号 (主要是为了区分SSLv2和SSLv3 +类型的消息,请参阅ssl_tls_trace
), 因此,当您使用TLS 1.0或更高版本时,它仍会显示“SSLv3” (因为它们实际上是SSL v3.1或更高版本,3是相同的专业 版本号)。
如果您想确保使用正确的版本,则应该查看return value from setopt
。
此外,您可以使用trace选项详细查看握手:
== Info: SSLv3, TLS handshake, Client hello (1): => Send SSL data, 512 bytes (0x200) 0000: 01 00 01 fc 03 03
第5个字节将是主要修订号(此处为03),第6个将是次要修订号。