2
A
回答
1
你可以不喜欢它 -
#include <stdio.h>
#include <openssl/x509.h>
#include <openssl/pem.h>
#include <openssl/err.h>
void convert(char* cert_filestr,char* certificateFile)
{
X509* x509 = NULL;
FILE* fd = NULL,*fl = NULL;
fl = fopen(cert_filestr,"rb");
if(fl)
{
fd = fopen(certificateFile,"w+");
if(fd)
{
x509 = PEM_read_X509(fl,&x509,NULL,NULL);
if(x509)
{
i2d_X509_fp(fd, x509);
}
else
{
printf("failed to parse to X509 from fl");
}
fclose(fd);
}
else
{
printf("can't open fd");
}
fclose(fl);
}
else
{
printf("can't open f");
}
}
int main()
{
convert("abc.pem","axc.der");
return 0;
}
+0
谢谢,只是一个问题,如果我把它作为字符串而不是文件,我该怎么做? 非常感谢你 – itayb
-1
试试这个 -
void convert(const unsigned char * pem_string_cert,char* certificateFile)
{
X509* x509 = NULL;
FILE* fd = NULL;
BIO *bio;
bio = BIO_new(BIO_s_mem());
BIO_puts(bio, pem_string_cert);
x509 = PEM_read_bio_X509(bio, NULL, NULL, NULL);
fd = fopen(certificateFile,"w+");
if(fd)
{
i2d_X509_fp(fd, x509);
}
else
{
printf("can't open fd");
}
fclose(fd);
}
+0
非常感谢 – itayb
相关问题
- 1. 将私钥从der转换为pem
- 2. 在Windows CE 3上将PEM转换为DER
- 3. Microsoft CryptoAPI:如何将PUBLICKEYBLOB转换为DER/PEM?
- 4. PEM转换(PKCS7)到DER - AKA Base64 C++问题
- 5. 转换RSA PEM密钥字符串为DER的byte []
- 6. 我们如何转换从PEM字符串为DER格式
- 7. 在J2ME中将RSAPrivateCrtKeyParameters/RSAKeyParameters转换为PEM
- 8. 将PEM转换为PKCS7(Java)
- 9. 将DER编码的数据转换为c中的文本#
- 10. 将RSA公钥转换为RSA DER
- 11. Openssl RSA密钥PEM和DER转换 - 不匹配
- 12. 通过充气城堡图书馆转换der到pem
- 13. 使用openssl将pfx转换为pem
- 14. 将.pem文件转换为.jks
- 15. 将.pem私钥转换为.key格式
- 16. 如何将.pem转换为.key?
- 17. Can BouncyCastle将P12转换为PEM
- 18. 将mapes上的.pem转换为.ppk
- 19. 将* .pem证书转换为mozilla certdata.txt
- 20. 如何将pem转换为pfx文件?
- 21. 将ssh-dss键转换为.pem?
- 22. c#加密,得到.der和.pem文件作为输入
- 23. 如何在#C中将pkcs8密钥文件转换为DER格式?
- 24. 从cert8.db转换为PEM
- 25. 转换。关键为.pem
- 26. 如何转换.CRT为.pem
- 27. 在java中将PKCS#8私钥转换为PEM
- 28. 如何将.CSR文件转换为.NET中的.DER格式
- 29. 如何将私钥的十六进制表示转换为OpenSSL支持的格式(PEM/DER /?)
- 30. 在C/C++中将int转换为bool
OpenSSL的X509 -outform DER -in certificate.pem退房手续certificate.der https://www.sslshopper.com /ssl-converter.html – user1438832
如何在C++中使用openssl函数执行此操作? – itayb
另请参阅[使用OpenSSL RSA密钥与.Net](http://stackoverflow.com/q/30475758/608639)。它向您展示了一些使用'unique_ptr'管理资源的C++技巧。 – jww