Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
52 ПК ПЗ 5.2 2013.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
409.53 Кб
Скачать

6.15.4 Цифровий підпис Абі-Окамото з відновленням повідомлення в групі точок еліптичної кривої (Elliptic Curve Abe-Okamoto message recovery signature (ecao))

Цифровий підпис ECAO засновано на схемі підпису, яку визначено в [46, 336, 12]. Розглянемо її детально за етапами, визначеними в 4.2–4.3.

6.15.4.1. Доменні параметри та параметри користувача

Асиметрична пара ключів для ECAO формуються таким чином:

– генерується або вибирається особистий (довгостроковий) ключ підпису об’єкта , причому – випадкове ціле число з інтервалу ;

– відкритий ключ перевірки цифрового підпису об’єкта обчислюється згідно з 4.6.6 (спосіб I або спосіб II).

Об’єкт також вибирає геш - функцію:

, де кількість бітів ) і застосовує три геш-функції, де – випадкові бітові дані.

та , використовуючи необхідну кількість бітів з виходу .

Вище використано такі позначення:

бітів з найбільш значущого октету.

бітів з найменш значущого октету.

6.15.4.2. Обчислення цифрового підпису

Вхідні дані до процесу вироблення вхідних даних повинні містити:

– доменні параметри EC;

– повідомлення .

Вихідними даними процесу вироблення є дані , що обчислені як

.

Причому результуюче d знаходиться в діапазоні .

Вхідні дані процесу обчислення (генерації) цифрового підпису містять:

– доменні параметри EC;

– особистий ключ підпису ;

– дані ;

– повідомлення (за наявності).

Виходом процесу генерації підпису є пара , що є цифровим підписом для даних.

Для підписання даних , виконує такі кроки.

Генерація ключа сеансу та попереднього підпису

1. Обрати (генерувати) випадкове ціле з інтервалу .

2. Обчислити точку еліптичної кривої та перетворити її на ціле .

Обчислення за модулем порядку групи G

1. Обчислити .

2. Обчислити .

3. Обчислити

4. Знищити .

Якщо або , то процес генерації підпису має бути повторено з новим випадковим значенням .

Форматування підписаного повідомлення

Пара є підписом для даних .

6.15.4.3. Перевіряння підпису

Вхідні дані процесу перевіряння підпису:

– доменні параметри EC;

– відкритий ключ перевірки об’єкта ;

– підпис для представлений двома цілими числами і ;

– геш - функції , , ;

– не відновлюване повідомлення (за наявності).

Для перевірки підпису об’єкта для даних об’єкт повинен виконати таке.

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

Відновлення попереднього підпису та вхідних даних повинне здійснюватись способом виконання обчислень у групі точок еліптичної кривої з виконанням таких кроків.

1. Обчислити .

2. Обчислити точку еліптичної кривої (Q = Y, P = G).

3. Обчислити .

Відновлення вхідних даних або повідомлення

Обчислити .

Зіставлення підпису

Перевіряння порівняння: . Якщо порівняння виконується, то вивести , інакше відхилити підпис.

6.15.5 Цифровий підпис Пінтсова - Ванстона в групі точок еліптичних кривих (Elliptic Curve Pintsov-Vanstone (ecpv) message recovery signature)

Схема підпису Пінтсова - Ванстона із частковим відновленням повідомлення є варіантом схеми Шнора [46, 341,12] та підпису Ніберга - Рюпеля. Це дає можливість формувати дуже малі підписи для повідомлень із збитковістю. Для 80 бітів розмір підпису містить 20–30 байтів, у залежності від кількості збитковості в повідомленні. (Для порівняння: підпис ECDSA із такими самими параметрами домену має мінімальний розмір не менше 40 байтів). У схемі використовується блоковий симетричний шифр. Можуть використовуватись різні стандарти БСШ, наприклад – AES, 3DES, а в цілому ISO/IEC 18033-3 тощо, а також інші, що задовольняють вимогам та допускаються до використання національним законодавством.

Необхідно також відзначити, що деякі схеми підпису з повним або частковим відновленням повідомлення мають обмеження на довжину. Наприклад, у схемі Nyberg-Rueppel це обмеження визначає такі недоліки:

