C++ OpenSSL 之四:CER转换为PEM
1.等同于使用: openssl x509 -in "cer_path" -inform DER -out "save_path" -outform PEM
2.代码如下:cerFilePath是cer文件;cer文件是csr文件请求后获得。
bool MakePemSSL(const char* cerFilePath, const char* savePemFilePath) {
    int      ret = ;
    X509 *x509 = NULL;
    FILE    *cerFile = NULL, *pemFile = NULL;
    cerFile = fopen(cerFilePath, "rb");
    if (cerFile == NULL) {
        fprintf(stderr, "MakeLocalPemSSL fopen cerFilePath err \n");
        goto free_all;
    }
    pemFile = fopen(savePemFilePath, "w+");
    if (pemFile == NULL) {
        fprintf(stderr, "MakeLocalPemSSL fopen savePemFilePath err \n");
        goto free_all;
    }
    x509 = d2i_X509_fp(cerFile, NULL);
    if (x509 == NULL) {
        fprintf(stderr, "MakeLocalPemSSL failed to parse to X509 from cerFile \n");
        goto free_all;
    }
    ret = PEM_write_X509(pemFile, x509);
    if (ret != ) {
        fprintf(stderr, "MakeLocalPemSSL failed to PEM_write_X509 \n");
        goto free_all;
    }
free_all:
    if (cerFile) fclose(cerFile);
    if (pemFile) fclose(pemFile);
    return (ret == );
}
以上。
《C++ OpenSSL 之一:编译和使用》
《C++ OpenSSL 之二:生成RSA文件》
《C++ OpenSSL 之三:生成CSR文件》
《C++ OpenSSL 之四:CER转换为PEM》
《C++ OpenSSL 之五:生成P12文件》
C++ OpenSSL 之四:CER转换为PEM的更多相关文章
- DER、CRT、CER、PEM格式的证书及转换
		
一.证书和编码 X.509证书,其核心是根据RFC 5280编码或数字签名的数字文档. 实际上,术语X.509证书通常指的是IETF的PKIX证书和X.509 v3证书标准的CRL 文件,即如RFC ...
 - pfx,cer转pem,并对通过pem文件进行签名与验签
		
因为PHP无法读取.pfx文件,所以可以先转换为.pem文件然后在读取里面的数据,可以读取.cer文件,为了两方面统一,就都换成.pem然后再进行加签和验签. sign.php <?php de ...
 - Cer Crt  Pem Pfx 证书格式转换
		
1.从pfx格式的证书提取出密钥和证书set OPENSSL_CONF=openssl.cnfopenssl pkcs12 -in my.pfx -nodes -out server.pemopens ...
 - APNS .p12文件转换为 .pem文件
		
1:先用mac的钥匙串工具,把APN的推送证书转换为 .p12文件: 2:在mac的终端下 把.p12文件转换为 .pem文件 openssl pkcs12 -in apns-dev-cert.p12 ...
 - [OPENSSL下载][证书] OPENSSL将PFX证书转换为PEM格式
		
OpenSSL Convert PFX Convert PFX to PEM openssl pkcs12 -in certificate.pfx -out certificate.cer -node ...
 - ssl证书转换cer转pem
		
.pem证书转.cer证书 openssl x509 -outform der -in demo.pem -out demo.cer .cer证书转.pem证书 openssl x509 -infor ...
 - ios 将p12文件转换为pem
		
cd 到 文件所在目录 执行以下命令,生成ck.pem文件. openssl pkcs12 -in ck.p12 -out ck.pem -nodes
 - C++ OpenSSL 之一:编译和使用
		
1.官网 https://www.openssl.org/ 当前使用版本为OpenSSL 1.1.1c 2.编译 ①下载后解压,假设解压位置为/home/openssl-1.1.1c ②./confi ...
 - C++ OpenSSL 之二:生成RSA文件
		
1.等同于生成private key: openssl genrsa -out "save_path" 2048 2.代码如下 bool MakeRsaKeySSL(const c ...
 
随机推荐
- (day47)作业
			
一.链式表达式完成菜单栏 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
 - Jmeter压力并发测试
			
一.http://jmeter.apache.org/ 二.点击Download Releases选择版本下载 三.下载解压: 将解压后的文档存盘-下载logkit-2.0.jar(汉化包)放到jme ...
 - Centos7下搭建NFS服务器与连接详解
			
一,环境介绍 本实验使用了两台centos7虚拟机,其中 服务器:192.168.1.188 客户端:192.168.1.189 二,实验步骤 192.168.1.1 ...
 - MacbookPro升级10.15 Catalina之后无法读写NTFS
			
冲着Sidecar的双屏功能,乐呵呵的跑去升级了10.15,结果就悲剧了. 所有移动硬盘和U盘都写不了,无奈只好上网找办法,目前找到一个便宜的方法: 共2步: Step 1:编写fstab文件 使用T ...
 - [LeetCode] 925. Long Pressed Name 长按键入的名字
			
Your friend is typing his name into a keyboard. Sometimes, when typing a character c, the key might ...
 - [LeetCode] 518. Coin Change 2 硬币找零之二
			
You are given coins of different denominations and a total amount of money. Write a function to comp ...
 - linux shell脚本中的延时
			
linux shell脚本中的延时 还是使用 sleep 或usleep函数. 详细如下: .sleep : 默认为秒. sleep 1s 表示延迟一秒 sleep 1m 表示延迟一分钟 ...
 - OAuth2、OpenID、SMAL 对比
			
对比点 OAuth2.0 OpenID SMAL2 票据格式 JSON or SAML2 JSON XML 支持授权 Yes Yes Yes 支持认证 “伪认证” Yes Yes 创建年份 2005 ...
 - Jenkins Pipeline 参数详解
			
Pipeline 是什么 Jenkins Pipeline 实际上是基于 Groovy 实现的 CI/CD 领域特定语言(DSL),主要分为两类,一类叫做 Declarative Pipeline,一 ...
 - sublime text3安装ConvertToUTF8
			
1.安装 Package Control 方式1:命令行安装 按ctrl+~快捷键,调出一个小文本款,然后粘贴以下代码: import urllib.request,os,hashlib; h = ' ...