Ответ 1
IETF PKIX (последняя версия RFC 5280) - это хорошо принятый профиль для сертификатов. Из раздела 4.1.2.4 должны поддерживаться следующие поля (я добавил между круглыми скобками длинное OpenSSL и необязательное короткое имя):
- страна (countryName, C),
- организация (organizationName, O),
- организационная единица (organizUnitName, OU),
- квалификатор отличительного имени (dnQualifier),
- название штата или провинции (stateOrProvinceName, ST),
- общее имя (commonName, CN) и
- серийный номер (serialNumber).
Там также список элементов, которые должны поддерживаться:
- населенный пункт (locality, L),
- название (title),
- фамилия (имя, фамилия SN),
- имя (имя, GN),
- инициалы (инициалы),
- псевдоним (псевдоним) и
- квалификатор поколения (generationQualifier).
Значения должны быть закодированы в UTF8String или PrintableString (некоторые из них только в PrintableString, а некоторые исключения в IA5String). Стандарт также имеет максимальную длину для всех типов полей (Приложение A.1)
Из соображений совместимости реализации также должны поддерживать доменные компоненты (domainComponent, DC), закодированные в IA5String. Внимание обращается на электронную почту (emailAddress) и ее кодировку (IA5String, но она считается устаревшей в DN (она должна быть в расширении Subject Alternative Name).