Лавиновий ефект

Матеріал з Вікіпедії — вільної енциклопедії.
Версія від 15:39, 3 травня 2012, створена ZéroBot (обговорення | внесок) (r2.7.1) (робот додав: en:Avalanche effect)
Перейти до навігації Перейти до пошуку

Лавиновий ефект (англ. avalanche effect) — посилається на бажану властивість криптографічного алгоритму, зазвичай блочних шифрів і криптографічних хеш-функцій. Лавиновий ефект очевидний у разі якщо, коли дані вході ледве змінюються (наприклад, змінився один біт) вихідні дані змінюються значно (наприклад, змінюється половина бітів). У випадку якісних блочних шифрів, подібна маленька зміна або в ключі, або в відкритому тексті повинна спричинити значну зміну шифротексту. Цей термін вперше використав Хорст Фейстель,[1] хоча сама поняття поринає назад щонайменше до розпорошення Шеннона.

Хеш-функція SHA-1 показує хороший лавиновий ефект. При зміні одного біту на вході хеш-сума стає зовсім іншою

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

Розробка шфру або хешу, що виявляв би значний лавиновий ефект становить одну з першочергових цілей дизайну. Саме через це більшість блочних шифрів є послідовністю перетворень таких як заміна, переставка або модульна арифметика. Через це й хеш-функції мають великий розмір блоків. Обидві ці властивості дозволяють маленьким змінам через ітерації алгоритму швидко поширитись так, що кожен біт вихідних даних залежатиме від усіх бітів даних на вході ще до завершення алгоритму.[джерело?]

Примітки

  1. Feistel, Horst (1973). Cryptography and Computer Privacy. Scientific American 228 (5).