这里是二级证书验证, 注意CRL撤销证书必须由二级证书撤销, 顶级证书可以撤销, 并且命令行不会出错, 但是无法验证出.
/*
openssl ca -config CM.cfg -revoke badcert.pem
openssl ca -config CM.cfg -gencrl -out crl.pem
cat certs/root.pem certs/mfg.pem crl.pem >revoke.pem
openssl verify -CAfile revoke.pem -crl_check certs/badcert.pem
*/
void static verifyCert()
{
//error 7 at 1 depth lookup:certificate signature failure
//error 8 at 0 depth lookup:CRL signature failure
OpenSSL_add_all_algorithms();
X509_STORE *store = X509_STORE_new();
X509_STORE_set_verify_cb(store, cb);
//error 2 at 1 depth lookup:unable to get issuer certificate
X509_STORE_add_cert(store, loadX509(PATH"certs/root.der"));
//error 20 at 0 depth lookup:unable to get local issuer certificate
X509_STORE_add_cert(store, loadX509(PATH"certs/mfg.pem"));
//error 23 at 0 depth lookup:certificate revoked
X509_STORE_add_crl(store, loadX509Crl(PATH"crl.pem"));
X509_STORE_set_flags(store, X509_V_FLAG_CRL_CHECK);
X509_STORE_CTX *ctx = X509_STORE_CTX_new();
X509 *xDevice = loadX509(PATH"certs/device.pem");
X509_STORE_CTX_init(ctx, store, xdevice, NULL);
if (X509_verify_cert(ctx) > 0)
{
printf("OK\n");
}
X509_STORE_CTX_free(ctx);
X509_STORE_free(store);
}
分享到:
相关推荐
利用openssl和curl库获取https证书
使用openssl生成证书,有详细的步骤说明,亲测可用。还有一些关于证书的一些常用转换操作介绍
通过OpenSSL生成的ssl证书,用于windows下用nginx配置https服务器( OpenSSL创建证书) 无需再下载OpenSSL,配置OpenSSL相关环境,在进行命令生成证书
https目前广泛流行,现提供openssl自签名证书的命令和基本验证命令。
文档中详细介绍了如何利用openssl制作ca证书的步骤 代码则实现可将ca证书安装到浏览器的受信任根证书的功能
C++的OpenSSL支持库(含win32和x64),安装后目录下有include文件夹和dll以及lib文件 免编译使用!
openssl生成的证书demo,包含CA以及CA签名的client、server,为了安全起见,请勿将其用于生产环境
openssl实现客户端与服务器证书创建生成并验证
1、介绍加密算法,阐述什么是数字摘要、数字签名、数字证书 2、用OPENSSL签发客户端、服务器端数字证书 3、HTTPS + tomcat7实例
利用openssl生成CA证书的方法及证书,根据文档可以自己生成证书。
提供实际操作的示例,演示linux下用openssl提供的命令,生成多级证书,并验证各级证书的合法性。
用Openssl生成数字证书,包含编译好的Openssl win32 release静态库,和测试已经生成的服务端、客户端证书和Key。具体生成方法参考:http://blog.csdn.net/ljttianqin/article/details/73016014
用openssl命令制作生成证书和自签名
本文档描述了采用openssl生成安全证书,以及在weblogic中安全证书的配置过程,并且验证ssl通信。
对openssl进行二次研发封装通过批处理的方式增加“一键生成CA证书”、“一键生成Server证书”、“一键生成Client证书”等工具。方便研发人员快捷的生成所需各种证书
NULL 博文链接:https://jacky-dai.iteye.com/blog/1545241
加压后除了openssl.exe以外,还有一个bat文件,这个可以帮助我们快速创建证书申请文件。 运行autocsr.bat,按照提示输入信息,之后按任意键确认。你会得到两个文件,一个server.key,这是私钥文件,还有一个名为...
使用OpenSSL为基于IIS的站点创建服务器端证书及客户端证书,实现双向认证。
OPENSSL 静态库 libcrypto.lib 和 libssl.lib VS2008 x64/x86 Release/Debug 版本 VS2010 x64/x86 Release/Debug 版本 VS2012 x64/x86 Release/Debug 版本 VS2015 x64/x86 Release/Debug 版本 VS2019 x64/x86 ...
NULL 博文链接:https://nassir.iteye.com/blog/1983613