Виженер на троих
Задание 1Введение
Цель: Ломать полиалфавитный шифр с помощью известного открытого текста.
Флаг зашифрован шифром Виженера: сдвигаются только латинские буквы, ключ из 3 заглавных букв (A = сдвиг 0) применяется по кругу только к буквам. Скобки и подчёркивания не меняются.
Задание 2Теория и инструменты
Шифр Виженера сдвигает каждую букву на свою величину по ключевому слову, повторяя его по кругу. Ключ KEY даёт сдвиги 10, 4, 24, 10, 4, 24, ...
Если длина ключа 3, а первые три буквы открытого текста известны, каждая буква ключа вычисляется как (шифр − открытый) mod 26. Дальше расшифровка — обратный сдвиг.
Инструменты
- Python
- CyberChef: Vigenère Decode
- dCode.fr: Vigenere Cipher
Больше теории — в разделе «Обучение: Криптография».
Задание 3Практика: найдите флаг
XOL{qdmzikmz_cdon_ncumo_qzt}
Пошаговый план — открывайте по одному шагу
- 1Выпишите первые три буквы шифртекста (небуквенные символы ключ не расходуют).
- 2Вычтите из них по модулю 26 буквы
C,T,F— получите три буквы ключа. - 3Расшифруйте весь текст, сдвигая каждую следующую букву назад на очередную букву ключа.
- 4Проверьте, что результат читается.
Подсказки — каждая до решения стоит −25 очков
Задание 4Как защититься
Короткий ключ, повторяющийся по кругу, — слабость, которую использует и анализ Касиски. Используйте современные шифры.
Разборы участников
Разборы открываются после того, как вы решите комнату, — чтобы не спойлерить ответ.