Интегрированные сети ISDN


Приложение A ASNсинтаксис сертификатов



Приложение A. ASN.1 синтаксис сертификатов

Сертификаты используются SSL для аутентификации серверов и клиентов. SSL Сертификаты базируются в основном на X.509 [3]. Сертификат X.509 содержит следующую информацию (в нотации ASN.1 [1]):

X.509-Certificate ::= SEQUENCE { certificateInfo CertificateInfo,

signatureAlgorithm AlgorithmIdentifier, signature BIT STRING }

CertificateInfo ::= SEQUENCE { version [0] Version DEFAULT v1988,

serialNumber CertificateSerialNumber, signature AlgorithmIdentifier,

issuer Name, validity Validity, subject Name,

subjectPublicKeyInfo SubjectPublicKeyInfo }

Version ::= INTEGER { v1988(0) }

CertificateSerialNumber ::= INTEGER

Validity ::= SEQUENCE { notBefore UTCTime, notAfter UTCTime }

SubjectPublicKeyInfo ::= SEQUENCE { algorithm AlgorithmIdentifier,

subjectPublicKey BIT STRING }

AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER,

parameters ANY DEFINED BY ALGORITHM OPTIONAL }

Для целей SSL наложены ограничения на некоторые значения полей X.509:

  • Поля X.509-Certificate::signatureAlgorithm и CertificateInfo::signature должны иметь идентичные значения.
  • Имя эмитента сертификата должно преобразовываться в имя, которое приемлемо для приложения, использующего SSL.

Сертификаты верифицируются в несколько шагов. Во-первых, проверяется подпись сертификата и, если она некорректна, некорректен и сертификат (произошла транспортная ошибка или попытка модификации). Далее верифицируется поле CertificateInfo::issuer. Там должна быть ссылка на эмитента, которому приложение доверяет. Поле CertificateInfo::validity проверяется на текущую дату и верифицируется.

Наконец, проверяется поле CertificateInfo::subject. Эта проверка опционна и зависит от уровня доверия, необходимого приложению, которое использует SSL.

Приложение B. Идентификаторы объектов и типов атрибутов

SSL использует субнабор X.520 типов атрибутов, а также несколько специфических идентификаторов объектов. Будущие модификации протокола SSL смогут поддерживать больше типов атрибутов и больше идентификаторов объектов.




Начало  Назад  Вперед



Книжный магазин