Добавил:
Допоможу чим зможу) Відсигнальте якщо знайшли шось корисне) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
28
Добавлен:
11.03.2020
Размер:
45.35 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»

Кафедра «Захист інформації»

ЕЛЕКТРОННИЙ ЦИФРОВИЙ ПІДПИС

Методичні вказівки до

лабораторної роботи

з курсу «Криптографія і стеганографія»

для студентів напрямів

6.170101 «Управління інформаційною безпекою»

6.170102 «Системи технічного захисту інформації»

Затверджено

на засіданні кафедри

«Захист інформації»

Протокол № xx від xx.xx.2015р.

Львів – 2015

Електронний цифровий підпис: Методичні вказівки до лабораторної роботи з курсу «Криптографія і стеганографія» для студентів напряму 6.170101 «Управління інформаційною безпекою», 6.170102 «Системи технічного захисту інформації» / Укл.: Шандра З.А. – Львів: Національний університет «Львівська політехніка», 2015. – x с.

Укладачі

Відповідальний за випуск Дудикевич В.Б., докт. техн. наук, проф.

Рецензенти

ЕЛЕКТРОННИЙ ЦИФРОВИЙ ПІДПИС

Мета роботи: ознайомлення із задачами, які розв’язує електронний цифровий підпис (ЕЦП), вивчення протоколу створення ЕЦП методом застосування алгоритму RSA.

1. Засоби виконання роботи.

Для виконання лабораторної роботи потрібно запустити програму Labwork6.exe. Основні функції головного меню: генерація ключів, пересилання ЕЦП, перевірка ЕЦП, вивід результатів.

2. Теоретичні відомості..

2.1. Забезпечення автентифікації даних.

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

Метою аутентифікації електронних документів є їх захист від можливих видів зловмисних дій, до яких належать:

- активне перехоплення – зловмисник, під’єднавшись до каналу зв’язку, перехоплює файли документів і змінює їх;

- маскарад – абонент C надсилає документ абоненту B від імені абонента A;

- ренегатство – абонент A стверджує, що не надсилав документ абоненту B, хоч насправді надсилав;

- підміна – абонент B змінює отриманий або формує новий документ, після чого стверджує, що отримав його від абонента A;

- повтор – абонент C повторює від свого імені раніше переданий документ, який абонент A надсилав абоненту B.

Один із найпростіших способів автентифікації (підписування) електронних документів –використання шифрування. При цьому відправник A шифрує документ своїм секретним ключем і відправляє його утримувачу B. Утримувач B дешифрує документ за допомогою відкритого ключа відправника А. Якщо це йому вдається, то документ вважається істинним. Якщо утримувач B не зможе дешифрувати документ, то документ істинним не вважається. Такий спосіб має надзвичайно серйозний недолік, пов’язаний з тим, що він є неефективним для підписування документів значного обсягу.

Саме тому для автентифікації електронних документів, що передаються телекомунікаційними каналами зв’язку, використовується спеціально створюваний електронний цифровий підпис (ЕЦП). Функціонально ЕЦП аналогічний звичайному рукописному підпису і має такі властивості:

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

- не дає можливості особі, яка поставила свій підпис, відмовитись від підписаного документу;

- є невід’ємною частиною даного документу і не може бути використаний для підписання іншого документу;

- гарантує цілісність підписаного документу.

Електронний цифровий підпис являє собою відносно невелику кількість додаткових цифрових даних, які передаються разом із підписаним текстом. Застосування ЕЦП має вигляд наступного криптографічного протоколу:

1) для документа M, який має бути підписаним, відправник A обчислює значення так званої односторонньої хеш-функції H = h(M);

2) хеш-значення H відправник A шифрує своїм особистим секретним ключем і отримує число, яке вважається підписом документа;

3) зашифроване хеш-значення разом із документом M відправник A направляє утримувачу B;

4) утримувач B спочатку сам обчислює хеш-значення H отриманого документа, далі дешифрує отримане хеш-значення з використанням відкритого ключа відправника A, після чого порівнює обидва значення.

Якщо два отриманих хеш-значення співпадають, то підпис відправника A вважається вірним, а сам документ M – істинним.

Отже, учасники криптографічного протоколу ЕЦП мають попередньо домовитись про використання певної криптографічної системи, а також хеш-функції.

2.2. Односторонні хеш-функції.

Хеш-функція h, яка використовується у протоколі ЕЦП, призначена для того, щоб стиснути підписуваний документ M довільної довжини до двійкового хеш-значення H = h(M) фіксованої довжини (декілька десятків біт). Завдяки цьому підписується не сам довгий документ, а його коротке хеш-значення, а довжина підпису стає фіксованою. Основні властивості хеш-функції:

1) хеш-значення H залежить від усього документу M надзвичайно складним способом, завдяки чому за значенням H неможливо відновити документ M;

2) хеш-значення H є чутливим до будь-яких, навіть незначних, змін у документі M (вставки, вилучення, перестановки тощо);

3) хеш-функція h(M) є необоротною, тобто підбір деякого фіктивного документа M з тим же самим хеш-значенням H є задачею практично нерозв’язуваною;

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

Переважна більшість використовуваних хеш-функцій мають вигляд Hi = h(Mi, Hi-1) і працюють за наступним принципом: вони утворюють одне хеш-значення довжиною n біт із двох вхідних значень, кожне з яких теж має довжину n біт. Для застосування такої хеш-функції документ M має бути попередньо представлений у двійковій формі і розбитий на окремі блоки Mi довжиною n біт кожний.

Зміст указаних вхідних значень хеш-функції наступний:

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

2) друге вхідне значення являє собою хеш-значення Hi-1 усіх попередніх блоків документа.

При обчисленні хеш-значення для першого блоку M1 документа використовується деяке початкове хеш-значення H0, яке можна вибрати випадковим або фіксованим (наприклад, H0 = 0 – у найпростішому випадку). При цьому хеш-значення, обчислене при використанні останнього блоку документу, вважається хеш-значенням усього документа M.

Правило утворення одного хеш-значення із двох вхідних залежить від типу хеш-функції. У найпростішому випадку тут може використовуватись додавання за модулем 2, тобто Hi = Mi Hi-1.

Визначення кількості біт n для хеш-значення може здійснюватись на підставі значення модуля системи ЕЦП, а саме: кількість біт хеш-значення має бути на одиницю меншою кількості біт значення модуля системи ЕЦП.

Для створення ЕЦП використовуються різні алгоритми шифрування з відкритим ключем. В цій лабораторній роботі застосовано програму Labwork6.exe, в якій використано алгоритм шифрування RSA.

3. Завдання

1) Запустити програму Labwork6.exe. Відкриється два вікна з інформацією відправника (А) і утримувача (B). Управління вікнами здійснюється незалежно, тобто на екрані комп’ютера можна залишити або вікно A, або вікно B.

2) Згенерувати ключі відправника А, на екрані висвітлюється тільки відкритий ключ А.

3) Згенерувати ключі утримувача B, на екрані висвітлюється тільки відкритий ключ B.

4) Послати відкритий ключ B відправнику А, після чого натиснути «отримати » відправником А. На екрані А висвітлюється відкритий ключ B.

5) Відправник А створює повідомлення, шифрує його і надсилає утримувачу B (кнопка «надіслати»).

6) Утримувач B перевіряє справжність отриманого від А повідомлення, результат перевірки подається в окремому віконці.

4. Звіт

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