我用C和work制作了一个网络客户端,我在linux上工作,我不知道如何在windows上使用CA证书。窗户的操作手册也不是很好。
默认情况下,windows上存在CA证书目录(root)吗?
类似于linux下的/etc/ssl/certs/目录,这是CA证书的列表。
我需要这个来调整一个与openSSL一起工作的程序。
你能帮帮我吗?提前谢谢你。
发布于 2015-01-30 21:11:19
您可以访问Windows证书存储区(其中包含CA证书),并使用以下功能操作证书:
CertOpenSystemStore()
CertEnumCertificatesInStore()
CertCloseStore()并将DER证书转换为OpenSSL X509结构,其中:
d2i_X509()例如,请参阅本链接:
。
发布于 2014-11-13 07:16:37
我不认为Windows将证书存储在默认的文件位置,而是存储在注册表项中。查看此链接 -这是Windows 2003,但我相信大部分信息仍然相关。
通常用于管理证书的基本工具是Certreq.exe和Certutil.exe。
关于如何为Windows插入/创建证书的下面是一个基本的C++程序示例。它没有解决您问题的网络部分,但我认为您可能会发现它很有用。
祝好运。
发布于 2014-11-15 22:12:49
默认情况下,windows上存在CA证书目录(root)吗?类似于linux下的/etc/ssl/certs/目录,这是CA证书的列表。
不是的。您必须在Windows上的应用程序中提供一个带有根证书和中间证书的文件。它可以来自Linux,也可以通过certmgr从Windows手动导出nessecity证书。或者,您可以像Qt那样,用WinAPI的帮助以编程方式创建受信任的根证书和中间证书的列表。
https://stackoverflow.com/questions/26893521
复制相似问题