如何使用openssl库将ASN1_对象转换为可读格式。?

如何使用openssl库将ASN1_对象转换为可读格式。?,openssl,certificate,ssl-certificate,x509certificate,x509,Openssl,Certificate,Ssl Certificate,X509certificate,X509,X509_扩展结构有一个ASN1_对象变量。我想看看里面的内容。 有谁能告诉我怎么做吗?ASN1\u对象只是OpenSSL对OID的表示,一个对象标识符。如果您只想知道它是旧的,那么: ASN1_OBJECT *obj = X509_EXTENSION_get_object(ex); // ex is your X509_EXTENSION * char buff[1024]; OBJ_obj2txt(buff, 1024, obj, 0); // 0 means it will prefer

X509_扩展结构有一个ASN1_对象变量。我想看看里面的内容。
有谁能告诉我怎么做吗?

ASN1\u对象只是OpenSSL对OID的表示,一个对象标识符。如果您只想知道它是旧的,那么:

ASN1_OBJECT *obj = X509_EXTENSION_get_object(ex); // ex is your X509_EXTENSION *
char buff[1024];
OBJ_obj2txt(buff, 1024, obj, 0); // 0 means it will prefer a textual representation (if available) rather than the numerical one
然后buf将包含一个带OID的C字符串


关于。

您可以在下面的代码片段中访问对象的数据值:

ASN1_OBJECT *obj = X509_EXTENSION_get_object(ex);
char *dt_value = (char *)ext->value->data
printf("Object Value: %s\n", dt_value);