Використання хеш-функцій

Лекція 11-3. Електронний цифровий підпис

 

Ø 1 Призначення і застосування ЕП

Ø 2 Історія виникнення

Ø 3 Види електронних підписів

Ø 4 Алгоритми

o 4.1 Використання хеш-функцій

o 4.2 Симетрична схема

o 4.3 Асиметрична схема

§ 4.3.1 Види асиметричних алгоритмів ЕП

o 4.4 Перелік алгоритмів ЕП

Ø 5 Підробка підписів

o 5.1 Моделі атак та їх можливі результати

o 5.2 Підробка документа (колізія першого роду)

o 5.3 Отримання двох документів з однаковим підписом (колізія другого роду)

o 5.4 Соціальні атаки

Ø 6 Управління ключами

o 6.1 Управління відкритими ключами

o 6.2 Зберігання закритого ключа

Ø 7 Використання ЕП

o 7.1 В Україні

o 7.2 В Естонії

Ø 8 Примітки

Див. також

Електронний підпис (ЕП), Електронний цифровий підпис (ЕЦП):

 

- інформація в електронній формі, приєднана до іншої інформації в електронній формі (електронний документ) або іншим чином пов'язана з такою інформацією;

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

 

За своєю суттю електронний підпис є реквізитом електронного документа, що дозволяє:

1) встановити відсутність спотворення інформації в електронному документі з моменту формування ЕП;

2) перевірити приналежність підпису власникові сертифіката ключа ЕП.

 

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

Призначення і застосування ЕП

 

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

 

Використання електронного підпису дозволяє здійснити:

Ø Контроль цілісності переданого документа: при будь-якій випадковій або навмисній зміні документа підпис стане недійсним, тому що він обчислений на підставі вихідного стану документа і відповідає лише йому.

Ø Захист від змін (підроблення) документа: гарантія виявлення підробки при контролі цілісності робить підроблення недоцільним в більшості випадків.

Ø Неможливість відмови від авторства. Так як створити коректний підпис можливо, лише знаючи закритий ключ, а він відомий тільки власнику, він не може відмовитися від свого підпису під документом.

Ø Доказове підтвердження авторства документа: Так як створити коректний підпис можливо, лише знаючи закритий ключ, а він відомий тільки власнику, він може довести своє авторство підпису під документом. Залежно від деталей визначення документа можуть бути підписані такі поля, як «автор», «внесені зміни», «мітка часу» і т. д.

 

Історія виникнення

У 1976 році УітфілдомДіффі і Мартіном Хеллманом було вперше запропоновано поняття «електронний цифровий підпис», хоча вони всього лише припускали, що схеми ЕЦП можуть існувати. [2]

У 1977 році, Рональд Ривест, Аді Шамір і Леонард Адлеман розробили криптографічний алгоритм RSA, який без додаткових модифікацій можна використовувати для створення примітивних цифрових підписів. [3]

Незабаром після RSA були розроблені інші ЕЦП, такі як алгоритми цифрового підпису Рабина, Меркле.

У 1984 році Шафи Гольдвассер, Сільвіо Мікалі і Рональд Ривест першими строго визначили вимоги безпеки до алгоритмів цифрового підпису. Ними були описані моделі атак на алгоритми ЕЦП, а також запропонована схема GMR, що відповідає описаним вимогам (криптосистема Гольдвассера - Мікалі). [4]

 

 

Види електронних підписів в Україні

Закон України від 22 травня 2003 року N 852-IV «Про електронний цифровий підпис» встановлює наступні види ЕП:

 

Ø Простий електронний підпис (ПЕП)

Створюється за допомогою кодів, паролів та інших інструментів.Ці засоби захисту дозволяють ідентифікувати автора підписаного документа.Важливою властивістю простого електронного підпису є відсутність можливості перевірити документ на предмет наявності змін з моменту підписання.Прикладом простого електронного підпису є комбінація логіна і пароля.

 

Ø Посилений некваліфікований електронний підпис (НЕП);

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

 

Ø Посилений кваліфікований електронний підпис (КЕП).

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

Алгоритми

Існує кілька схем побудови цифрового підпису:

 

Ø На основі алгоритмів симетричного шифрування. Дана схема передбачає наявність у системі третьої особи - арбітра, що користується довірою обох сторін. Авторизацією документа є сам факт шифрування його секретним ключем і передача його арбітру. [8]

