Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Опорный конспект.doc
Скачиваний:
38
Добавлен:
30.05.2020
Размер:
2.73 Mб
Скачать

Контрольні запитання

  1. Дайте визначення поняття “протокол”.

  2. Назвіть головні характеристики протоколу.

  3. У чому полягає відмінність понять “протокол” та “криптографічний протокол”?

  4. Назвіть і поясніть загальне правило криптографічних протоколів.

  5. У чому полягає формалізація протоколів?

  6. Назвіть основні типи протоколів.

  7. Дайте визначення поняття “посередник у криптографічному протоколі”.

  8. Дайте визначення поняття “арбітр у криптографічному протоколі”.

  9. Поясніть, у чому полягає різниця протоколів з посередником та з арбітром?

  10. Наведіть приклади протоколів з арбітром, з посередником, самодостатніх протоколів.

  11. Поясніть, у чому полягає метод “пасивної атаки”?

  12. Що таке активна атака?

  13. Дайте визначення поняттям “пасивний” та “активний” шахрай.

  14. Поясніть як за допомогою симетричної (асиметричної) криптографії виконується організація зв’язку?

  15. Поясніть поняття “змішані криптосистеми” або “гібридні криптосистеми”.

Задачі

  1. Розробити протокол чесного поділу будь-якого предмета на дві частини.

  2. Розробити можливі варіанти розв’язання задачі запобігання зловживань доказами ідентичності з нульовим розголошенням.

  3. Розробити програмну реалізацію алгоритму підпису наосліп з використанням алгоритму RSA.

Список літератури

  1. Усатенко Т.М. Криптологія: Навчальний посібник. – Суми: Вид-во СумДУ, 2008. – 164 с.

  2. Шнайдер Брюс. Прикладная криптология. Протоколы, алгоритмы, исходные тексты на языке Си. – М.: Издательство ТРИУМФ, 2002

  3. Столлингс Вильям. Криптография и защита сетей: принципы и практика /Пер. с англ – М.: Издательский дом «Вильямс», 2001.

  4. Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. – М.: КУДИЦ-ОБРАЗ, 2001.

  5. Брассар Ж. Современная криптология / Пер с англ. – М.: Полимед, 1999.

  6. Жельников В. Криптография от папируса до компьютера. –М.: ABF, 1996.

  7. Введение в криптографию /Под общей ред. В.В. Ященко. – СПб.: Питер, 2001.

Ідентифікація та перевірка істинності План

1 Основні поняття та концепції

2 Функції аутентифікації

2.1 Шифрування повідомлення

2.2 Код автентичності повідомлення

2.3 Функції хешування

3 Застосування пароля для підтвердження істинності користувача

4 Взаємна перевірка істинності користувачів

5 Проблема аутентифікації даних і електронний цифровий підпис

Ідентифікація та перевірка істинності

1 Основні поняття та концепції

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

Ідентифікація об’єкта – одна з функцій підсистеми захисту. Ця функція виконується в першу чергу, коли об’єкт робить спробу ввійти в систему. Якщо процедура ідентифікації завершується успішно, даний об’єкт вважається законним для даної системи.

Наступний крок - аутентифікація об’єкта (перевірка істинності об’єкта). Ця процедура встановлює, чи є даний об’єкт саме тим, за кого він себе подає.

Після того, як об’єкт ідентифікований і підтверджена його істинність, можна встановити сферу його дії та доступні йому ресурси КС. Таку процедуру називають наданням повноважень (авторизацією).

Наведені процедури ініціалізації є процедурами захисту і належать до одного об’єкта КС.

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

У контексті мережних комунікацій можна виділити такі типи порушення захисту:

  1. розкриття вмісту (передача інформації особі, яка не має права на інформацію);

  2. аналіз потоку даних (встановлення логічної структури з’єднання, довжин повідомлень, їх кількості, кількості учасників і т. ін.);

  3. імітація. Впровадження в потік повідомлень від помилкового джерела. Тобто зловмисник видає свої повідомлення за повідомлення істинного учасника;

  4. модифікація вмісту. Зміна вмісту (зміна, вставка, видалення, реорганізація частини або цілого повідомлення);

  5. модифікація послідовності повідомлень;

  6. модифікація тимчасових характеристик. Затримка й наступне відтворення характеристик;

  7. зречення.

