RFC: 5280
Оригинал: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
Предыдущие версии: RFC 2459, RFC 3280, RFC 4325, RFC 4630
Категория: Предложенный стандарт
Дата публикации: (с дополнениями из RFC 6818, Январь 2013)
Авторы: , , , , , ,
Перевод: Мельников Дмитрий Анатольевич

А.1. Точно размеченный ASN.1-модуль, синтаксис 1988 г.

PKIX1Explicit88 { iso(1) identified-organization(3) dod(6) internet(1)
  security(5) mechanisms(5) pkix(7) id-mod(0) id-pkix1-explicit(18) }
DEFINITIONS EXPLICIT TAGS ::=
BEGIN
-- EXPORTS ALL --
-- IMPORTS NONE --
-- форматы данных «UNIVERSAL», установленные стандартами ASN.1 1993 и 1998 г.г.
-- и востребованные данным стандартом
UniversalString ::= [UNIVERSAL 28] IMPLICIT OCTET STRING
        -- UniversalString-формат представлен в стандарте ASN.1:1993
BMPString ::= [UNIVERSAL 30] IMPLICIT OCTET STRING
      -- BMPString-формат, являющийся подвидом UniversalString-формата, и модели
      -- Основной многоязычный символьный алфавит,
      -- в соответствие со стандартом ISO/IEC 10646
UTF8String ::= [UNIVERSAL 12] IMPLICIT OCTET STRING
      -- содержание этого формата соответствует стандарту RFC 3629.
-- специальные OID в интересах Интернет/PKI-инфраструктуры
id-pkix  OBJECT IDENTIFIER  ::=
         { iso(1) identified-organization(3) dod(6) internet(1)
                    security(5) mechanisms(5) pkix(7) }
-- ветви дерева иерархии Интернет/PKI-инфраструктуры
id-pe OBJECT IDENTIFIER ::= { id-pkix 1 }
        -- ветвь частных расширений для дерева иерархии Интернет/PKI-инфраструктуры
id-qt OBJECT IDENTIFIER ::= { id-pkix 2 }
        -- ветвь форматов определителя политик
id-kp OBJECT IDENTIFIER ::= { id-pkix 3 }
        -- ветвь OID расширения области действия ключа
id-ad OBJECT IDENTIFIER ::= { id-pkix 48 }
        -- ветвь определителей доступа
-- идентификаторы определителей политик для Интернет/PKI-инфраструктуры
id-qt-cps      OBJECT IDENTIFIER ::=  { id-qt 1 }
      -- OID CPS-указателя
id-qt-unotice  OBJECT IDENTIFIER ::=  { id-qt 2 }
      -- OID определителя извещения пользователя
-- описания определителя доступа
id-ad-ocsp         OBJECT IDENTIFIER ::= { id-ad 1 }
id-ad-caIssuers    OBJECT IDENTIFIER ::= { id-ad 2 }
id-ad-timeStamping OBJECT IDENTIFIER ::= { id-ad 3 }
id-ad-caRepository OBJECT IDENTIFIER ::= { id-ad 5 }
-- типы (форматы) данных в атрибутах
Attribute               ::= SEQUENCE {
      type             AttributeType,
      values    SET OF AttributeValue }
            -- по крайней мере требуется одно значение
AttributeType           ::= OBJECT IDENTIFIER
AttributeValue          ::= ANY -- DEFINED BY AttributeType
AttributeTypeAndValue   ::= SEQUENCE {
        type    AttributeType,
        value   AttributeValue }
