Статус документа
Статус документа

ГОСТ Р ИСО/МЭК 9594-8-98 Информационная технология (ИТ). Взаимосвязь открытых систем. Справочник. Часть 8. Основы аутентификации

ПРИЛОЖЕНИЕ А
(обязательное)

     
ОСНОВЫ АУТЕНТИФИКАЦИИ В АСН.1


В данном приложении приведены определения всех типов, значений и классов информационных объектов АСН.1, содержащихся в настоящем стандарте, в виде модуля АСН.1 "AuthentificationFramework" (Основы-Аутентификации).

AuthentificationFramework {joint-iso-ccitt ds(5) module(1) authentificationFramework(7) 2}

DEFINITIONS : : =

BEGIN

- - EXPORTS ALL -

- - Определенные в этом модуле типы и значения экспортируются для использования в других модулях

- - АСН.1, содержащихся в спецификациях справочника, и в других прикладных программах, которые,

- - в свою очередь, будут использовать их для доступа к услугам справочника. Другие прикладные програм-

- - мы могут использовать эти типы и значения для своих собственных целей, но это не должно

- - препятствовать расширениям и модификациям, необходимым при обслуживании или усовершенствова-

- - нии услуг справочника.

IMPORTS

id-at,informationFramework,upperBounds,selectedAttributeTypes,basicAccessControl

FROM UsefulDefinitions{joint-iso-ccitt ds(5) module(1)

usefulDefinitions(0) 2}

Name,

ATTRIBUTE

FROM InformationFramework informationFramework

ub-user-password

FROM UpperBounds upper Bounds

AuthentificationLevel

FROM BasicAccessControl basicAccessControl

UniqueIdentifier, octetStringMatch

FROM SelectedAttributeTypes selectedAttributeTypes;


- - Типы - -

Certificate             :: =

SIGNED {SEQUENCE{

     version

[0] Version DEFAULT v1,

     serialNumber

     CertificateSerialNumber,

     signature

     Algorithmldentifier,

     issuer

     Name,

     validity

     Validity,

     subject

     Name,

     subjectPublicKeyInfo

     SubJectPublicKeyInfo,

     issuerUniqueIdentifier

[1] IMPLICIT Uniqueldentifier OPTIONAL,

- - при его наличии, должна быть версия v2 - -}}

     subjectUniqueIdentifier

[2] IMPLICIT Uniqueldentifier OPTIONAL,

- - при его наличии, должна быть версия v2 - -}}

Version

: : =

INTEGER { v1(0), v2(1) }

CertificateSerialNumber

: : =

INTEGER

Algorithmldentifier

: : =

SEQUENCE {

algorithm

ALGORITHM.&id ({SupporteadAlgorithms}),

parameters

ALGORITHM.&Type ({SupporteadAlgorithms} {Algorithms}) OPTIONAL}


- Определение следующего набора информационных объектов отложено, возможно, до разработки стандартизованных профилей или заявок о соответствии реализации протоколу. Такой набор необходим для определения табличных ограничений на компоненту "параметры" атрибута Algorithmldentifier.

- SupporteadAlgorithms ALGORITHM :: = {… I...}

Validity

: : =

SEQUENCE {

     notBefore UTCTime,


     notAfter UTCTime }


SubjectPublicKeyInfo

: : =

SEQUENCE {

     algorithm

Algorithmldentifier,

     subjectPublicKey

BIT STRING }

Certificates

: : =

SEQUENCE {

     userCertificate

Certificate,

     certificationPath

ForwardCertificationPath OPTIONAI }

ForwardCertificationPath

: : =

SEQUENCE OF CrossCertificates

CertificationPath

: : =

SEQUENCE {

     userCertificate

Certificate,

     theCACertificates

SEQUENCE OF CertificatePairOPTIONAL}

CrossCertificates

: : =

SET OF Certificate

CertificateList

: : =

SIGNED {SEQUENCE{

     signature

Algorithmldentifier,

     issuer

Name,

     this Update

UTCTime,

     nextUpdate

UTCTime OPTIONAL,

     revokedCertificates

SEQUENCE OF SEQUENCE {

     userCertificate

     CertificateSerialNumber,

     revocationDate

     UTCTime } OPTIONAL}}

CertificatePair

: : =

SEQUENCE (

     forward                   [0]

Certificate OPTIONAL,

     reverse                   [1]

Certificate OPTIONAL

- - Должна иметь место, по меньшей мере, одна из пар - -}

     - - Типы атрибутов -


userPassword

ATTRIBUTE : : = {

WITH SYNTAX

OCTET STRING (SIZE


(O .. ub-user-password))

         EQUALITY MATCHING RULE octetStringMatch

     ID

id-at-userPassword }

userCertificate

ATTRIBUTE : := {

     WITH SYNTAX

Certificate

     ID

id-at-userCertificate }

cACertificate

ATTRIBUTE : := {

     WITH SYNTAX

Certificate

     ID

id-at-cAcertificate }

authorityRevocationList

ATTRIBUTE : := {

     WITH SYNTAX

CertificateList

     ID

id-at-authorityRevocationList }

certificateRevocationList

ATTRIBUTE : := {

     WITH SYNTAX

CertificateList

     ID

id-at-CertificateRevocationList }

crossCertificatePair

ATTRIBUTE : : = {

     WITH SYNTAX

CertificatePair

     ID

id-at-crossCertificatePair }


- - Классы информационных объектов - -

ALGORITHM : : = TYPE-IDENTIFIER

- - Параметризованные типы - -