Я хочу написать программу на C++ для анализа файла сертификата, совместимого с X.509, с помощью PolarSSL, извлечь все его атрибуты и сопоставить их с шаблоном объекта PKCS#11 для хранения в криптографическом токене. Мне также нужно иметь возможность извлекать сохраненные атрибуты объекта и воссоздавать исходный файл, используя их, но я точно не знаю, как сопоставить поля структуры PolarSSL x509_cert и атрибуты объекта PKCS#11 X.509.
I знать часть этого сопоставления (т.е. crt.valid_from
сопоставляется с CKA_START_DATE
или crt.valid_to
сопоставляется с CKA_END_DATE
) и нужны эти атрибуты для создания моего объекта сертификата на токене (все эти значения должны быть установлены в соответствии со спецификациями PKCS#11):
CKA_CERTIFICATE_CATEGORY
CKA_CHECK_VALUE
CKA_SUBJECT
CKA_ID
CKA_ISSUER
CKA_SERIAL_NUMBER
CKA_VALUE
CKA_URL
CKA_HASH_OF_SUBJECT_PUBLIC_KEY
CKA_HASH_OF_ISSUER_PUBLIC_KEY
CKA_JAVA_MIDP_SECURITY_DOMAIN
Кто-нибудь может мне помочь?