02.10.2007 11:00:37Разбор запроса на сертификат Ответов: 3
Альберт
Имеется OID szOID_REQUEST_CLIENT_INFO, подскажите как можно его разобрать на Crypto API.

Пробую

CryptFormatObject(X509_ASN_ENCODING,0,0,NULL,szOID_REQUEST_CLIENT_INFO,pbData,cbData,NULL,&cbDecoded);
buffer = (wchar_t *)malloc(cbDecoded);
CryptFormatObject(X509_ASN_ENCODING,0,0,NULL,szOID_REQUEST_CLIENT_INFO,pbData,cbData,buffer,&cbDecoded);

на выходе получаю

Сведения о клиенте (1.3.6.1.4.1.311.21.20)
30 23 02 02 38 93 0c 04 61 6c 69 63 0c 09 41 4c
49 43 5c 61 6c 69 63 0c 0c 63 65 72 74 2d 72 65
71 2e 65 78 65

а хотелось бы разобрать цифры на понятные строки
 
Ответы:
02.10.2007 12:22:14Kirill Sobolev
Возможно, что только вручную как SEQUENCE. Этот атрибут добавляет CertEnroll на висте.
А certutil нормально его выводит?
02.10.2007 12:25:42Альберт
Нет certutil выфводит также.
Можно поподробней о SEQUENCE - как и какими функциями с ним работать?
02.10.2007 13:36:48Kirill Sobolev
SEQUENCE я как пример привел.
Надо посмотреть ASN.1 структуру этого атрибута (например dumpasn1) и затем уже разбирать вручную с помощью CryptDecodeObject.