libcurl 设置 ssl 证书

Posted SupperMary

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了libcurl 设置 ssl 证书相关的知识,希望对你有一定的参考价值。

https://curl.se/docs/sslcerts.html

如果使用 libcurl 时遇到这个问题
curl_easy_perform() failed: SSL peer certificate or SSH remote key was not OK
可以看一下官方对于 ssl 的说明,
https://curl.se/docs/sslcerts.html
https://curl.se/docs/caextract.html

简单来说,可以选择关闭libcurl 的 ssl 验证,或者指定 libcurl 使用的证书。

关闭 ssl 验证可以添加如下代码

curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, false);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0);

指定证书可以使用

curl_easy_setopt(curlHandle, CURLOPT_CAINFO,ssl_ca_file_path)

证书可以到这里下载
https://curl.se/ca/cacert.pem

以上是关于libcurl 设置 ssl 证书的主要内容,如果未能解决你的问题,请参考以下文章

使用 Nginx 的 https SSL 证书验证因自定义构建的 libcurl+openssl 而失败,但适用于系统 curl

facebook auth cURL 错误 60:SSL 证书

如何在Android上进行SSL对等验证工作?

curl:ssl certificate unable to get local issuer certificate 怎么解决

使用 libcurl 的 CA 证书认证

c# https请求忽略证书验证_各种编程语言忽略http的SSL证书认证