CURLOPT_PINNEDPUBLICKEY无效

时间:2016-03-22 20:47:56

标签: curl libcurl

我使用CURLOPT_PINNEDPUBLICKEY来固定证书。我还将CURLOPT_SSL_VERIFYPEER设置为1,并将文档中提到的CURLOPT_SSL_VERIFYHOST设置为。

我获取了目标服务器的证书文件并创建了sha256 base64字符串,如CURLOPT_PINNEDPUBLICKEY的curl文档中所述。将有效sha字符串设置为“sha256 // sddgdSDFSQWbGGRFr9rugEih7jghJwjj0xqcvbo =”,或者更改此字符串中的少数字符,并将其设置为PINNEDPUBLICKEY会导致curl调用成功。我期待无效的sha导致错误CURLE_SSL_PINNEDPUBKEYNOTMATCH。但它没有。

我将证书从chrome浏览器保存到文件和pem文件,并给出了curl opt PINNEDPUBLICKEY的路径。仍然有效的密钥和无效密钥都会导致成功。

无效的字符串是否会导致错误?我不确定PINNEDPUBLICKEY是否正常工作。可能是我遗失了什么?任何投入都会有很大的帮助。

由于

1 个答案:

答案 0 :(得分:0)

解决我的问题:我需要将curl库从7.42升级到7.48。这解决了问题并提供了我错误的公钥所期望的错误代码。