gpt4 book ai didi

c++ - 使用 openssl 下载证书并将证书设置为 libCURL

转载 作者:太空宇宙 更新时间:2023-11-04 08:54:04 25 4
gpt4 key购买 nike

我已经编写了一个应用程序来使用 openssl 下载服务器证书。然后我在libCURL中使用这个证书来进行HTTPS通信。 LibCRL 给出无效证书错误 (60)。

在 libCURL 站点搜索后,他们说使用“cacert.pem”文件。然后我将选项 CURLOPT_CAINFO 设置为‘cacert.pem’,将‘CURLOPT_CAPATH’设置为下载的证书文件。然后一切正常。

然后我才知道下载的证书中缺少根证书,而根证书存在于“cacert.pem”文件中。

现在我的查询是

1) 如何从服务器下载根证书?

2) 另外请让我知道设置证书的最佳做法。

最佳答案

从不从服务器下载根证书。基础设施的全部意义在于您已经拥有一组可信 根证书。如果有人(直接或间接)使用此根证书签名,则您可以信任该证书。如果您从服务器下载根证书,您基本上放弃了证书的整个概念,也可以使用 HTTP。

但是,如果您使用自己的证书(自签名),还有一个替代方案:您可以选择 maintain your own CA并为此目的创建一个特殊的 cacert.pem 或禁用证书检查(不推荐使用后者,因为它会降低您的应用程序的安全性!)。

如果您正在做一些高级的事情,即没有像 libCURL 的 cacert.pem 这样的标准包中包含由 CA 签名的证书,那么您绝对应该阅读这背后的理论,否则您冒着从一开始就创建易受攻击的应用程序的风险。

关于c++ - 使用 openssl 下载证书并将证书设置为 libCURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18229078/

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