Міри, прийняті у зв’язку з пунктами (1) і (2), були розглянуті в традиційному шифруванні.

Міри, прийняті відносно пунктів (3) – (6) належать до питань аутентифікації повідомлень.

Міри, прийняті відносно пункту (7) – питання цифрового підпису.

2 Функції аутентифікації

В аутентифікації повідомлень можна виділити два рівні:

      • низький. Виконується функція що породжує аутентифікатор;

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

Функції, які породжують аутентифікатор, можна поділити на три класи:

      • шифрування повідомлення;

      • код автентичності повідомлення;

      • функції хешування.

2.1 Шифрування повідомлення

Шифрування повідомлення саме по собі може виконувати функції аутентифікації повідомлення.

Традиційне шифрування

Рисунок 1 – Конфіденційність й аутентифікація

Так, у традиційному шифруванні (рис 1) адресат B буде впевнений у тому, що відправником повідомлення був A. Чому? Тому, що ключ повідомлення був відомий тільки їм двом. Крім того, якщо повідомлення М відновлюється, це доводить одержувачеві, що ніякий з бітів не був змінений. Це твердження справедливе тільки у тому випадку, якщо відкритим текстом був цілком осмислений текст, у протилежному випадку, адресату B необхідно мати додаткову інформацію для автоматичного встановлення істинності прийнятого повідомлення (набір символів, що зберігає частотну характеристику мови, двійковий об’єктний файл і т. ін.).

Часто звертаються за допомогою до коду розпізнавання помилок (контрольна послідовність кадру – функція F, що обчислює контрольну суму) рис. 2, 3.

Рисунок 2 – Внутрішній контроль помилок

Рисунок 3 – Зовнішній код контролю помилок

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

Асиметричне шифрування

У випадку шифрування з відкритим ключем конфіденційність забезпечується самим алгоритмом, але автентичність втрачається, оскільки зловмисник, знаючи відкритий ключ , з легкістю може зашифрувати й відправити будь-яке повідомлення.

Рисунок 4 – Шифрування з відкритим ключем: конфіденційність

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

Рисунок 5 – Шифрування з відкритим ключем: автентичність

Щоб забезпечити і таємність, і автентичність виконують наступну процедуру: відправник A шифрує повідомлення своїм таємним ключем (це забезпечує аутентифікацію), потім шифрує отриманий на попередньому етапі шифр відкритим ключем одержувача B (забезпечується таємність), а одержувач у свою чергу, для розшифрування повідомлення використає свій таємний ключ , а потім відкритий ключ .

Рисунок 6 – Шифрування з відкритим ключем: конфіденційність й автентичність

2.2 Код автентичності повідомлення

Альтернативна техніка аутентифікації припускає приєднання до повідомлення невеликого блоку даних, створеного з використанням таємного колюча. Приєднаний блок має фіксований розмір і, як правило, називається криптографічною контрольною сумою або кодом автентичності повідомлення (MAC).

При цьому вважається, що користувачі A та B володіють таємним ключем K. Щоб послати повідомлення адресату B відправник A обчислює код автентичності повідомлення як функцію ключа . Повідомлення з доданим до нього значенням MAC пересилається адресату. Одержувач виконує аналогічні обчислення і одержує своє значення MAC. Отримані результати порівнюються. У випадку збігу, можна стверджувати:

      • одержувач може бути впевнений, що повідомлення не було змінено;

      • одержувач може бути впевнений, що повідомлення автентично, оскілки нікому не відомий ключ K;

      • якщо повідомленню привласнено порядковий номер, як наприклад, у протоколі TCP, то одержувач може бути впевнений у правильній послідовності одержуваних даних.

Рисунок 7 – Аутентифікація повідомлень із використанням MAC

Необхідно зазначити, що функція MAC, може не мати властивість оберненості, що робить її більш стійкою відносно атак.

Конфіденційність може бути забезпечена в цьому випадку шляхом шифрування повідомлення або перед обчисленням функції MAC (рис. 8), або після її обчислення (рис. 9).

