інки ймовірностей, в даному випадку будуватися деяка цільова функція, і шукається її максимум. При цьому алгоритм шифрування представляється як композиція продовжених або гратковий певних булевих функцій. Їх відмінність від звичайних булевих функцій в тому, що вони можуть приймати всі раціональні значення від 0 до 1 (вважаючи, що 0 - брехня, 1 - істина). [14, 15] Цільова функція описується таким чином [14]. Припустимо, що порушник знає криптоалгоритм і деяку кількість розрядів відкритих і відповідних зашифрованих текстів. Нехай розряди відкритого тексту описуються рівняннями
xi = Fi (y1, ..., yn, z1, ..., zN). (1)
де yi
- розряди шифрограми, zj
- розряди ключа. Булеві функції
Fi не мають аналітичної запису (вона дуже складна), але значення їх можуть бути обчислені для довільного набору аргументів. Якщо відкриті і зашифровані тексти відомі в достатній кількості, що дорівнює O (N), то система рівнянь (1) має єдине рішення, яке і є ключем. При цьому досить знати тільки окремі розряди деяких блоків відкритого тексту. Запишемо для цього випадку систему рівнянь (1) у вигляді
fi (z1, ..., zN) = ai (2)
Оскільки система (2) має єдине рішення, воно може бути записано у вигляді булевої формули, яка містить єдину кон'юнкцію:
(3)
Символ zc тильдою означає входження змінної з інверсією або без інверсії. З іншого боку, (2) може бути записана у вигляді такої кон'юнкції булевих формул:
(4)
Якщо xi = 1, то Fi входить без інверсії, в іншому випадку Fi входить з інверсією. Оскільки ліві частини виразів (3) і (4) рівні 1 на одному і тому ж наборі аргументів, вони представляють одну і ту ж бульову функцію, яку назвемо цільової, при цьому (4) дає спосіб обчислення цільової функції для довільного ключа. p>
Підхід підтверджений експериментально. Для ГОСТ 28147-89 знайдений великий клас потенційно слабких ключів, які, можливо, допускають розтин c низькою складністю. При цьому потрібно всього чотири блоки підібраних відкритих текстів. [15]
Висновок
Підводячи підсумок, можна сказати, що будь-який алгоритм шифрування, крім одноразового блокнота та інших доведено стійких шифрів, є потенційно нестійким. Багаторазове використання одного і того ж ключа залишає деякий В«слідВ» у шіфруемих повідомленнях. За допомогою статистики та алгебри можна виділити даний слід, і на його основі зробити припущення про самому ключі. p align="justify"> Проте, при теперішньому рівні обчислювальної техніки, сучасні алгоритми шифрування є досить стійкими. Щоб уникнути витоку інформації, необхідно тільки правильно використовувати дані алгоритми. Це передбачає досить часту зміну ключів, використання досить довгих і вип...