- 前言
最近项目使用到了openssl库,特此记录下学习的内容。
2.简单获取x509.pem证书的内容。
#include <stdio.h>
#include <openssl/x509.h>
#include <openssl/x509v3.h>
int main()
{
BIO *b;
char *Name = NULL, *header = NULL;
unsigned char *data = NULL;
b = BIO_new_file("platform.x509.pem", "r");
while (1)
{
X509 *x;
x = PEM_read_bio_X509(b, NULL, 0, NULL);
if (x == NULL)
break;
X509_print_fp(stdout, x);
X509_NAME *subject = X509_get_subject_name(x);
printf("%lu\n", X509_get_version(x));
printf("%lu\n", X509_subject_name_hash(x));
printf("%lu\n", X509_issuer_name_hash(x));
X509_free(x);
}
BIO_free(b);
return 0;
}
3.编译方法
gcc 1.c -lssl -lcrypto
4.函数说明
PEM_read_bio_X509 该函数可用循环读取多次,特别时当一个证书文件中包含一个以上的证书数据时。