Шифр Виженера — классический метод полиалфавитного шифрования, использующий таблицу сдвигов и ключевое слово для защиты сообщений.
Игра поддерживает два алфавита: русский (А-Я, Ё) и английский (A–Z). Все буквы автоматически приводятся к верхнему регистру. Цифры и знаки препинания не шифруются.
Алиса вводит исходное сообщение. Каждый символ проверяется на принадлежность выбранному алфавиту. Недопустимые символы отфильтровываются автоматически.
Вводится ключевое слово — последовательность букв, которая будет циклически повторяться под сообщением. Длина ключа влияет на криптостойкость: чем длиннее и случайнее ключ, тем сложнее взломать шифр.
Для каждого символа сообщения:
Формула: C = (P + K) mod N, где P — позиция открытого текста, K — позиция ключа, N — размер алфавита.
Ключ передаётся по защищённому каналу, шифротекст — по открытому. Даже если перехватить шифротекст, без ключа восстановить сообщение невозможно.
Боб использует тот же ключ и таблицу Виженера в обратном порядке:
Формула: P = (C − K + N) mod N
После расшифровки система сравнивает полученный текст с исходным. Если они совпадают — передача успешна. Визуальная подсветка таблицы помогает отследить каждый шаг процесса.
Цветовая легенда: ● Исходный текст, ● Ключ, ● Шифротекст