Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / Лекц_я 12.doc
Скачиваний:
54
Добавлен:
05.06.2015
Размер:
129.54 Кб
Скачать

Атака "зустріч посередині"

Для подвійного DES існує так звана атака "зустріч посередині". Вона заснована на наступній властивості алгоритму. Ми маємо

С = Ek2 [Ek1 [P]]

Тоді

X = Ek1 [P] = Dk2 [C].

Атака полягає в наступному. Потрібно, щоб атакуючий знав хоча б одну пару незашифрований текст і відповідний йому зашифрований текст: (Р, С). У цьому випадку, по-перше, шифрується Р для всіх можливих 256 значень K1. Цей результат запам'ятовується в таблиці, і потім таблиця впорядковується за значенням Х. Наступний крок складається в дешифруванні С, із застосуванням всіх можливих 256 значень K2. Для кожного виконаного дешифрування шукається рівне йому значення в першій таблиці. Якщо відповідне значення знайдене, то вважається, що ці ключі можуть бути правильними, і вони перевіряються для наступної відомої пари: незашифрований текст, зашифрований текст.

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

Атаки на варіанти зі зменшеним числом раундів

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

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

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

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

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

Таблиця 12.1 - Атаки на варіанти зі зменшеним числом раундів

Алгоритм, раунди

Раунди (довжина ключа)

Тип атаки

Текст

Байти пам'яті

Операції

MARS

16 Core (C)

16 Mixing (M)

11C

Amp. Boomerang

265

270

2229

16M, 5C

Meet-in-Middle

8

2236

2232

16M, 5C

Diff.M-i-M

250

2197

2247

6M, 6C

Amp. Boomerang

269

273

2197

RC6 20

14

Stat. Disting.

2118

2112

2122

12

Stat. Disting.

294

242

2119

14 (192,256)

Stat. Disting.

2110

242

2135

14 (192,256)

Stat. Disting.

2108

274

2160

15 (256)

Stat. Disting.

2119

2138

2215

Rijndael

10 (128)

4

Truncated Diff.

29

Small

29

5

Truncated Diff.

211

Small

240

6

Truncated Diff.

232

7*232

272

6

Truncated Diff.

6*232

7*232

244

7 (192)

Truncated Diff.

19*232

7*232

2155

7 (256)

Truncated Diff.

21*232

7*232

2172

7

Truncated Diff.

2128 - 2199

261

2120

8 (256)

Truncated Diff.

2128 - 2199

2101

2204

9 (256)

Related Key

277

NA

2224

Rijndael

12 (192)

7 (192)

Truncated Diff.

232

7*232

2184

7 (256)

Truncated Diff.

232

7*232

2200

Rijndael

14 (256)

7 (192, 256)

Truncated Diff.

232

7*232

2140

Serpent 32

8 (192, 256)

Amp. Boomerang

2113

2119

2179

6 (256)

Meet-in-Middle

512

2246

2247

6

Differential

283

240

290

6

Differential

271

275

2103

6 (192, 256)

Differential

241

245

2163

7 (256)

Differential

2122

2126

2248

8 (192, 256)

Amp. Boomerang

2128

2133

2163

8 (192, 256)

Amp. Boomerang

2110

2115

2175

9 (256)

Amp. Boomerang

2110

2212

2252

Twofish 16

6 (256)

Impossible Diff.

NA

NA

2256

6

Related Key

NA

NA

NA

NA - інформація недоступна.

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

Те ж ставиться до інформації, необхідної для виконання атак на варіанти зі зменшеним числом раундів. Майже всі такі атаки вимагають більше 230 шифрувань обраного тексту; інакше кажучи, більше більйона шифрувань, а іноді навіть більше. Навіть якщо той самий ключ використовується така кількість разів, не представляється реальним для супротивника зібрати таку кількість інформації. Наприклад, у випадку лінійної або диференціальної атаки на DES потрібно 243 відомого незашифрованого тексту й 247 шифрувань обраного незашифрованого тексту. Проте, випадки подібних атак проти DES відомі.

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

Соседние файлы в папке Лекц_ї