Технології захисту інформації - копия
.pdfДля побудови схеми ЕЦП необхідно визначити два алгоритми: алгоритм генерації ЕЦП і алгоритм верифікації ЕЦП. Алгоритм верифікації доступний для всіх потенційних одержувачів підписаних повідомлень, у той час, як алгоритм генерації ЕЦП відомий тільки особі, яка підписує, що для деякого повідомлення m M визначає відповідний підпис s S. Верифікатор, одержавши пари (m, s) і деяку відкриту інформацію про особу, що підписує, застосовує відповідний алгоритм верифікації ЕЦП. Цей алгоритм видає двійковий результат: "так", якщо підпис правильний (автентична) і "ні" – у протилежному випадку.
Існуючі на сьогоднішній день схеми ЕЦП діляться на два класи (рис. 7.1): схеми ЕЦП із відновленням повідомлення; схеми ЕЦП із додаванням.
Схеми ЕЦП з відновленням повідомлення Схеми ЕЦП
рандомізовані
Схеми ЕЦП
Схеми ЕЦП детерміновані
Схеми ЕЦП з додаванням
Одноразові схеми
Багаторазові схеми
Рис. 7.1. Класифікація схем ЕЦП
Усхемах ЕЦП із відновленням повідомлення всі або частина підписаного повідомлення може бути відновлена безпосередньо з цифрового підпису. Таким чином, на вхід алгоритму верифікації надходить лише цифровий підпис s.
Усхемах ЕЦП із додаванням цифровий підпис приєднується до повідомлення й у такому вигляді відправляється адресату. Для верифікації такого ЕЦП необхідно мати і підпис s, і відповідне повідомлення m.
Кожна з цих схем може бути детермінованою або рандомізованою.
Застосування детермінованих схем характеризується тим, що цифровий підпис одного і того ж вхідного рядка даних призводить до формування однакових цифрових підписів. У рандомізованій схемі при генерації підпису використовується деякий випадковий параметр (число), що
241
призводить до формування різних підписів для однакових вхідних рядків (при використанні тих самих ключів). У рандомізованих схемах необхідно забезпечити непередбачуваність випадкових чисел.
Усвою чергу детерміновані схеми діляться на схеми ЕЦП одноразового застосування (one-time) і схеми ЕЦП багаторазового застосування
(multiple-use).
Нарешті, у ISO/IEC 14888-3 описується два типи схем. По-перше, це схеми на основі використання проблеми дискретного логарифма, а саме: схема DSA, схема Pointcheval-Vaudenay і схема ECDSA (схема DSA на еліптичних кривих). По-друге, це схеми, стійкість яких заснована на проблемі факторизації. У стандарті подана: схема підпису за ISO/IEC 9796-1 з використанням гешування і схема ESIGN.
Схеми підпису на основі використання ідентифікаційної інформації. Схема підпису Гіллоу – Куіскуотера (GQ-схема)
Усхемах формування підпису на основі ідентифікаційної інформації відкритий ключ перевірки підпису формується з використанням ідентифікаційної інформації сторони, яка підписує. Таким чином, відпадає необхідність використання сертифікатів відкритих ключів. Особисті (секретні) ключі генерації підпису повинна генерувати довірча третя сторона. У таких схемах ДТС матиме доступ до всіх особистих ключів. У зв’язку з цим схема формування підпису на основі використання ідентифікаційної інформації може використовуватися не для всіх додатків. Найчастіше вона реалізується в закритих доменах безпеки, наприклад, усередині великої компанії або корпоративних закритих мереж, де існує "природна" довірча сторона.
ISO/IEC 14888-2 визначає три схеми підпису, що відносяться до класу рандомізованих схем і є різними варіантами схеми підпису Гіллоу – Куіскуотера (Guillou – Quisquater). В основу GQ-схеми підпису покладено використання ідентифікаційного протоколу GQ. Схема підпису, яка визначена в ISO/IEC 14888-2, допускає обов’язкове залучення ДТС.
ДТС генерує особисті ключі підпису, у той час, як ключ верифікації може генеруватися верифікатором.
Генерація ключів для GQ-схеми підпису.
Урезультаті генерації ключів утворюється відкритий ключ (n, e ,IA) і відповідний особистий ключ a.
242
Довірча третя сторона виконує такі дії:
1.Обрати випадкові різні прості числа p і q, які зберігаються в секреті, і формує модуль n = p × q.
2.Обрати ціле e {1,2,…,n – 1} таке, що НСД (e,(p – 1)(q – 1))=1.
3.Будь-яка сторона, що бажає використовувати GQ-схему підпису, надає ДТС унікальну ідентифікаційну інформацію у вигляді двійкового рядка I.
Ціле число IA, 1 < IA< n є ідентифікатором сторони А (тобто містить інформацію про ім’я, адресу, номер паспорта, PIN і т. д.). ДТС на основі інформації IA формує величину:
Y = f(IA),
де f – функція уведення надмірності (ISO/IEC 9796-1) така, що НСД (Y, n)= 1.
4. ДТС визначає ціле число a Zn таке, що Yae 1 (mod n) відповідно до такого алгоритму.
4.1.Обчислення Y-1 mod n.
4.2.Обчислення d1 = e-1 mod (p-1) і d2 = e-1 mod (q-1).
4.3.Обчислення a1 Y 1 d1 mod p і a2 Y 1 d2 mod q.
4.4.Пошук значення a, що задовольняє рівнянням: a = a1 (mod p);
a = a2 (mod q).
За відкритий ключ сторони А приймається вектор (n, e, IA). За
особистий ключ сторони А приймається число a. Процедури накладання і зняття GQ-підпису.
Процедура накладання GQ-підпису містить виконання 3 кроків. Сторона А підписує двійкове повідомлення m довільної довжини. Для цього сторона А повинна:
1.Вибрати випадкове число k, 1 k n – 1, і обчислити r = ke mod n.
2.Обчислити геш-код v = h (m||r).
Значення геш-коду повинно задовольняти нерівності 0 < v < e – 1. Якщо v не задовольняє нерівності, то значення v приводять за модулем e.
3. Обчислити s = r·av mod n.
Процедура зняття GQ-підпису. Для того, щоб верифікувати цифровий підпис (s, v) за повідомленням m, сторона В повинна одержати
243