Рисунок 8 – Аутентифікація й конфіденційність повідомлень із використанням MAC (код зв’язується з відкритим текстом)

Варто звернути увагу, що використання функції MAC приводить до автентичності повідомлення, але не забезпечує цифрового підпису, оскільки ключ знають обидва учасника.

2.3 Функції хешування

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

Рисунок 9 - Аутентифікація та конфіденційність повідомлень із використанням MAC (код зв’язується з шифротекстом)

Способи застосування дайджесту для аутентифікації повідомлень:

1 Повідомлення разом із приєднаним до нього дайджестом шифрується методами традиційного шифрування (рис. 10).

Рисунок 10

Аргументація автентичності полягає в такому: тільки джерелу А і адресату B відомий ключ K, отже повідомлення напевно прийшло від А і не могло бути змінено за шляхом проходження. Дайджест забезпечує структуризацію і надмірність, необхідну для аутентифікації. Оскільки, шифрування забезпечується стосовно всього повідомлення разом з дайджестом, забезпечується й конфіденційність.

2 Шифрується тільки дайджест засобами традиційного шифрування (рис. 11). Це дозволяє знизити обчислювальне навантаження на систему. Хоча таке застосування дайджестів виправдане в системах, які не вимагають конфіденційності.

Рисунок 11

Варто звернути увагу на той факт, що хешування та шифрування в комбінації фактично дають код автентичності повідомлення, тобто EK[H(M)] являє собою функцію повідомлення М довільної довжини й таємного ключа K, що дає на виході значення фіксованого розміру, захищене від зловмисника, який не знає таємного ключа.

3 Шифрується тільки дайджест засобами шифрування з відкритим ключем з використанням особистого ключа відправника (рис. 12). При цьому забезпечується не тільки автентичність повідомлення, але й цифровий підпис, тому що тільки відправник може зробити відповідним чином зашифрований дайджест. Фактично в цьому й полягає суть цифрового підпису.

Рисунок 12

Необхідно зазаначити, що дане застосування хеш-функції не забезпечує конфіденційності, оскільки відкритий (публічний) ключ доступний усім.

4 Якщо необхідно забезпечити не тільки цифровий підпис, але й конфіденційність, можна зашифрувати повідомлення разом з дайджестом, що шифровано особистим ключем відправника. Для цього використовуються методи традиційного шифрування (рис. 13).

Рисунок 13

5 Для забезпечення автентичності можна використовувати дайджест без шифрування. У такому випадку передбачається, що учасники обміну використовують тільки їм відоме деяке значення S (рис. 14).

Джерело А обчислює хеш-функцію для результату конкатенації повідомлення М і таємного значення S і приєднує отриманий дайджест до повідомлення М. Адресатові В значення S відомо, тому він може теж обчислити дайджест, щоб зрівняти останній з дайджестом, що прийшов разом з повідомленням. У цьому випадку зловмисник не може модифікувати перехоплене повідомлення або згенерувати помилкове повідомлення, оскільки таємне значення S не пересилається.

Рисунок 14

6 Для забезпечення таємності в попередньому випадку можна додати шифрування повідомлення разом з дайджестом, що був отриманий від конкатенації повідомлення M і таємного значення S (рис. 15).

Рисунок 15

Проаналізувавши методи 1-6 стає ясно, що у випадку, коли конфіденційність не потрібна, застосування методів 2 і 3 більш доцільне через менші обчислювальні витрати. Але останнім часом спостерігається підвищений інтерес до методів без кодування 5. Це пов’язане з тим, що:

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

      • ціни на апаратні засоби шифрування досить високі;

      • апаратні засоби орієнтовані на великі обсяги даних;

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

Вимоги, що ставляться до функції хешування

