Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
TSP.doc
Скачиваний:
10
Добавлен:
23.02.2015
Размер:
116.22 Кб
Скачать
    1. Формат відповіді на запит на формування позначки часу

Формат відповіді на запит на формування позначки часу має такий вигляд:

TimeStampResp ::= SEQUENCE { status PKIStatusInfo, timeStampToken TimeStampToken OPTIONAL }

Поле status містить результат обробки запиту на формування позначки часу.

Поле timeStampToken містить зформовану позначку часу, або є відсутнім (у разі відмови у формуванні позначки часу).

PKIStatusInfo ::= SEQUENCE { status PKIStatus, failInfo PKIFailureInfo OPTIONAL }

Тип PKIStatusInfo мість два поля, що визначають результат формування (чи відмови у формуванні) позначки часу.

Поле status містить код операції формування позначки часу.

Необов’язкове поле failInfo може містити код помилки.

PKIStatus ::= INTEGER { granted (0), grantedWithMods (1), rejection (2), waiting (3), revocationWarning (4), revocationNotification (5) }

Можливі значення для типу PKIStatus навдені нижче у таблиці:

Константа

Числове значення

Опис

granted

0

Позначку часу зформовано

grantedWithMods

1

Позначку часу зформовано з модифікаціями

rejection

2

У формуванні позначки часу було відмовлено

waiting

3

Сервер служби фіксування часу ЦСК перенавантажено

revocationWarning

4

(Не використовується)

revocationNotification

5

(Не використовується)

PKIFailureInfo ::= BIT STRING { badAlg (0), badRequest (2), badDataFormat (5), timeNotAvailable (14), unacceptedPolicy (15), unacceptedExtension (16), addInfoNotAvailable (17), systemFailure (25) }

Можливі значення для типу PKIFailureInfo навдені нижче у таблиці:

Константа

Номер біту

Опис

badAlg

0

Невідомий алгоритм гешування, або такий, що не підтримується

badRequest

2

Запит такий, що не підтримується або недозволений

badDataFormat

5

Запит пошкоджений

timeNotAvailable

14

Неможливо визначити точний час

unacceptedPolicy

15

Політика формування позначок часа така, що не підтримується

unacceptedExtension

16

Розширення таке, що не підтримується

addInfoNotAvailable

17

Відсутня необхідна додаткова інформація

systemFailure

25

Системная помилка

Позначка часу зберігається у форматі CMS ContentInfo (відповідно до RFC 3852):

TimeStampToken ::= ContentInfo

Поля типу ContentInfo для зберігання позначки часу мають такі значення:

Поле contentType містить об’єктний ідентифікатор:

id-signedData OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs7(7) 2 }

що визначає зміст поля content, як поля, що містить дані зЕЦП (тип CMS SignedData).

Поля типу EncapsulatedContentInfo, що міститься в типі SignedData мають такі значення:

Поле eContentType містить об’єктний ідентифікатор даних, що містяться в полі content. Для позначки часу це поле повинно мати таке значення:

id-ct-TSTInfo OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9) smime(16) ct(1) 4}

Поле content містить строку байт, в якій міститься наступна структура (у DER-кодуванні):

TSTInfo ::= SEQUENCE { version INTEGER { v1(1) }, policy TSAPolicyId, messageImprint MessageImprint, serialNumber INTEGER, genTime GeneralizedTime, nonce INTEGER OPTIONAL, extensions [1] IMPLICIT Extensions OPTIONAL }

Поле version містить номер версії формату позначки часу (завжди дорівнює 1);

Поле policy містить об’єктний іеднтифікатор політики формуання позначок часу;

Поле messageImprint містить геш-значення даних, на які була отримана позначка часу (див. вище);

Поле serialNumber містить серійний номер позначки часу;

Поле genTime містить час формування позначки часу у форматі GMT.

Поле nonce може містити унікальний ідентифікатор запиту, на який була зформована позначка часу;

Поле extensions може містити розширення із додатковою інформацією про позначку часу, службу фіксації часу ЦСК тощо.

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