Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Шифр Вижинера, пример,Криптоанализ, Реализация

Лекция



Привет, Вы узнаете о том , что такое шифр вижинера , Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое шифр вижинера , настоятельно рекомендую прочитать все из категории Шифры в криптографии.

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

Этот метод является простой формой многоалфавитной замены. Шифр Виженера изобретался многократно. Впервые этот метод описал Джованни-Баттиста Беллазо (Giovan Battista Bellaso) в книге La cifra del. Sig. Giovan Battista Bellasо в 1553 году , однако в 19 веке получил имя Блеза Виженера , швейцарского дипломата. Метод прост для понимания и реализации, он является недоступным для простых методов криптоанализа.
Шифровани
Квадрат Виженера или таблица Виженера, может быть использована для заширования и расшифрования.
В шифре Цезаря каждая буква алфавита сдвигается на несколько позиций; например в шифре Цезаря при сдвиге +3, A стало бы D, B стало бы E и так далее. Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифрования может использоваться таблица алфавитов, называемая квадрат Виженера. Применительно к латинскому алфавиту таблица Виженера составляется из строк по 26 символов, причем каждая следующая строка сдвигается на несколько позиций. Таким образом, в таблице получается 26 различных шифров Цезаря. На разных этапах кодировки шифр Виженера использует различные алфавиты из этой таблицы. На каждом этапе шифрования используются различные алфавиты, выбираемые в зависимости от символа ключевого слова. Например, предположим, что исходный текст имеет вид:

ATTACKATDAWN

Человек, посылающий сообщение, записывает ключевое слово("LEMON") циклически до тех пор, пока его длина не будет соответствовать длине исходного текста:

LEMONLEMONLE

Первый символ исходного текста A зашифрован последовательностью L, которая является первым символом ключа. Первый символ L шифрованного текста находится на пересечении строки L и столбца A в таблице Виженера. Точно так же для второго символа исходного текста используется второй символ ключа; т.е. второй символ шифрованного текста X получается на пересечении строки E и столбца T. Остальная часть исходного текста шифруется подобным способом.
Пример
Исходный текст: ATTACKATDAWN
Ключ: LEMONLEMONLE
Зашифрованный текст: LXFOPVEFRNHR

Дешифрования

Расшифрование производится следующим образом: находим в таблице Виженера строку, соответствующую первому символу ключевого слова; в данной строке находим первый символ зашифрованного текста. Столбец, в котором находится данный символ, соответствует первому символу исходного текста. Следующие символы зашифрованного текста расшифровываются подобным образом.

Шифр Вижинера, пример,Криптоанализ, Реализация

Из наблюдения за частотой совпадения следует:

Шифр Вижинера, пример,Криптоанализ, Реализация

Шифр Вижинера, пример,Криптоанализ, Реализация

Квадрат Виженера, или таблица Виженера, также известная как tabula recta, может быть использована для шифрования и расшифровывания.

Криптоанализ Шифра Виженера

Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Виженера «размывает» характеристики частот появления символов в тексте.

Шифр Виженера «размывает» характеристики частот появления символов в тексте, но некоторые особенности появления символов в тексте остаются. Главный недостаток шифра Виженера состоит в том, что его ключ повторяется. Поэтому простой криптоанализ шифра может быть построен в два этапа:

  1. Поиск длины ключа. Можно анализировать распределение частот в зашифрованном тексте с различным прореживанием. То есть брать текст, включающий каждую 2-ю букву зашифрованного текста, потом каждую 3-ю и т. д. Как только распределение частот букв будет сильно отличаться от равномерного (например, по энтропии), то можно говорить о найденной длине ключа.
  2. Криптоанализ. Совокупность l шифров Цезаря (где l — найденная длина ключа), которые по отдельности легко взламываются.

Тесты Фридмана и Касиски могут помочь определить длину ключа.

Тест Касиски и определение с его помощью длины ключа и Индекса совпадений

Чарльз Беббидж был первым, кто разработал алгоритм атаки на шифр Виженера в 1854 году. Стимулом к разработке алгоритма послужил обмен письмами с Джоном Х. Б. Твейтсом. Он заявил, что создал новый шифр, и отправил его в «Journal of the Society of the Arts»; когда Беббидж показал, что шифр Твейтса является лишь частным случаем шифра Виженера, Твейтс предложил ему его взломать. Беббидж расшифровал текст, который оказался поэмой «The Vision of Sin» Альфреда Теннисона, зашифрованной ключевым словом Emily — именем жены поэта. Но он не опубликовал свое открытие. Поэтому данный алгоритм назван в честь Фридриха Вильгельма Касиски, офицера прусской армии, который независимо от Беббиджа разработал такой же алгоритм в 1863 году. И только в XX веке, когда ученые исследовали заметки Беббиджа, появилась информация о первом изобретателе этого алгоритма.[12]

Вначале определим понятие индекса совпадения Шифр Вижинера, пример,Криптоанализ, Реализация данного текста. Пусть рассматривается текст Шифр Вижинера, пример,Криптоанализ, Реализация, соответствующий алфавиту, состоящему из Шифр Вижинера, пример,Криптоанализ, Реализация букв. Пусть Шифр Вижинера, пример,Криптоанализ, Реализация — длина этого текста. Обозначим через Шифр Вижинера, пример,Криптоанализ, Реализация число вхождений буквы с номером Шифр Вижинера, пример,Криптоанализ, Реализация в текст Шифр Вижинера, пример,Криптоанализ, Реализация. Тогда индекс совпадения текста Шифр Вижинера, пример,Криптоанализ, Реализация определяется как
Шифр Вижинера, пример,Криптоанализ, Реализация.
Эмпирически проверено, что индекс совпадения длинных осмысленных английских текстов, таких как «Моби Дик» Меллвила, приблизительно равен 0,065. При этом, конечно, в тексте оставляют только 26 букв английского алфавита. В то же время абсолютно случайный достаточно длинный текст на 26 буквах, в котором все буквы встречаются приблизительно одинаковое число раз, равен 0,038. Замечено, что чем «осмысленнее» текст, тем выше его индекс совпадения. Это обстоятельство как раз и помогает вычислять длину ключа в шифре Виженера.

Пусть Шифр Вижинера, пример,Криптоанализ, Реализация — исходный текст, в котором Шифр Вижинера, пример,Криптоанализ, Реализация — его Шифр Вижинера, пример,Криптоанализ, Реализация-я буква, а Шифр Вижинера, пример,Криптоанализ, Реализация — его шифровка по Виженеру. Если применяется обычный сдвиг, то есть длина ключа Шифр Вижинера, пример,Криптоанализ, Реализация, то должно выполняться равенство Шифр Вижинера, пример,Криптоанализ, Реализация, поскольку изменяются только номера букв, но не числа их вхождений. Так как Шифр Вижинера, пример,Криптоанализ, Реализация — осмысленный (по предположению) текст, то значение Шифр Вижинера, пример,Криптоанализ, Реализация, будет приблизительно равно стандартному значению Шифр Вижинера, пример,Криптоанализ, Реализация, для данного языка. Рассматривается пример обычного английского языка, поэтому Шифр Вижинера, пример,Криптоанализ, Реализация. Конечно, вряд ли шифр Виженера будет в общем случае получен ключом длины 1. Поэтому последовательно вычисляются следующие индексы совпадения:
Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Вижинера, пример,Криптоанализ, Реализация
Шифр Вижинера, пример,Криптоанализ, Реализация
до тех пор, пока не получится Шифр Вижинера, пример,Криптоанализ, Реализация.

Это может свидетельствовать о том, что длина ключа равна Шифр Вижинера, пример,Криптоанализ, Реализация, хотя и может оказаться ложным следом.