Ø На основі алгоритмів асиметричного шифрування. На даний момент такі схеми ЕП найбільш поширені і знаходять широке застосування.

 

Крім цього, існують інші різновиди цифрових підписів (груповий підпис, незаперечний підпис, довірений підпис), які є модифікаціями описаних вище схем. [8] Їх поява обумовлена ​​різноманітністю завдань, що вирішуються за допомогою ЕП.

 

Використання хеш-функцій

 

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

 

Використання хеш-функцій дає наступні переваги:

 

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

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

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

 

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

У більшості ранніх систем ЕП використовувалися функції з секретом, які за своїм призначенням близькі до односторонніх функцій. Такі системи уразливі до атак з використанням відкритого ключа (див. нижче), так як, вибравши довільний цифровий підпис і застосувавши до нього алгоритм верифікації, можна отримати вихідний текст.[9] Щоб уникнути цього, разом з цифровим підписом використовується хеш-функція, тобто, обчислення підпису здійснюється не щодо самого документа, а щодо його хешу. У цьому випадку в результаті верифікації можна отримати тільки хеш вихідного тексту, отже, якщо використовувана хеш-функція криптографічно стійка, то отримати вихідний текст буде складно, а тому атака такого типу стає неможливою.

 

Симетрична схема

 

Симетричні схеми ЕП менш поширені ніж асиметричні, так як після появи концепції цифрового підпису не вдалося реалізувати ефективні алгоритми підпису, засновані на відомих в той час симетричних шифрах. Першими, хто звернув увагу на можливість симетричної схеми цифрового підпису, були основоположники самого поняття ЕП Діффі і Хеллман, які опублікували опис алгоритму підпису одного біта за допомогою блочного шифру.[2] Асиметричні схеми цифрового підпису спираються на обчислювально складні завдання, складність яких ще не доведена, тому неможливо визначити, чи будуть ці схеми зламані найближчим часом, як це сталося зі схемою, заснованої на задачі про укладання ранця. Також для збільшення криптостійкості потрібно збільшувати довжину ключів, що призводить до необхідності переписування програми, що реалізують асиметричні схеми, і в деяких випадках перепроектовувати апаратуру. [8] Симетричні схеми засновані на добре вивчених блокових шифрах.

 

У зв'язку з цим симетричні схеми мають такі переваги:

 

Ø Стійкість симетричних схем ЕП випливає з стійкості використовуваних блокових шифрів, надійність яких також добре вивчена.

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

 

Однак у симетричних ЕП є і ряд недоліків:

 

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

Ø Згенеровані для підпису ключі можуть бути використані тільки один раз, так як після підписування розкривається половина секретного ключа.

 

Через розглянуті недоліки симетрична схема ЕЦП Діффі-Хелмана не застосовується, а використовується її модифікація, розроблена Березіним і Дорошкевичем, в якій підписується відразу група з декількох біт. Це призводить до зменшення розмірів підпису, але до збільшення обсягу обчислень. Для подолання проблеми «одноразовості» ключів використовується генерація окремих ключів з головного ключа. [8]


 


Асиметрична схема

 

 

 

Рис. 1. Схема пояснення алгоритмів підпису і перевірки

 

Асиметричні схеми ЕП відносяться до криптосистем з відкритим ключем.

На відміну від асиметричних алгоритмів шифрування, в яких:

- шифрування проводиться за допомогою відкритого ключа;

- а розшифрування - за допомогою закритого.

 

У схемах цифрового підпису:

- підписування проводиться із застосуванням закритого ключа,

- а перевірка - із застосуванням відкритого.

 

Загальновизнана схема цифрового підпису охоплює три процеси [6]:

 

Ø Генерація ключової пари. За допомогою алгоритму генерації ключа рівноймовірним чином з набору можливих закритих ключів вибирається закритий ключ, обчислюється відповідний йому відкритий ключ.

Ø Формування підпису. Для заданого електронного документа за допомогою закритого ключа обчислюється підпис.

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

 

Для того, щоб використання цифрового підпису мало сенс, необхідно виконання двох умов:

 

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

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

 

Слід відрізняти електронний цифровий підпис від коду автентичності повідомлення (MAC).

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: