Налаштування ключів та сертифікатів цифрового підпису

1. Загальний опис

Ключ цифрового підпису .dat та сертифікат підпису CA — це два різних компоненти механізму підписання даних.

Ключ цифрового підпису .dat — це файл, який містить приватний ключ, що використовується для підпису файлів, драйверів та іншого програмного забезпечення. Ключ системного підпису .dat зазвичай зберігається в захищеному місці на комп’ютері розробника програмного забезпечення і не передається іншим користувачам.

Сертифікат підпису CA (Certificate Authority) — це електронний документ, який містить інформацію про публічний ключ та інші відомості про власника сертифіката, такі як назва компанії, дата видачі, термін дії тощо. Сертифікати підпису CA використовуються для підтвердження автентичності підписувачів програмного забезпечення.

1.1. Механізм підписання даних відкритим ключем

Механізм підпису даних відкритим ключем — це криптографічний метод, який використовується для забезпечення цілісності, автентичності, конфіденційності та правдивості даних. У цьому методі використовується пара ключів: приватний ключ та відкритий ключ. Ключі генеруються уповноваженими органами — акредитованими центрами сертифікації ключів (АЦСК), які мають відповідні дозволи та ліцензії від держави. Емітентами ключів можуть виступати банки, державні реєстратори та інші уповноважені установи, які проходять обов’язкову процедуру аудиту та сертифікації. Це забезпечує високий рівень довіри до ключів та їх використання.

Алгоритм підпису даних відкритим ключем наступний:
  • Створюються дані (повідомлення), які потрібно підписати.

  • Обчислюється геш-значення даних за допомогою геш-функції.

  • Отримане геш-значення шифрується за допомогою приватного ключа.

  • Цифровий підпис додається до повідомлення.

    Отримане повідомлення із цифровим підписом може бути перевірено за допомогою відкритого ключа.

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

  • Обчислюється геш-значення оригінальних даних.

  • Обчислені геш-значення порівнюються. Якщо вони збігаються, то це означає, що підпис є валідним, і що дані не були змінені після підписання.

1.2. Операції з цифровими підписами на Платформі

За операції з ключами на Платформі реєстрів відповідає підсистема цифрових підписів, а саме Сервіс цифрових підписів (digital-signature-ops), який реалізує пакет операцій з накладання та перевірки цифрових печаток, а також перевірки цифрових підписів для забезпечення контролю незмінності даних при міжсервісній взаємодії за допомогою спеціалізованих криптомодулів. Сервіс працює на базі криптографічної бібліотеки цифрового підпису IIT Java digital signature від Інституту інформаційних технологій (IIT).

Сервіс цифрових підписів надає можливість:
  • отримувати дані власника цифрового підпису;

  • перевіряти КЕП, накладений на документ посадовою особою та отримувачем послуг, а також приналежність користувачу накладеного цифрового підпису;

  • накладати системний цифровий підпис (цифрову печатку реєстру) на дані, або цифровий документ;

  • перевіряти приналежність накладеної цифрової печатки реєстру.

2. Типи цифрових ключів на Платформі

Можна виділити 3 типи цифрових ключів, що використовуються на Платформі. Залежно від рівня їх використання, ключі цифрового підпису можна поділити на:

  • ключі цифрового підпису Платформи (Платформі ключі);

  • ключі цифрового підпису Реєстру (Реєстрові ключі);

  • ключі підписання даних користувачами реєстру (КЕП).

2.1. Платформі ключі цифрового підпису

Платформі ключі цифрового підпису використовуються для наступних операцій:
  1. Ініціалізація (запуск) поди digital-signature-ops (криптосервіс) для сервісу ідентифікації та автентифікації користувачів Keycloak.

  2. Автентифікація через зовнішніх провайдерів. Наприклад, для шифрування даних при вході до системи через id.gov.ua.

Налаштувати ключі можна в інтерфейсі адміністративної панелі Control Plane.

Детальніше про налаштування ключів реєстру ви можете переглянути на сторінці Оновлення ключів та сертифікатів цифрового підпису для Платформи.

2.2. Реєстрові ключі цифрового підпису

Реєстрові ключі системного підпису використовуються для наступних операцій:
  1. Ініціалізація (запуск) поди digital-signature-ops (криптосервіс) для реєстру.

  2. (Цифрова печатка) Підписання даних, які необхідно зберегти із бізнес-процесу (BPMS) до Фабрики даних реєстру.

  3. (Цифрова печатка) Підписання даних документів, які генеруються системою, для користувачів реєстру. Наприклад, витяги тощо.

Налаштувати ключі можна в інтерфейсі адміністративної панелі Control Plane при розгортанні, або редагуванні реєстру.

Детальніше про налаштування ключів реєстру ви можете переглянути на сторінці Оновлення ключів та сертифікатів цифрового підпису для реєстру.

2.3. Ключі підписання даних користувачами (КЕП)

Ключі підписання даних користувачами (КЕП) використовуються для наступних операцій:
  1. Підписання даних КЕП для входу до Кабінетів через віджет цифрового підпису IIT.

  2. Підписання даних UI-форм бізнес-процесу за допомогою віджета цифрового підпису IIT.