Действительно, если длина ключа равна Шифр Вижинера, пример,Криптоанализ, Реализация, то текст Шифр Вижинера, пример,Криптоанализ, Реализация будет получен из Шифр Вижинера, пример,Криптоанализ, Реализация сдвигом, следовательно, сохранит Шифр Вижинера, пример,Криптоанализ, Реализация, а текст Шифр Вижинера, пример,Криптоанализ, Реализация , в свою очередь, является случайной выборкой осмысленного текста, следовательно, должен сохранить его статистические характеристики, в частности индекс совпадения. Об этом говорит сайт https://intellect.icu . Если индекс совпадения некоторого языка неизвестен, то использование теста Касиски также возможно. Нужно не сравнивать полученные значения индексов совпадения со стандартным значением, а смотреть, когда этот индекс резко возрастет. Это может сигнализировать о найденной длине ключа. Конечно, речь идет о расшифровке осмысленных и одновременно достаточно длинных текстов. Впрочем, понятие осмысленности для формальных языков — понятие непростое.

Другим применением теста Касиски является проверка сохранения частот встречающихся букв при шифровании. Пусть Шифр Вижинера, пример,Криптоанализ, Реализация — зашифрованный текст, причем алгоритм шифрования неизвестен. Если известно, что использовался обычный английский алфавит и значение Шифр Вижинера, пример,Криптоанализ, Реализация близко к 0,065, то это дает основание полагать, что использовался шифр, сохраняющий частоты. Возможно, что это шифр простой замены. В ситуации, когда значение Шифр Вижинера, пример,Криптоанализ, Реализация далеко от 0,065, можно предположить, что использовался шифр, не сохраняющий частоты, или же текст был бессмысленным, или же использовался другой алфавит и т.п. Одним словом, что-то оказалось не так и необходим более глубокий анализ.

Однако вернемся к шифру Виженера. Пусть определили правильно длину ключа, равную Шифр Вижинера, пример,Криптоанализ, Реализация. Теперь нужно найти сам ключ.

Гистограмма, построенная по стандартным частотам букв в языке, имеет свои отличительные особенности. Они объясняются крайне неравномерным использованием букв в английском языке. Эта неравномерность как раз и позволяет эффективно применять частотный анализ.

Шифр Вижинера, пример,Криптоанализ, Реализация

Прежде всего, обращают на себя внимание «пики», соответствующие буквам A, E, H, I, N, O, R, S, T, и «пеньки», соответствующие J, Q, X, Z. При этом некоторые «пики» стоят рядом, даже есть целая тройка: R, S, T. Все вместе дает весьма специфический рельеф.

Если используется сдвиг на 4, то картина изменяется циклически:

Шифр Вижинера, пример,Криптоанализ, Реализация

Наблюдается циклический сдвиг рельефа на 4 единицы. Если не знать величину сдвига, то ее нетрудно восстановить, руководствуясь здравым смыслом.

Роторные машины[править | править код]

Можно усовершенствовать шифр Виженера, рассматривая в качестве повторяющегося ключа комбинацию произвольных замен: Шифр Вижинера, пример,Криптоанализ, Реализация. Это означает, что единицы исходного текста Шифр Вижинера, пример,Криптоанализ, Реализация преобразуются в Шифр Вижинера, пример,Криптоанализ, Реализация единицы Шифр Вижинера, пример,Криптоанализ, Реализация соответственно в Шифр Вижинера, пример,Криптоанализ, Реализация и т.д.

При взломе такого шифра, как и в случае шифра Виженера, вначале нужно определить длину ключа Шифр Вижинера, пример,Криптоанализ, Реализация. Это можно делать с использованием теста Касиски так же, как в описанном случае. Далее для определения подстановок Шифр Вижинера, пример,Криптоанализ, Реализация можно применить частотный анализ.

Частотный анализ

