Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OCSP.doc
Скачиваний:
4
Добавлен:
23.02.2015
Размер:
101.89 Кб
Скачать
  1. Формати даних

У протоколі взаємодії використовуються два типи повідомлень. Повідомлення від користувача OCSP-сервера ЦСК (запит), і повідомлення від OCSP-сервера ЦСК користувачеві (відповідь).

Формати повідомлень визначені на основі RFC 2560 (OCSP).

    1. Формат запиту на інтерактивну перевірку статусу сертифікату

Запит, який передається від користувача до OCSP-сервера ЦСК представляється у вигляді повідомлення OCSPRequest:

OCSPRequest ::= SEQUENCE { tbsRequest TBSRequest, optionalSignature [0] EXPLICIT Signature OPTIONAL }

Поле tbsRequest містить безпосередньо дані запиту.

Необв’язкове поле optionalSignature може містити ЕЦП даних запиту.

Signature ::= SEQUENCE { signatureAlgorithm AlgorithmIdentifier, signature BIT STRING }

Поле signatureAlgorithm містить ідентифікатор алгоритму електроного цифрового підпису.

Для алгоритму ЕЦП ДСТУ-4145:2002 поле algorithm поля signatureAlgorithm може мати два значення:

dstu4145PBAlgo OBJECT IDENTIFIER ::= { iso(1) member-body(2) Ukraine(804 ) root (2) security(1) cryptography(1) pki(1) pki-alg(1) pki-alg-sym(3) Dstu4145WithGost34311(1) PB(1) }

для поліноміального базису, та:

dstu4145ONBAlgo OBJECT IDENTIFIER ::= { iso(1) member-body(2) Ukraine(804 ) root (2) security(1) cryptography(1) pki(1) pki-alg(1) pki-alg-sym(3) Dstu4145WithGost34311(1) ONB(2) }

для оптимального нормального базису.

В обох випадках поле parametersполеsignatureAlgorithmвідсутнє.

Поле signature містить безпосередньо байти ЕЦП.

Дані запиту містяться в типі TBSRequest та мають такий формат:

TBSRequest ::= SEQUENCE { version [0] EXPLICIT Version DEFAULT v1, requestorName [1] EXPLICIT GeneralName OPTIONAL, requestList SEQUENCE OF Request, requestExtensions [2] EXPLICIT Extensions OPTIONAL }

Поле version містить версію формату запиту.

Поле requestorName може містити ім’я користувача.

Поле requestList містить інформацію про сертифікат, статус яких підлягає перевірці. Поле повинно містити інформацію лише про один сертифікат.

Поле requestExtensions може містити розширення із додатковою інформацією.

Тип Request містить ідентифікаційну інформацію про сертифікат, статус якого буде перевіряється.

Request ::= SEQUENCE { reqCert CertID, singleRequestExtensions [0] EXPLICIT Extensions OPTIONAL }

Поле reqCert містить ідентифікаційну інформацію про сертифікат;

Поле singleRequestExtensions може містити додаткову інформацію про сертифікат, що перевіряється.

CertID ::= SEQUENCE { hashAlgorithm AlgorithmIdentifier, issuerNameHash OCTET STRING, issuerKeyHash OCTET STRING, serialNumber CertificateSerialNumber }

Поле hashAlgorithm містить об’єктний ідентифікатор алгоритму гешування даних про сертифікат. Об’єктний ідентифікатор алгоритму повинен мати значенния:

gost34311 OBJECT IDENTIFIER ::= {iso(1) member-body(2) Ukraine(804) root(2) security(1) cryptography(1) pki(1) pki-alg(1) pki-alg-hash (2) 1}

А параметри алгоритму поввін бути відсутні.

Поле issuerNameHash містить геш-значення, що обчислюється від DER - кодування повного імені ЦСК, що випустив перевіряємий сертифікат.

Поле issuerKeyHash містить геш-значення, що обчислюється від відкритого ключа ЦСК, що випустив перевіряємий сертифікат.

Поле serialNumber містить серійний номер перевіряємого сертифікату.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]