Для восстановления исходного слова, зашифрованного с помощью шифра Виженера, необходимо знать ключ и алфавит, который использовался для шифрования. Предположим, что используется русский алфавит, который состоит из 33 букв (А-Я). Ключевое слово в данном случае — БАНК.
Для дешифрования каждой буквы исходного текста мы используем следующую формулу:
[ P_i = (C_i - K_i) \mod N ]
где ( P_i ) — исходный символ, ( C_i ) — зашифрованный символ, ( K_i ) — символ ключа, соответствующий позиции ( i ) зашифрованного символа (повторяющийся), ( N ) — число букв в алфавите (33 для русского).
Шаги:
- Преобразуем каждую букву в числовой эквивалент (А=0, Б=1, ..., Я=32).
- Применим формулу для каждой буквы шифрованного сообщения.
Ключ "БАНК" в числовом виде: Б=1, А=0, Н=13, К=10. Повторяем ключ до длины шифрованного сообщения: БАНКБАН. В числовом виде: 1, 0, 13, 10, 1, 0, 13.
Шифрованное сообщение "ЖПЮЩЕБ":
Ж=6, П=15, Ю=29, Щ=27, Е=4, Б=1.
Применяем формулу:
- ( P_1 = (6 - 1) \mod 33 = 5 ) (Е)
- ( P_2 = (15 - 0) \mod 33 = 15 ) (П)
- ( P_3 = (29 - 13) \mod 33 = 16 ) (Р)
- ( P_4 = (27 - 10) \mod 33 = 17 ) (С)
- ( P_5 = (4 - 1) \mod 33 = 3 ) (Д)
- ( P_6 = (1 - 0) \mod 33 = 1 ) (Б)
Исходное слово: ЕПРСДБ.