Как только длина ключа становится известной, зашифрованный текст можно записать во множество столбцов, каждый из которых соответствует одному символу ключа. Каждый столбец состоит из исходного текста, который зашифрован шифром Цезаря; ключ к шифру Цезаря является всего-навсего одним символом ключа для шифра Виженера, который используется в этом столбце. Используя методы, подобные методам взлома шифра Цезаря, можно расшифровать зашифрованный текст. Усовершенствование теста Касиски, известное как метод Кирхгофа, заключается в сравнении частоты появления символов в столбцах с частотой появления символов в исходном тексте для нахождения ключевого символа для этого столбца. Когда все символы ключа известны, криптоаналитик может легко расшифровать шифрованный текст, получив исходный текст. Метод Кирхгофа не применим, когда таблица Виженера скремблирована, вместо использования обычной алфавитной последовательности, хотя тест Касиски и тесты совпадения все еще могут использоваться для определения длины ключа для этого случая.

Упоминания в литературе

В 1881 году Жюль Верн написал роман Жангада. В данном романе автор использовал для зашифровки документа шифр Виженера. В качестве зашифрованного текста, автор использует следующий документ:

 Шифр Вижинера, пример,Криптоанализ, Реализация

По ходу истории герои находят фрагмент расшифрованного слова к этому документу: ОРТЕГА Герои догадались, что это имя может обозначать подпись в конце документа. Таким образом выходит:

 Шифр Вижинера, пример,Криптоанализ, Реализация

Следовательно, ключ — 432513. Зная ключ, можно легко перевести данный документ:

  Шифр Вижинера, пример,Криптоанализ, Реализация

Варианты Шифра Вижинера

Существует, конечно, много других легкозапоминающихся квадратов, которые могут применяться в качестве основы для многоалфавитной системы так же, как и квадрат Виженера. Одним из наиболее известных является квадрат Бофора. Его строками являются строки квадрата Виженера, записанные в обратном порядке. Он назван в честь адмирала сэра Френсиса Бофора — создателя шкалы для определения скорости ветра. Если в квадрате Виженера первая строка и столбец указывают на строки и столбцы соответственно, то в квадрате Бофора этим целям служат первая строка и последний столбец.[14]

Вариант running key (бегущий ключ) шифра Виженера когда-то был невзламываемым. Эта версия использует в качестве ключа блок текста, равный по длине исходному тексту. Так как ключ равен по длине сообщению, то методы, предложенные Фридманом и Касиски, не работают (так как ключ не повторяется). В 1920 году Фридман первым обнаружил недостатки этого варианта. Проблема с running key шифра Виженера состоит в том, что криптоаналитик имеет статистическую информацию о ключе (учитывая, что блок текста написан на известном языке) и эта информация будет отражаться в шифрованном тексте. Если ключ действительно случайный, его длина равна длине сообщения и он использовался единожды, то шифр Виженера теоретически будет невзламываемым, фактически этот вариант будет уже шифром Вернама-Виженера, для которого доказана абсолютная криптостойкость.

Несмотря на очевидную стойкость шифра Виженера, он широко не использовался в Европе. Большее распространение получил шифр Гронсфельда, созданный графом Гронсфельдом, идентичный шифру Виженера, за исключением того, что он использовал только 10 различных алфавитов (соответствующих цифрам от 0 до 9). Преимущество шифра Гронсфельда состоит в том, что в качестве ключа используется не слово, а цифровая последовательность, которая повторяется до тех пор, пока не станет равной длине шифруемого сообщения. Шифр Гронсфельда широко использовался по всей Германии и Европе, несмотря на его недостатки.

Реализация Шифра Вижинера

JavaScript

Вау!! 😲 Ты еще не читал? Это зря!

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

создано: 2016-09-19
обновлено: 2024-11-11
373



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Информационная безопасность, Шифры в криптографии

Термины: Информационная безопасность, Шифры в криптографии