КріптоПро, завдання КріптоПро tsp

Використання ПАК "КріптоПро TSP" дозволяє учасникам інформаційних систем отримувати штампи часу, пов'язані з електронними документами. Штамп часу вдає із себе електронний документ, підписаний електронним цифровим підписом (електронним підписом), де підписаними даними є значення хеш-функції електронного документа і час надання штампа часу. Таким чином, штамп часу однозначно пов'язаний з електронним документом, на який він видається і забезпечує його цілісність.

Для реалізації сервісу TSP необхідно на базі "КріптоПро TSP Server" організувати Сервер служби TSP і вбудувати "КріптоПро TSP Client" в програмне забезпечення клієнтських робочих місць. Вбудовування "КріптоПро TSP Client" здійснюється з використанням інструментарію розробника - "КріптоПро PKI SDK".

Для чого потрібні штампи часу

Короткий опис протоколу TSP

Протокол TSP (Time-Stamp Protocol) є протоколом типу "запит-відповідь". Весь обмін полягає в двох повідомленнях. Клієнт ініціює взаємодію, посилаючи серверу запит на штамп часу, на що сервер повертає відповідь, що містить випущений штамп або не містить його в разі помилки.

Запит на штамп часу

Запит на штамп часу включає наступні поля:

  • Значення хеш-функції від документа, на який запитується штамп (обов'язково вказується, який саме алгоритм хешування використовується);
  • Об'єктний ідентифікатор (OID) політики запитуваної штампа (необов'язково);
  • Nonce - випадкове число, яке ідентифікує дану транзакцію протоколу TSP (необов'язково);
  • Доповнення (Extensions) (необов'язково).

Ідентифікатор політики визначає, по якій політиці повинен бути виданий штамп часу. Політики штампів часу задаються сервером штампів часу і встановлюють набір правил, за якими видаються штампи часу, а також сфери їх застосування.

Наприклад, в системі може бути визначено декілька політик з різними ідентифікаторами і наступним описом:

  • Політика для тестових штампів. Штампи по цій політиці видаються всім користувачам, але можуть використовуватися тільки для тестових цілей, а система документообігу не братиме такі штампи.
  • Основна політика штампів. Штампи по цій політиці видаються всім зареєстрованим користувачам системи, вартість одного штампа становить 5 копійок, точність часу в штампі становить 10 секунд, а система документообігу буде приймати такі штампи для документів, які не є важливими.
  • Точна політика штампів. Штампи по цій політиці видаються користувачам, допущеним до роботи з важливими документами, вартість одного штампа становить 25 копійок, точність часу в штампі становить 1 секунду, а система документообігу буде приймати такі штампи для будь-яких документів.

Поле Nonce дозволяє клієнту перевірити своєчасність отриманої відповіді, в якому сервер штампів часу повинен розмістити те ж саме значення nonce, яке було в запиті.

Відповідь сервера штампів часу

Відповідь сервера штампів часу містить наступні поля:

  • Статус операції і інформація про помилку;
  • Штамп часу (якщо статус успішний).

Штамп часу являє собою CMS-повідомлення (PKCS # 7) типу SignedData (див. RFC 3369 "Cryptographic Message Syntax (CMS)"). Вмістом цього повідомлення є структура з наступними полями:

  • Значення хеш-функції від документа, на який видано штамп (обов'язково вказується, який саме алгоритм хешування використовується);
  • Об'єктний ідентифікатор (OID) політики штампа;
  • Час видачі штампа;
  • Точність часу;
  • Ознака суворої впорядкованості штампів (Ordering);
  • Nonce - випадкове число, яке ідентифікує дану транзакцію протоколу TSP (збігається з відповідним полем запиту);
  • Доповнення (Extensions) (необов'язково).

Сервер штампів вказує ознака ordering, якщо він працює в режимі суворої впорядкованості штампів. Тобто порівняння часів двох виданих цим серверів штампів навіть без урахування точності часу визначає порядок їх видачі.

Як зберігати штампи часу спільно з документами

В RFC 3161 "Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)" описаний варіант зберігання штампа часу на документ з ЕЦП (ЕП) формату CMS SignedData в непідписаному атрибуті цього CMS-повідомлення.

Для організації довготривалого архівного зберігання документів з ЕЦП (ЕП) можуть використовуватися штампи часу, а також додаткові дані, необхідні для підтвердження достовірності ЕЦП (ЕП) - так звані докази справжності ЕЦП (ЕП). До таких належать:

  • Штампи часу;
  • Сертифікат ключа підпису, використаного для створення оригінальної ЕЦП (ЕП);
  • Сертифікат УЦ, який видав сертифікат ключа підпису (якщо ланцюжок сертифікатів містить інші УЦ, то їх сертифікати також необхідно перевірити);
  • Сертифікат Служби штампів часу;
  • Ланцюжок сертифікатів для перевірки сертифіката Служби штампів часу;
  • Інформацію про статус сертифікатів (Списки відкликаних сертифікатів або OCSP-відповіді).

Для забезпечення актуальності ЕЦП (ЕП) при довготривалому зберіганні необхідно періодично отримувати нові штампи часу.

Схожі статті