Взлом шифра Виженера

В шифре Виженера ключ представляет из себя слово длиной N, каждый символ слова мы соотносим с его позицией в алфавите, для латинского алфавита, буква 'a' = 1, 'b' = 2, и т.д. Далее мы берем сообщение, и каждый mod N символ сообщения сдвигаем вправо на код символа. Как пример, если очередным символом ключа является 'b' (2), то мы меняем символ сообщения следующим образом: 'a' => 'c', ... ,'z' => 'b'.

Вам выдан зашифрованный текст, который получен из сообщения, в котором есть лишь буквы (в нижнем регистре) английского алфавита (пробелы, кавычки и прочие небуквенные символы удалены). Шифрование было сделано следующим образом: взят отрывок из произведения из Project Gutenberg CD и зашифрован со случайным ключом длины от 6 до 10. Для этого надо скачать архив и взять зашифрованный текст <номер>.cipher (номер состоит из ровно трех цифр, например, зашифрованный текст с номером 12 называется 012.cipher), либо скачать его напрямую, например, так.

Таблица частотности символов для решения задачи: {'a': 0.08167, 'b': 0.01492, 'c': 0.02782, 'd': 0.04253, 'e': 0.12702, 'f': 0.02228, 'g': 0.02015, 'h': 0.06094, 'i': 0.06966, 'j': 0.00153, 'k': 0.00772, 'l': 0.04025, 'm': 0.02406, 'n': 0.06749, 'o': 0.07507, 'p': 0.01929, 'q': 0.00095, 'r': 0.05987, 's': 0.06327, 't': 0.09056, 'u': 0.02758, 'v': 0.00978, 'w': 0.0236, 'x': 0.0015, 'y': 0.01975, 'z': 0.00074}.

Ответ и код нужно прислать на почту crypto.ifmo.ct [at] gmail [dot] com. Тема письма должна быть: "Практика 1. Фамилия Имя".

Не забудьте заполнить форму.