шифр Виженера

метод полиалфавитного шифрования буквенного текста с использованием ключевого слова

Очень долгое время шифр Виженера считался невзламываемым.

Чтобы его расшифровать, для начала угадывают длину кодового слова и применяют частотный анализ к каждой n-ной букве послания, где n — предполагаемая длина кодового слова.

Если длина была угадана верно, то и сам шифр вскроется с большей или меньшей долей вероятности.

Если предполагаемая длина не дает верных результатов, то пробуют другую длину кодового слова, и так далее до победного конца.

Как шифровать

Впервые этот метод описал Джовани Баттиста Беллазо

в книге La cifra del. Sig. Giovan Battista Bellasо в 1553 году, однако в XIX веке получил имя Блеза Виженера, французского дипломата. Метод прост для понимания и реализации, он является недоступным для простых методов криптоанализа

Представим, что у нас есть таблица, построенная по тому же принципу, что и приведенная выше, и ключевое слово, допустим, «CHAIR».

Шифр Виженера использует тот же принцип, что и шифр Цезаря, за тем исключением, что каждая буква меняется в соответствии с кодовым словом.

В нашем случае первая буква послания будет зашифрована согласно шифровальному алфавиту для первой буквы кодового слова (в нашем случае «С»), вторая буква — согласно алфавиту для второй буквы кодового слова («H»), и так далее.

В случае, если послание длиннее кодового слова, то для (k*n+1)-ой буквы (где n — это длина кодового слова) вновь будет использован алфавит для первой буквы кодового слова, и так далее.