Мета функції хешування полягає в тому, щоб одержати «дактилоскопічну» характеристику відкритого тексту М. Для цього функція хешування повинна мати такі властивості:

  1. бути прийнятною до блоку будь-якої довжини;

  2. на виході давати значення фіксованої довжини;

  3. дайджест h=Н(x) повинен обчислюватися легко для будь-якого заданого значення x, а алгоритм обчислення повинен бути практичним з погляду як апаратної, так і програмної реалізації;

  4. для будь-якого даного дайджесту h практично неможливо обчислити x, для якого H(x)=h. Таку властивість називають однобічністю;

  5. для будь-якого блоку x практично неможливо обчислити yx, для якого H(x)=H(y). Таку властивість називають слабкою опірністю колізіям;

  6. практично неможливо обчислити будь-яку пару різних x та y, для яких . Таку властивість називають сильною опірністю колізіям.

Необхідно зазаначити, що властивості 1-3 описують вимоги, що забезпечують можливість практичного застосування функції хешування для аутентифікації повідомлень. Властивість 4 забезпечує однобічність: легко одержати код на основі наявного повідомлення, але практично неможливо відтворити повідомлення. Це важливо, коли алгоритм аутентифікації припускає використання таємного значення S. Саме значення S не посилається, але якщо хеш-функція не є однобічною, зловмисник може легко визначити таємне значення, досить спостерігати або перехоплювати потік даних, щоб одержати повідомлення М та дайджест . Потім зловмисник розгляне функцію, зворотну функції хешування та одержить . Тепер, коли зловмисник має та легко відновити таємне значення S.

Властивість 5 гарантує, що не вдасться знайти інше повідомлення, що дає в результаті хешування те саме значення, що й дане повідомлення. Це запобігає можливості фальсифікації повідомлень у тому випадку, коли виконується шифрування хеш-кода (у способах застосування хеш-кода 2 і 3. У такій ситуації зловмисник може прочитати повідомлення та обчислити відповідний хеш-код. Однак, він не має таємного ключа, а тому не може змінити повідомлення так, щоб цього не було виявлено. Якщо ця властивість не виконана, зловмисник може діяти в такий спосіб: спочатку перехоплюється повідомлення разом із приєднаним до нього дайджестом, потім обчислюється нешифрований хеш-код повідомлення і нарешті створюється альтернативне повідомлення з тим самим хеш-кодом.

Властивість 6 гарантує захист від атак на основі парадокса задачі про дні народження [2].

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

Найпростішою функцією хешування є функція, що зв’язує всі блоки операцією XOR.

,

де

– повідомлення, що продано у вигляді бітового потоку;

j-біт дайджесту , який обчислюється за формулою

,

де

m – число n-бітових блоків,

j-й біт в i-му блоці, ,

– операція XOR.

Роботу хеш-функції проілюстровано на рис. 16

Рисунок 16

3 Застосування пароля для підтвердження істинності користувача

Традиційно кожен законний користувач комп’ютерної системи одержує ідентифікаційний номер і/або пароль. На початку сеансу роботи з терміналом користувач називає системі свій ідентифікаційний номер (логін) після чого система запитує пароль користувача.

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

Рисунок 17 – Схема аутентифікації за допомогою пароля

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

Наприклад, функція може бути визначена таким чином:

,

де

- пароль відправника;

- ідентифікатор відправника;

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

Такі функції особливо зручні, якщо довжина пароля й довжина ключа однакові. У цьому випадку підтвердження істинності за допомогою пароля складається з пересилання одержувачу відображення і порівняння його з попередньо обчисленим і збереженим еквівалентом

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

де й – відповідно ключ та ідентифікатор відправника.

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

Рисунок 18 – Схема аутентифікації за допомогою пароля з використанням ідентифікаційної таблиці

4 Взаємна перевірка істинності користувачів

Звичайно, сторони, що вступають в інформаційний обмін, мають потребу у взаємній перевірці істинності (аутентифікації) один одного. Цей процес взаємної аутентифікації виконують на початку сеансу зв’язку.

Для перевірки істинності застосовують такі способи:

      • механізм запиту-відповіді;

      • механізм оцінки часу ("часовий штемпель").

Механізм запиту-відповіді полягає в такому. Якщо користувач хоче бути впевненим, що повідомлення, які він одержує від користувача В, не є помилковими, він додає до повідомлень, що посилаються користувачу В, непередбачений елемент – запит Х (наприклад, деяке випадкове число). При відповіді користувач B повинен виконати над цим елементом певну операцію, наприклад, обчислити деяку функцію . Це неможливо здійснити заздалегідь, тому що користувачу невідомо, яке випадкове число Х прийде в запиті. Одержавши відповідь із результатом дій В, користувач А може бути впевнений, що В – справжній. Недоліком цього методу є можливість встановлення закономірності між запитом і відповіддю.

Механізм оцінки часу реалізується через реєстрацію часу для кожного повідомлення. У цьому випадку кожен користувач мережі може визначити, наскільки "застаріло" повідомлення, що прийшло, і вирішити не приймати його, оскільки воно може бути помилковим.

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

При використанні оцінок часу виникає проблема припустимого тимчасового інтервалу затримки для підтвердження істинності сеансу. Адже повідомлення з "тимчасовою печаткою" у принципі не може бути передане миттєво. Крім того, комп’ютерні годинники одержувача й відправника не можуть бути абсолютно синхронізовані. Тому важко визначити, яке запізнювання "печатки" є підозрілим.

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

Припустимо, що застосовується симетрична криптосистема. Користувачі А і В використовують однаковий таємний ключ. Уся процедура показана на рис. 19.

  1. Користувач ініціює процедуру рукостискання, відправляючи користувачеві свій ідентифікатор у відкритій формі.

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

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

Користувач розшифровує цю криптограму й розкриває вихідний вид послідовності S.

Потім користувачі і перетворюють послідовність , використовуючи відкриту однобічну функцію (·).

  1. Користувач шифрує повідомлення й відправляє цю криптограму користувачеві .

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

Очевидно, користувач B перевіряє істинність користувача A таким самим способом. Обидві ці процедури утворюють процедуру рукостискання, що,як правило, виконується на самому початку будь-якого сеансу зв’язку між будь-якими двома сторонами в комп’ютерних мережах.

Рисунок 19 – Схема процедури рукостискання (користувач A перевіряє дійсність користувача В)

Перевага моделі рукостискання полягає в тому, що жоден з учасників сеансу зв’язку не одержує ніякої секретної інформації під час процедури підтвердження істинності.

5 Проблема аутентифікації даних і електронний цифровий підпис

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

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

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

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

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

      • повтор – абонент C повторює раніше переданий документ, що абонент A посилав абонентові В.

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

Після того, як з’єднання встановлене, необхідно забезпечити виконання вимог захисту при обміні повідомленнями:

1) одержувач повинен бути впевнений у істинності джерела даних;