-- Предлагаемые атрибуты именования: Описание следующей совокупности
-- информационных объектов может быть дополнено с целью удовлетворения
-- локальных требований. Следует отметить, что удаление элементов
-- этой совокупности может нарушить функциональную совместимость
-- с прикладными системами и ИТС, придерживающимися данного стандарта.
-- Состоят из двух полей: за полем «AttributeType» (тип атрибута) следует
-- определение формата соответствующего поля «AttributeValue» (значение атрибута)
-- Ветвь стандартных атрибутов наименований
id-at OBJECT IDENTIFIER ::= { joint-iso-ccitt(2) ds(5) 4 }
-- атрибуты наименований формата «X520name»
id-at-name                AttributeType ::= { id-at 41 }
id-at-surname             AttributeType ::= { id-at  4 }
id-at-givenName           AttributeType ::= { id-at 42 }
id-at-initials            AttributeType ::= { id-at 43 }
id-at-generationQualifier AttributeType ::= { id-at 44 }
-- Атрибуты наименований формата «X520name»:
--   X520name ::= DirectoryString (SIZE (1..ub-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520name ::= CHOICE {
      teletexString     TeletexString   (SIZE (1..ub-name)),
      printableString   PrintableString (SIZE (1..ub-name)),
      universalString   UniversalString (SIZE (1..ub-name)),
      utf8String        UTF8String      (SIZE (1..ub-name)),
      bmpString         BMPString       (SIZE (1..ub-name)) }
-- атрибуты наименований формата «X520CommonName»
id-at-commonName        AttributeType ::= { id-at 3 }
-- Атрибуты наименований формата «X520CommonName»:
--   X520CommonName ::= DirectoryName (SIZE (1..ub-common-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520CommonName ::= CHOICE {
      teletexString     TeletexString   (SIZE (1..ub-common-name)),
      printableString   PrintableString (SIZE (1..ub-common-name)),
      universalString   UniversalString (SIZE (1..ub-common-name)),
      utf8String        UTF8String      (SIZE (1..ub-common-name)),
      bmpString         BMPString       (SIZE (1..ub-common-name)) }
-- атрибуты наименований формата «X520LocalityName»
id-at-localityName      AttributeType ::= { id-at 7 }
-- Атрибуты наименований формата «X520LocalityName»:
--   X520LocalityName ::= DirectoryName (SIZE (1..ub-locality-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520LocalityName ::= CHOICE {
      teletexString     TeletexString   (SIZE (1..ub-locality-name)),
      printableString   PrintableString (SIZE (1..ub-locality-name)),
      universalString   UniversalString (SIZE (1..ub-locality-name)),
      utf8String        UTF8String      (SIZE (1..ub-locality-name)),
      bmpString         BMPString       (SIZE (1..ub-locality-name)) }
-- атрибуты наименований формата «X520StateOrProvinceName»
id-at-stateOrProvinceName AttributeType ::= { id-at 8 }
-- Атрибуты наименований формата «X520StateOrProvinceName»:
--   X520StateOrProvinceName ::= DirectoryName (SIZE (1..ub-state-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520StateOrProvinceName ::= CHOICE {
      teletexString     TeletexString   (SIZE (1..ub-state-name)),
      printableString   PrintableString (SIZE (1..ub-state-name)),
      universalString   UniversalString (SIZE (1..ub-state-name)),
      utf8String        UTF8String      (SIZE (1..ub-state-name)),
      bmpString         BMPString       (SIZE (1..ub-state-name)) }
-- атрибуты наименований формата «X520OrganizationName»
id-at-organizationName  AttributeType ::= { id-at 10 }
-- Атрибуты наименований формата «X520OrganizationName»:
--   X520OrganizationName ::=
--          DirectoryName (SIZE (1..ub-organization-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520OrganizationName ::= CHOICE {
      teletexString     TeletexString
                          (SIZE (1..ub-organization-name)),
      printableString   PrintableString
                          (SIZE (1..ub-organization-name)),
      universalString   UniversalString
                          (SIZE (1..ub-organization-name)),
      utf8String        UTF8String
                          (SIZE (1..ub-organization-name)),
      bmpString         BMPString
                          (SIZE (1..ub-organization-name))  }
-- атрибуты наименований формата «X520OrganizationalUnitName»
id-at-organizationalUnitName AttributeType ::= { id-at 11 }
-- Атрибуты наименований формата «X520OrganizationalUnitName»:
--   X520OrganizationalUnitName ::=
--          DirectoryName (SIZE (1..ub-organizational-unit-name))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520OrganizationalUnitName ::= CHOICE {
      teletexString     TeletexString
                          (SIZE (1..ub-organizational-unit-name)),
      printableString   PrintableString
                          (SIZE (1..ub-organizational-unit-name)),
      universalString   UniversalString
                          (SIZE (1..ub-organizational-unit-name)),
      utf8String        UTF8String
                          (SIZE (1..ub-organizational-unit-name)),
      bmpString         BMPString
                          (SIZE (1..ub-organizational-unit-name)) }
-- атрибуты наименований формата «X520Title»
id-at-title             AttributeType ::= { id-at 12 }
-- Атрибуты наименований формата «X520Title»:
--   X520Title ::= DirectoryName (SIZE (1..ub-title))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520Title ::= CHOICE {
      teletexString     TeletexString   (SIZE (1..ub-title)),
      printableString   PrintableString (SIZE (1..ub-title)),
      universalString   UniversalString (SIZE (1..ub-title)),
      utf8String        UTF8String      (SIZE (1..ub-title)),
      bmpString         BMPString       (SIZE (1..ub-title)) }
-- атрибуты наименований формата «X520dnQualifier»
id-at-dnQualifier       AttributeType ::= { id-at 46 }
X520dnQualifier ::=     PrintableString
-- атрибуты наименований формата «X520countryName» (digraph from IS 3166)
id-at-countryName       AttributeType ::= { id-at 6 }
X520countryName ::=     PrintableString (SIZE (2))
-- атрибуты наименований формата «X520SerialNumber»
id-at-serialNumber      AttributeType ::= { id-at 5 }
X520SerialNumber ::=    PrintableString (SIZE (1..ub-serial-number))
-- атрибуты наименований формата «X520Pseudonym»
id-at-pseudonym         AttributeType ::= { id-at 65 }
-- Атрибуты наименований формата «X520Pseudonym»:
--   X520Pseudonym ::= DirectoryName (SIZE (1..ub-pseudonym))
--
-- Расширение с целью исключения записей в параметрическом формате:
X520Pseudonym ::= CHOICE {
   teletexString     TeletexString   (SIZE (1..ub-pseudonym)),
   printableString   PrintableString (SIZE (1..ub-pseudonym)),
   universalString   UniversalString (SIZE (1..ub-pseudonym)),
   utf8String        UTF8String      (SIZE (1..ub-pseudonym)),
   bmpString         BMPString       (SIZE (1..ub-pseudonym)) }
-- атрибуты наименований формата «DomainComponent» (из RFC 4519)
id-domainComponent   AttributeType ::= { 0 9 2342 19200300 100 1 25 }
DomainComponent ::=  IA5String
-- унаследованные атрибуты
pkcs-9 OBJECT IDENTIFIER ::=
       { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 9 }
id-emailAddress      AttributeType ::= { pkcs-9 1 }
EmailAddress ::=     IA5String (SIZE (1..ub-emailaddress-length))
-- форматы данных наименований --
Name ::= CHOICE {  -- в настоящее время возможен только один --
      rdnSequence  RDNSequence }
RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
DistinguishedName ::=   RDNSequence
RelativeDistinguishedName ::= SET SIZE (1..MAX) OF AttributeTypeAndValue
-- формат последовательности символов для Службы единого каталога --
DirectoryString ::= CHOICE {
      teletexString       TeletexString   (SIZE (1..MAX)),
      printableString     PrintableString (SIZE (1..MAX)),
      universalString     UniversalString (SIZE (1..MAX)),
      utf8String          UTF8String      (SIZE (1..MAX)),
      bmpString           BMPString       (SIZE (1..MAX)) }
-- конкретные структуры сертификата и СОС начинаются здесь
Certificate  ::=  SEQUENCE  {
     tbsCertificate       TBSCertificate,
     signatureAlgorithm   AlgorithmIdentifier,
     signature            BIT STRING  }
TBSCertificate  ::=  SEQUENCE  {
     version         [0]  Version DEFAULT v1,
     serialNumber         CertificateSerialNumber,
     signature            AlgorithmIdentifier,
     issuer               Name,
     validity             Validity,
     subject              Name,
     subjectPublicKeyInfo SubjectPublicKeyInfo,
     issuerUniqueID  [1]  IMPLICIT UniqueIdentifier OPTIONAL,
                          -- если представлен, то должен быть второй или третьей версии
     subjectUniqueID [2]  IMPLICIT UniqueIdentifier OPTIONAL,
                          -- если представлен, то должен быть второй или третьей версии
     extensions      [3]  Extensions OPTIONAL
                          -- если представлен, то должен быть третьей версии --  }
Version  ::=  INTEGER  {  v1(0), v2(1), v3(2)  }
CertificateSerialNumber  ::=  INTEGER
Validity ::= SEQUENCE {
     notBefore      Time,
     notAfter       Time  }
Time ::= CHOICE {
     utcTime        UTCTime,
     generalTime    GeneralizedTime }
UniqueIdentifier  ::=  BIT STRING
SubjectPublicKeyInfo  ::=  SEQUENCE  {
     algorithm            AlgorithmIdentifier,
     subjectPublicKey     BIT STRING  }
Extensions  ::=  SEQUENCE SIZE (1..MAX) OF Extension
Extension  ::=  SEQUENCE  {
     extnID      OBJECT IDENTIFIER,
     critical    BOOLEAN DEFAULT FALSE,
     extnValue   OCTET STRING
                 -- содержит ASN.1-модуль в DER-кодировке,
                 -- соответствующей расширенному формату, 
                 -- определяемому идентификатором расширения «extnID»
     }
-- Структуры СОС
CertificateList  ::=  SEQUENCE  {
     tbsCertList          TBSCertList,
     signatureAlgorithm   AlgorithmIdentifier,
     signature            BIT STRING  }
TBSCertList  ::=  SEQUENCE  {
     version                 Version OPTIONAL,
                                   -- если представлена, то должна быть вторая версия
     signature               AlgorithmIdentifier,
     issuer                  Name,
     thisUpdate              Time,
     nextUpdate              Time OPTIONAL,
     revokedCertificates     SEQUENCE OF SEQUENCE  {
          userCertificate         CertificateSerialNumber,
          revocationDate          Time,
          crlEntryExtensions      Extensions OPTIONAL
                                   -- если представлена, то должна быть вторая версия
                               }  OPTIONAL,
     crlExtensions           [0] Extensions OPTIONAL }
                                   -- если представлена, то должна быть вторая версия
-- поля Version, Time, CertificateSerialNumber и Extensions были определены ранее,
-- в структуре сертификата
AlgorithmIdentifier  ::=  SEQUENCE  {
     algorithm               OBJECT IDENTIFIER,
     parameters              ANY DEFINED BY algorithm OPTIONAL  }
                                -- содержит значение формата, который зарегистрирован
                                -- для совместного использования со значением
                                -- идентификатора алгоритма
-- синтаксис X.400-адресов начинается здесь
ORAddress ::= SEQUENCE {
   built-in-standard-attributes BuiltInStandardAttributes,
   built-in-domain-defined-attributes
                   BuiltInDomainDefinedAttributes OPTIONAL,
   -- см. также атрибуты для teletext, определяемые сетевым сегментом/областью
   extension-attributes ExtensionAttributes OPTIONAL }
-- стандартные встраиваемые атрибуты
BuiltInStandardAttributes ::= SEQUENCE {
   country-name                  CountryName OPTIONAL,
   administration-domain-name    AdministrationDomainName OPTIONAL,
   network-address           [0] IMPLICIT NetworkAddress OPTIONAL,
     -- см. также расширенный сетевой адрес
   terminal-identifier       [1] IMPLICIT TerminalIdentifier OPTIONAL,
   private-domain-name       [2] PrivateDomainName OPTIONAL,
   organization-name         [3] IMPLICIT OrganizationName OPTIONAL,
     -- см. также наименование организации в teletex-формате
   numeric-user-identifier   [4] IMPLICIT NumericUserIdentifier
                                 OPTIONAL,
   personal-name             [5] IMPLICIT PersonalName OPTIONAL,
     -- см. также персональное имя в teletex-формате
   organizational-unit-names [6] IMPLICIT OrganizationalUnitNames
                                 OPTIONAL }
     -- см. также наименования подразделений организации в teletex-формате
CountryName ::= [APPLICATION 1] CHOICE {
   x121-dcc-code         NumericString
                           (SIZE (ub-country-name-numeric-length)),
   iso-3166-alpha2-code  PrintableString
                           (SIZE (ub-country-name-alpha-length)) }
AdministrationDomainName ::= [APPLICATION 2] CHOICE {
   numeric   NumericString   (SIZE (0..ub-domain-name-length)),
   printable PrintableString (SIZE (0..ub-domain-name-length)) }
NetworkAddress ::= X121Address  -- см. также расширенный сетевой адрес
X121Address ::= NumericString (SIZE (1..ub-x121-address-length))
TerminalIdentifier ::= PrintableString (SIZE (1..ub-terminal-id-length))
PrivateDomainName ::= CHOICE {
   numeric   NumericString   (SIZE (1..ub-domain-name-length)),
   printable PrintableString (SIZE (1..ub-domain-name-length)) }
OrganizationName ::= PrintableString
                            (SIZE (1..ub-organization-name-length))
  -- см. также наименование организации в teletex-формате
NumericUserIdentifier ::= NumericString
                            (SIZE (1..ub-numeric-user-id-length))
PersonalName ::= SET {
   surname     [0] IMPLICIT PrintableString
                    (SIZE (1..ub-surname-length)),
   given-name  [1] IMPLICIT PrintableString
                    (SIZE (1..ub-given-name-length)) OPTIONAL,
   initials    [2] IMPLICIT PrintableString
                    (SIZE (1..ub-initials-length)) OPTIONAL,
   generation-qualifier [3] IMPLICIT PrintableString
                    (SIZE (1..ub-generation-qualifier-length))
                    OPTIONAL }
  -- см. также персональное имя в teletex-формате
OrganizationalUnitNames ::= SEQUENCE SIZE (1..ub-organizational-units)
                             OF OrganizationalUnitName
  -- см. также наименования подразделений организации в teletex-формате
OrganizationalUnitName ::= PrintableString (SIZE
                    (1..ub-organizational-unit-name-length))
-- встраиваемые атрибуты, определяемые сетевыми сегментами/областями
BuiltInDomainDefinedAttributes ::= SEQUENCE SIZE
                    (1..ub-domain-defined-attributes) OF
                    BuiltInDomainDefinedAttribute
BuiltInDomainDefinedAttribute ::= SEQUENCE {
   type PrintableString (SIZE
                   (1..ub-domain-defined-attribute-type-length)),
   value PrintableString (SIZE
                   (1..ub-domain-defined-attribute-value-length)) }
-- атрибуты расширений
ExtensionAttributes ::= SET SIZE (1..ub-extension-attributes) OF
               ExtensionAttribute
ExtensionAttribute ::=  SEQUENCE {
   extension-attribute-type [0] IMPLICIT INTEGER
                   (0..ub-extension-attributes),
   extension-attribute-value [1]
                   ANY DEFINED BY extension-attribute-type }
-- форматы расширений и значения атрибутов
common-name INTEGER ::= 1
CommonName ::= PrintableString (SIZE (1..ub-common-name-length))
teletex-common-name INTEGER ::= 2
TeletexCommonName ::= TeletexString (SIZE (1..ub-common-name-length))
teletex-organization-name INTEGER ::= 3
TeletexOrganizationName ::=
                TeletexString (SIZE (1..ub-organization-name-length))
teletex-personal-name INTEGER ::= 4
TeletexPersonalName ::= SET {
   surname     [0] IMPLICIT TeletexString
                    (SIZE (1..ub-surname-length)),
   given-name  [1] IMPLICIT TeletexString
                    (SIZE (1..ub-given-name-length)) OPTIONAL,
   initials    [2] IMPLICIT TeletexString
                    (SIZE (1..ub-initials-length)) OPTIONAL,
   generation-qualifier [3] IMPLICIT TeletexString
                    (SIZE (1..ub-generation-qualifier-length))
                    OPTIONAL }
teletex-organizational-unit-names INTEGER ::= 5
TeletexOrganizationalUnitNames ::= SEQUENCE SIZE
      (1..ub-organizational-units) OF TeletexOrganizationalUnitName
TeletexOrganizationalUnitName ::= TeletexString
                  (SIZE (1..ub-organizational-unit-name-length))
pds-name INTEGER ::= 7
PDSName ::= PrintableString (SIZE (1..ub-pds-name-length))
physical-delivery-country-name INTEGER ::= 8
PhysicalDeliveryCountryName ::= CHOICE {
   x121-dcc-code NumericString (SIZE (ub-country-name-numeric-length)),
   iso-3166-alpha2-code PrintableString
                               (SIZE (ub-country-name-alpha-length)) }
postal-code INTEGER ::= 9
PostalCode ::= CHOICE {
   numeric-code   NumericString (SIZE (1..ub-postal-code-length)),
   printable-code PrintableString (SIZE (1..ub-postal-code-length)) }
physical-delivery-office-name INTEGER ::= 10
PhysicalDeliveryOfficeName ::= PDSParameter
physical-delivery-office-number INTEGER ::= 11
PhysicalDeliveryOfficeNumber ::= PDSParameter
extension-OR-address-components INTEGER ::= 12
ExtensionORAddressComponents ::= PDSParameter
physical-delivery-personal-name INTEGER ::= 13
PhysicalDeliveryPersonalName ::= PDSParameter
physical-delivery-organization-name INTEGER ::= 14
PhysicalDeliveryOrganizationName ::= PDSParameter
extension-physical-delivery-address-components INTEGER ::= 15
ExtensionPhysicalDeliveryAddressComponents ::= PDSParameter
unformatted-postal-address INTEGER ::= 16
UnformattedPostalAddress ::= SET {
   printable-address SEQUENCE SIZE (1..ub-pds-physical-address-lines)
        OF PrintableString (SIZE (1..ub-pds-parameter-length)) OPTIONAL,
   teletex-string TeletexString
        (SIZE (1..ub-unformatted-address-length)) OPTIONAL }
street-address INTEGER ::= 17
StreetAddress ::= PDSParameter
post-office-box-address INTEGER ::= 18
PostOfficeBoxAddress ::= PDSParameter
poste-restante-address INTEGER ::= 19
PosteRestanteAddress ::= PDSParameter
unique-postal-name INTEGER ::= 20
UniquePostalName ::= PDSParameter
local-postal-attributes INTEGER ::= 21
LocalPostalAttributes ::= PDSParameter
PDSParameter ::= SET {
   printable-string PrintableString
                (SIZE(1..ub-pds-parameter-length)) OPTIONAL,
   teletex-string TeletexString
                (SIZE(1..ub-pds-parameter-length)) OPTIONAL }
extended-network-address INTEGER ::= 22
ExtendedNetworkAddress ::= CHOICE {
   e163-4-address SEQUENCE {
      number      [0] IMPLICIT NumericString
                       (SIZE (1..ub-e163-4-number-length)),
      sub-address [1] IMPLICIT NumericString
                       (SIZE (1..ub-e163-4-sub-address-length))
                       OPTIONAL },
   psap-address   [0] IMPLICIT PresentationAddress }
PresentationAddress ::= SEQUENCE {
    pSelector     [0] EXPLICIT OCTET STRING OPTIONAL,
    sSelector     [1] EXPLICIT OCTET STRING OPTIONAL,
    tSelector     [2] EXPLICIT OCTET STRING OPTIONAL,
    nAddresses    [3] EXPLICIT SET SIZE (1..MAX) OF OCTET STRING }
terminal-type  INTEGER ::= 23
TerminalType ::= INTEGER {
   telex        (3),
   teletex      (4),
   g3-facsimile (5),
   g4-facsimile (6),
   ia5-terminal (7),
   videotex     (8) } (0..ub-integer-options)
-- встраиваемые атрибуты, определяемые сетевыми сегментами/областями
teletex-domain-defined-attributes INTEGER ::= 6
TeletexDomainDefinedAttributes ::= SEQUENCE SIZE
   (1..ub-domain-defined-attributes) OF TeletexDomainDefinedAttribute
TeletexDomainDefinedAttribute ::= SEQUENCE {
        type TeletexString
               (SIZE (1..ub-domain-defined-attribute-type-length)),
        value TeletexString
               (SIZE (1..ub-domain-defined-attribute-value-length)) }
-- описание верхних границ в Приложении В Рекомендации ITU-T X.411
-- (Reference Definition of MTS Parameter Upper Bounds, Эталонное описание верхних
-- границ параметров в системах доставки сообщений) обязательно должно
-- рассматриваться как эталонное
-- Верхние границы
ub-name INTEGER ::= 32768
ub-common-name INTEGER ::= 64
ub-locality-name INTEGER ::= 128
ub-state-name INTEGER ::= 128
ub-organization-name INTEGER ::= 64
ub-organizational-unit-name INTEGER ::= 64
ub-title INTEGER ::= 64
ub-serial-number INTEGER ::= 64
ub-match INTEGER ::= 128
ub-emailaddress-length INTEGER ::= 255
ub-common-name-length INTEGER ::= 64
ub-country-name-alpha-length INTEGER ::= 2
ub-country-name-numeric-length INTEGER ::= 3
ub-domain-defined-attributes INTEGER ::= 4
ub-domain-defined-attribute-type-length INTEGER ::= 8
ub-domain-defined-attribute-value-length INTEGER ::= 128
ub-domain-name-length INTEGER ::= 16
ub-extension-attributes INTEGER ::= 256
ub-e163-4-number-length INTEGER ::= 15
ub-e163-4-sub-address-length INTEGER ::= 40
ub-generation-qualifier-length INTEGER ::= 3
ub-given-name-length INTEGER ::= 16
ub-initials-length INTEGER ::= 5
ub-integer-options INTEGER ::= 256
ub-numeric-user-id-length INTEGER ::= 32
ub-organization-name-length INTEGER ::= 64
ub-organizational-unit-name-length INTEGER ::= 32
ub-organizational-units INTEGER ::= 4
ub-pds-name-length INTEGER ::= 16
ub-pds-parameter-length INTEGER ::= 30
ub-pds-physical-address-lines INTEGER ::= 6
ub-postal-code-length INTEGER ::= 16
ub-pseudonym INTEGER ::= 128
ub-surname-length INTEGER ::= 40
ub-terminal-id-length INTEGER ::= 24
ub-unformatted-address-length INTEGER ::= 180
ub-x121-address-length INTEGER ::= 16
-- Примечание - верхние границы форматов последовательностей символов,
-- например TeletexString, измеряются в символах. За исключением
-- последовательностей PrintableString или IA5String, для хранения
-- значения потребуется значительно большее количество октетов.
-- Целесообразно, чтобы для последовательности TeletexString было
-- зарезервировано как минимум 16 октетов или в два раза больше в качестве
-- верхней границы. Целесообразно, чтобы для последовательности UTF8String или
-- UniversalString было зарезервировано, как минимум, четырёх кратное превышение
-- верхней границы.
END

Страница 98 из 108

2007 - 2022 © Русские переводы RFC, IETF, ISOC.