ASN1_STRING的转换及显示
//获取证书主题信息
subject = X509_get_subject_name(cert);
//获得证书主题信息条目个数
entriesNum = sk_X509_NAME_ENTRY_num(subject->entries);
//X509_NAME_print_ex(biosubject, subject, 0, ASN1_STRFLGS_ESC_MSB);
//BIO_read(biosubject,msginfo,msginfoLen);
//循环读取个条目信息
for(i=0;i
{
//获取第I个条目值
name_entry = sk_X509_NAME_ENTRY_value(subject->entries,i);
Nid = OBJ_obj2nid(name_entry->object);
out=NULL;
if((len = ASN1_STRING_to_UTF8(&out,name_entry->value))<0)
continue;
nUtf8 = 2*len;
pUtf8 = (unsigned short *)malloc(nUtf8);
memset(pUtf8,0,nUtf8);
rv = MultiByteToWideChar(
CP_UTF8,
0,
(char*)out,
len,
pUtf8,
nUtf8);
rv = WideCharToMultiByte(
CP_ACP,