Використання хеш-функцій
Хеш функція — функція, що перетворює вхідні дані будь-якого (як правило, великого) розміру в дані фіксованого розміру.
Криптографічна хеш-функція повинна забезпечувати:
· стійкість до колізій (два різні набори даних повинні мати різні результати перетворення);
· необоротність (неможливість обчислити вхідні дані за результатом перетворення).
Оскільки підписуванні документи - змінного (і як правило досить великого) обсягу, в схемах ЕЦП найчастіше підпис ставиться не на сам документ, а на його хеш. Для обчислення хеша використовуються криптографічні хеш-функції, що гарантує виявлення змін документа при перевірці підпису. Хеш-функції не є частиною алгоритму ЕЦП, тому в схемі може бути використана будь-яка надійна хеш-функція.
Використання хеш-функції дає наступні переваги:
· Обчислювальна складність. Зазвичай хеш цифрового документа робиться у багато разів меншого обсягу, ніж обсяг вихідного документа, і алгоритми обчислення хешу є більш швидкими, ніж алгоритми ЕЦП. Тому формувати хеш документа і підписувати його виходить набагато швидше, ніж підписувати сам документ.
· Сумісність. Більшість алгоритмів оперує з рядками біт даних, але деякі використовують інші уявлення. Хеш-функцію можна використовувати для перетворення довільного вхідного тексту у відповідний формат.
· Цілісність. Без використання хеш-функції великий електронний документ у деяких схемах потрібно розділяти на досить малі блоки для застосування ЕЦП. При верифікації неможливо визначити, чи всі блоки отримані і в правильному чи вони порядку.
Варто зауважити, що використання хеш-функції не обов'язково під час цифрового підпису, а сама функція не є частиною алгоритму ЕЦП, тому хеш-функція може використовуватися будь-яка або не використовуватися взагалі.
У більшості ранніх систем ЕЦП використовувалися функції з секретом, які за своїм призначенням близькі до односторонніх функцій. Такі системи уразливі до атак з використанням відкритого ключа, так як, вибравши довільний цифровий підпис і застосувавши до неї алгоритм верифікації, можна отримати вихідний текст. Щоб уникнути цього, разом з цифровим підписом використовується хеш-функція, тобто, обчислення підпису здійснюється не щодо самого документа, а щодо його хешу. У цьому випадку в результаті верифікації можна отримати тільки хеш вихідного тексту, отже, якщо використовується хеш-функція криптографічно стійка, то отримати вихідний текст буде обчислювально складно, а значить атака такого типу стає неможливою.
Дата добавления: 2015-07-24; просмотров: 1856;