• для дуже короткого повідомлення примусово визначена довжина підпису вимагає використовувати більше доповнення;

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

Схема Пінтсова - Ванстона може використовуватися без таких обмежень. При використанні схеми з еліптичними кривими може бути отриманий найкращий результат з точки зору меншого розміру підпису.

Цифровий підпис ECPV засновано на схемі підпису, яку визначено у [46]. Розглянемо її детально за етапами.

6.15.5.1 Доменні параметри та параметри користувача

Ключі для ECPV формуються таким чином:

– генерується або вибирається особистий (довгостроковий) ключ підпису об’єкта , причому – випадкове ціле число з інтервалу ;

– відкритий ключ перевірки цифрового підпису об’єкта обчислюється згідно 4.6.6 (спосіб I або спосіб II).

Взаємодіючі сторони також повинні узгоджено використовувати стандарти геш - функції , симетричного шифру та функції формування ключів KDF, що використовуються в схемі, причому:

;

;

.

Розмір симетричного ключа повинен відповідати параметру безпеки і має обиратися для досягнення цілей безпеки, наприклад, забезпечувати задовільний, добрий чи високий рівень стійкості [340, 342]. Симетричний шифр може бути потоковим, тобто використовувати потокове шифрування з операцією XOR (за модулем 2). А функція формування ключів може ґрунтуватись на використанні геш - функції.

6.15.5.2 Обчислення цифрового підпису

Вхідні дані до процесу вироблення вхідних даних повинні містити:

– доменні параметри EC;

– особистий ключ підпису ;

– повідомлення , що має бути підписане;

– розщеплюється на відновлювану частину (крайні октети згідно угоди (умови, домовленості), та з використанням тих октетів, що залишилися;

– довжини обох повідомлень і мають бути зафіксовані й узгоджені сторонами, що взаємодіють.

Результатом обчислення підпису є пара , що є цифровим підписом для повідомлення .

Для підписання повідомлення , користувач виконує такі кроки:

Генерація ключа сеансу й обчислення попереднього підпису

1. Обирається (генерується) випадкове ціле з інтервалу .

2. Обчислити точку еліптичної кривої та перетворити її на ціле число.

Обчислення вхідних даних та ключа сеансу

1. Сформувати вхідні дані , використовуючи і додаткову надлишковість згідно угоди, а також частину доменних параметрів.

2. Обчислити симетричний ключ .

3. Зашифрувати дані .

4. Обчислити перед підпис .

Обчислення цифрового підпису

6. Обчислити .

2. Знищити .

3. Як результат вивести підпис і частину повідомлення (що може бути нульовою).

Якщо , то процес генерації підпису має бути повторено з новим випадковим значенням .

Форматування підписаного повідомлення

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

6.15.5.3 Перевіряння цифрового підпису

Вхідні дані до процесу перевіряння підпису повинні містити:

– доменні параметри, що зазначені в п. 4.8.6.

– відкритий ключ перевірки об’єкта ;

– підпис для , представлений двома цілими числами, і ;

– не відновлюване повідомлення (за наявності);

Для перевірки підпису об’єктом для об’єкт виконує такі кроки.

Перевіряння розміру підпису

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

Відновлення попереднього підпису та вхідних даних (обчислення в групі точок еліптичної кривої)

1. Обчислити передпідпис .

2. Обчислити точку EC (Q=Y, P= G).

Відновлення вхідних даних або повідомлення

6. Якщо є точкою нескінченності, відхилити підпис. Інакше виконати наступні кроки.

2. Обчислити симетричний ключ .

3. Розшифрувати дані .

4. Перевірити додану надлишковість та відновити . Якщо додана надлишковість неправильна, відхилити підпис.

5. Сформувати вихідне повідомлення .

Зіставлення підпису

Зіставлення надлишковості має здійснюватись за обчисленої надлишковості та відомої перевірнику. Якщо = d, то вважається що повідомлення цілісне й справжнє, інакше робиться відхилення прийнятого повідомлення (підпису).

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