2) одержувач повинен бути впевнений у істинності переданих даних;

3) відправник повинен бути впевнений у доставці даних одержувачу;

4) відправник повинен бути впевнений у істинності доставлених даних.

Для виконання вимог 1-2 засобом захисту є цифровий підпис. Для виконання вимог 3-4 відправник повинен одержати за допомогою пошти повідомлення, що засвідчує вручення (certified mail). Засобами захисту в такій процедурі є цифровий підпис повідомлення, що підтверджує доставку повідомлення, яке у свою чергу є доказом пересилання вихідного повідомлення.

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

При обробці документів в електронній формі зовсім непридатні традиційні способи встановлення істинності по рукописному підпису й відбитках пальців на паперовому документі. Принципово новим рішенням є електронний цифровий підпис (ЕЦП).

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

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

      • не дає особі, яка відправила повідомлення, можливості відмовитися від зобов’язань, пов’язаних з підписаним текстом;

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

Цифровий підпис являє собою відносно невелику кількість додаткової цифрової інформації, яка передається разом з текстом, що підписується.

Система ЕЦП враховує дві процедури:

      • процедуру підписання;

      • процедуру перевірки підпису.

У процедурі підписання використовується таємний ключ відправника повідомлення, у процедурі перевірки підпису - відкритий ключ відправника (рис 20 ).

Рисунок 20 – Схема реалізації ЕЦП

При формуванні ЕЦП відправник насамперед обчислює хеш-функцію тексту , який необхідно підписати. Дайджест являє собою один короткий блок інформації, що характеризує весь текст у цілому. Потім дайджест m шифрується таємним ключем відправника . Шифрований дайджест і є ЕЦП для даного тексту М.

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

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

