← До місії 2.6
КРИПТОГРАФІЯ · МІСІЯ 2.6
РОЗДІЛ 02 · СУЧАСНІ ШИФРИ · МІСІЯ 2.6

DES — коли ключа вже недостатньо

Чи може правильно побудований шифр втратити надійність через довжину ключа?

🐈‍⬛ Буч змінив роль: тепер він професор криптографії. Разом із ним простежимо шлях блока, зберемо перестановку, перевіримо підстановку та оцінимо перебір ключів.

Кіт Буч у професорському вбранні пояснює симетричне шифрування DES, IP, раунди Фейстеля, S-box і FP

01. Що робить DES?

DES (Data Encryption Standard) — історичний симетричний блочний шифр: для шифрування і дешифрування використовують той самий секретний ключ. DES обробляє блоки по 64 біти, має 16 раундів і ефективну довжину ключа 56 бітів (8 додаткових бітів 64-бітного представлення ключа використовують для контролю парності).

Відкритий блок (64)→IP→16 раундів Фейстеля→Обмін половин→FP = IP⁻¹→Шифротекст (64)

Важливо: сама перестановка IP не забезпечує секретності. Захист забезпечує сукупність раундових перетворень та секретний ключ. DES нині не рекомендують для захисту нових систем через короткий ключ.

02. Симетричне шифрування: один ключ — два напрями

Повідомлення→🔑 K · Шифрування→Шифротекст→🔑 той самий K · Дешифрування→Повідомлення

У мережі Фейстеля дешифрування використовує раундові підключі у зворотному порядку. Ключ не передають разом із повідомленням відкритим каналом.

03. Жива модель перестановки IP і FP

Для навчання беремо 8 бітів, а не реальні 64. Правило: кожна цифра таблиці вказує, з якої позиції взяти біт.

04. Що відбувається всередині раунду?

Кожен раунд DES спирається на мережу Фейстеля: L′ = R, R′ = L ⊕ F(R,K). У справжній функції F: розширення E (32→48), XOR із 48-бітним підключем, вісім S-box (48→32), перестановка P.

R: 32 біти→E: 48→⊕ Kᵢ: 48→8 × S-box: 32→P: 32→F(R,Kᵢ)

Перевіримо маленький XOR — не DES, а модель однієї операції:

05. Як працює S-box?

У справжньому DES кожен S-box приймає 6 бітів і повертає 4 біти. Для вибору елемента таблиці зовнішні біти задають рядок, середні чотири — стовпець.

Тут використано реальну таблицю S1 DES. Решта повного алгоритму на сторінці не моделюється.

06. Чому 56 бітів уже недостатньо?

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

У 1998 році машина EFF Deep Crack продемонструвала практичну атаку перебором на DES. Історія DES показує, що оцінка стійкості змінюється з розвитком обчислювальної техніки. Для сучасних застосувань використовують, зокрема, AES.

07. Практичні лабораторії Буча

Практика 1 · Перестановки

Переставте 8 бітів за таблицею та перевірте результат.

Відкрити

Практика 2 · Обернена FP

Відновіть порядок бітів і знайдіть обернену перестановку.

Відкрити

Практика 3 · S-box

Знайдіть рядок, стовпець і вихід підстановки S1.

Відкрити

Практика 4 · Простір ключів

Змоделюйте перебір та поясніть, чому 56 бітів — слабке місце.

Відкрити

🟦 Майстерка «DES — коли помилка стає розвитком»

DES був важливим етапом розвитку криптографії, але довжина його ключа з часом перестала відповідати вимогам безпеки. Зіставте три чинники: конструкцію алгоритму, простір ключів і швидкість обчислень. Сформулюйте висновок: чи означає застарілий ключ, що всі ідеї DES були помилковими?

Завершіть дослідження у вебботі, а власні висновки надішліть через форму відповідей.