Загальна схема побудови ЕЦП

1.Створення відкритого і закритого ключів. Користувач генерує ключову пару: відкритий ключ і закритий ключ і на їх основі будує функції і .

2. Формування ЕЦП за допомогою закритого ключа. Для того, щоб підписати повідомлення , користувач

1) за допомогою криптографічної хеш-функції обчислює його хеш-код ;

2) створює ЕЦП за формулою .

3) пересилає користувачу підписане повідомлення – пару .

3. Перевірка підпису за допомогою відкритого ключа (верифікація). Для перевірки підпису повідомлення користувач

1) за допомогою криптографічної хеш-функции обчислює хеш-код отриманого документа ;

2) перевіряє рівність . Якщо рівність виконана, ЕЦП повідомлення визнається вірною. Інакше підпис вважається підробленим і робиться висновок про те, що цілісність повідомлення порушена.

Зауваження. Запропоновану схему можна доповнити попереднім зашифруванням повідомлення, що пересилається, і підсумковою розшифровкою.

 

61. Схема електронного цифрового підпису на основі криптосистеми Ель-Гамаля.

1. Створення відкритого і закритого ключів. Користувач генерує ключову пару: відкритий ключ і закритий ключ . Для цього він:

1) вибирає велике просте число і обчислює первісний корінь за модулем ;

2) навмання вибирає ціле число з інтервалу ;

3) обчислює значення ;

4) відкритий ключ – трійка чисел , закритий ключ – число .

2. Формування ЕЦП за допомогою закритого ключа. Для того, щоб підписати повідомлення користувач

1) за допомогою криптографічної хеш-функции обчислює його хеш-код ;

2) вибирає довільне число з відрізання (рандомізатор) з умовою .

3) обчислює ;

4) обчислює ;

5) підписом для повідомлення є пара ;

6) пересилає абонентові пару .

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

1) за допомогою криптографічної хэш-функции обчислює хэш-код отриманого документа ;

2) перевіряє рівність . Якщо рівність виконана, ЕЦП повідомлення визнається вірною. Інакше підпис вважається підробленим і робиться висновок про те, що цілісність повідомлення порушена.

 

62. Схема електронного цифрового підпису на основі криптосистеми RSA.

1. Створення відкритого і закритого ключів. Користувач генерує ключову пару: відкритий ключ і закритий ключ . Для цього:

1) вибираються два випадкових великих простих числа і ;

2) обчислюється їх добуток – число ;

3) обчислюється значення функції Ейлера .

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

5) обчислюється число , обернене числу за модулем , тобто таке, що (з використанням розширеного алгоритму Евклида для розв’язування діофантового рівняння ). Після цього всі дані, крім , включаючи дані проміжних обчислень, знищуються. Відкритий ключ публікується, а закритий ключ зберігається в секреті.

2. Формування ЕЦП за допомогою закритого ключа. Для того, щоб підписати повідомлення , користувач

1) за допомогою криптографічної хеш-функції обчислює його хеш-код ;

2) шифрує хеш на секретному ключі : .

3) пересилає абоненту пару .

3. Перевірка підпису за допомогою відкритого ключа (верифікація). Для перевірки підпису повідомлення абонент

1) за допомогою криптографічної хеш-функции обчислює хеш-код отриманого документа ;

2) розшифровує за допомогою відкритого ключа : . Якщо , ЕЦП повідомлення визнається вірною. Інакше підпис вважається підробленим і робиться вивід про те, що цілісність повідомлення порушена.

Таким чином, в криптосистемі RSA секретний ключ використовується для обчислення ЕЦП або для розшифрування повідомлень, а відкритий – для перевірки ЕЦП або для зашифрування повідомлень.