Як документ, що підписується ЕЦП, може бути використаний будь-який файл. Підписаний файл створюється з вихідного файлу шляхом додавання до нього однієї або більше електронних підписів.

Кожен підпис містить таку інформацію: дату підпису; строк закінчення дії ключа даного підпису; інформацію про особу, що підписала файл (П. І. П/б, посада, коротка назва фірми); ідентифікатор, що підписав (ім’я відкритого ключа); цифровий підпис.

До цифрового підпису ставляться такі вимоги:

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

      • підпис повинен використовувати якусь інформацію, унікальну для відправника, щоб запобігти фальсифікації й відмову від авторства;

      • простота виконання цифрового підпису;

      • цифровий підпис повинен досить легко розпізнаватися та перевірятися;

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

      • екземпляр цифрового підпису зручно зберігати на запам’ятовувальному пристрої.

Алгоритм цифрового підпису

1 Вибираються три числа, які можуть бути відомими групі користувачів:

q – просте число довжиною в 160 бітів ;

p – просте число довгої між 512 й 1024 бітами, (тобто 512  L  1024, 2L-1<p<2L), таке, що q ділить (p-1), тобто ;

g – число вигляду , де h – будь-яке ціле число таке, що 1<h<(p-1) і >1.

2 Маючи числа q, p, g, кожен законний учасник вибирає особистий ключ X і генерує відкритий ключ Y :

X – випадкове число, таке що 0<X<q;

Y=g mod p.

3 Створюється цифровий підпис (r, s), де

де k – випадкове або псевдовипадкове число, 0<k<q.

4 У пункті призначення адресат одержує повідомлення й виконує верифікацію.

4.1 Генерує величину

де

4.2 Перевіряє

Контрольні питання

  1. Дайте визначення поняттям “ідентифікація”, “аутентифікація”, “авторизація”.

  2. У чому полягає різниця понять “аутентифікація” та “ідентифікація”?

  3. Назвіть існуючі типи порушень захисту.

  4. Назвіть функції, які породжують аутентифікатор.

  5. З якою метою використовують код розпізнавання помилок?

  6. У чому полягає недолік використання зовнішнього коду розпізнавання помилок?

  7. Дайте визначення поняття “код автентичності повідомлення”.

  8. Назвіть як і у яких випадках використовується код автентичності повідомлення.

  9. Назвіть способи використання дайджесту повідомлення для його аутентифікації.

  10. Назвіть вимоги, що ставляться до функції хешування.

  11. Назвіть варіанти застосування пароля для аутентифікації користувача.

  12. У чому полягає мета аутентифікації електронних документів?

  13. Назвіть види можливих злочинних дій, що застосовуються відносно електронних документів.

  14. Назвіть основні переваги ЕЦП.

  15. Поясніть схему реалізації ЕЦП.

Задачі

  1. Реалізуйте алгоритм функції хешування, що пов’язує всі блоки операцією XOR.

  2. Реалізуйте алгоритм цифрового підпису, що запропоновано у розділі 7.5.

  3. Реалізуйте алгоритм цифрового підпису в основі якого лежить алгоритм RSA.

  4. Реалізуйте алгоритм цифрового підпису в основі якого лежить алгоритм Ель Гамаля.

Список літератури

  1. Усатенко Т.М. Криптологія: Навчальний посібник. – Суми: Вид-во СумДУ, 2008. – 164 с.

  2. Шнайдер Брюс. Прикладная криптология. Протоколы, алгоритмы, исходные тексты на языке Си. – М.: Издательство ТРИУМФ, 2002

  3. Столлингс Вильям. Криптография и защита сетей: принципы и практика /Пер. с англ – М.: Издательский дом «Вильямс», 2001.

  4. Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. – М.: КУДИЦ-ОБРАЗ, 2001.

  5. Брассар Ж. Современная криптология / Пер с англ. – М.: Полимед, 1999.

  6. Жельников В. Криптография от папируса до компьютера. –М.: ABF, 1996.

  7. Введение в криптографию /Под общей ред. В.В. Ященко. – СПб.: Питер, 2001.

Соседние файлы в предмете Защита информации