154

История криптографии: от стеганографии до сложных алгоритмов. Часть 3

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

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

Из прошлой части мы выяснили, что полиалфавитный шифр – это последовательность многих моноалфавитных шифров. И одним из наиболее известных полиалфавитов является шифр Виженера. В нём для зашифровывания текста используется какое-либо слово (фраза, текст), и стойкость итогового сообщения зависит исключительно от длины ключа. Приведём пример использования этого шифра:

В качестве примера возьмём кодовое слово – КАРТА, а текст:


Был яркий холодный апрельский день.


Первым делом необходимо убрать все пунктуационные знаки и пробелы в предложении, после удаления должен получиться такой текст:


Быляркийхолодныйапрельскийдень


После, к каждой букве текста мы сопоставляем каждую букву нашего ключа:

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост
Проверка описания

Сам шифротекст мы получаем путём поочерёдной замены каждой буквы в тексте. Буква «К» является двенадцатой по счёту в алфавите, и под ней находящаяся буква «Б» является второй буквой по счёту. Зашифрованный символ – номер буквы их суммы (12+2=14, буква «М» – четырнадцатая по счёту).

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

И после всех действий из данного текста мы получаем полностью нечитабельный текст, который к тому же не поддаётся привычному частотному анализу и не очень лёгок во взломе.

Для удобства можно использовать квадрат Виженера, где показаны все варианты смещения.

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

К сожалению, такой способ оказался не очень удобным для криптографов, несмотря на поразительную стойкость для того времени, ведь главный недостаток такого способа – это критично медленная скорость шифровки и дешифровки сообщений.


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


Для военной связи требовались скорость и простота, а в дипломатических учреждениях ежедневно отправляли и получали сотни сообщений, поэтому время имело существенное значение.


Омофонический шифр

Именно этот шифр и стал тем компромиссом между стойкостью и простотой. Основной идеей омофонического шифра было использование нескольких символов (цифр, иероглифов) для одной буквы, чтобы не допустить нахождения самого частовстречающегося символа и проведения дальнейшего анализа текста. К примеру частота появлений буквы «О» в русском тексте составляется 9-11%, а это значит, что для этой буквы будет около 9-11 разных символов.

В итогом сообщении, нам необходимо добиться равного распределения всех символов, чтобы они имели одинаковую частоту появлений в тексте (примерно 1-2%)

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

Вариант использования омофонического шифра:

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

125 (А) 336 (Н) 854 (А) 905 (Н) 981 (А) 291 (С)

Каждый раз, когда начинает повторяться буква, необходимо брать следующее значение из таблицы. После всех преобразований получился набор чисел, который не имеет одинаковых значений:

125 336 854 905 981 291

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

Криптоанализ

Однако, если этот шифр и скрывает частоту появлений букв, то он не скрывает особенности языка. Каждая буква в тексте связана определённым образом с другими буквами, например в английском языке после «Q» всегда идёт «U» (кроме названий объектов, имён и т.д.), и по такой цепочке можно постепенно начать расшифровывать весь текст.


Хотя омофонический шифр можно взломать, но он гораздо более надежен, чем простой одноалфавитный шифр.


Исторический пример

История криптографии: от стеганографии до сложных алгоритмов. Часть 3 Шифр, Криптография, Длиннопост

Антуан и Бонавентур Россиньоли – выдающиеся французские криптографы, служившие Людовику XIII и Людовику XIV, и авторы «Великого шифра» – одного из самых сложных для дешифровки и криптоанализа шифра, со множеством "ловушек". «Великий шифр» использовался исключительно для передачи самых секретных сообщений, планов, замыслов и многих других политических деталей.


К сожалению, после смерти авторов, такой шифр перестал использоваться, так как все сведения для расшифровки были утеряны, но его надёжность и стойкость смогла противостоять усилиям всех криптографов и криптоаналитиков ещё два столетия. За основу шифра Антуан и Бонавентур взяли омофонический шифр, но вместо 10-20 вариантов, Россиньоли использовали тысячи чисел, многие из которых были "ловушками" или пустышками. Только 587 чисел были уникальными и несли какую-либо информацию.


Однако абсолютная устойчивость не могла сохраняться долгое время, и уже в конце XIX века, выдающемуся французскому криптографу Этьену Базери за три года удалось взломать и прочесть содержимое «Великого шифра». Кроме этого, ему удалось узнать реальную историю человека в железной маске, настолько скрытую тайну, которая завораживала многих людей и вдохновляла поэтов, таких как Гюго и Дюма. И легенда, к которой было снято множество фильмов.

Источник

Найдены дубликаты

+7

Какова же реальная история человека в железной маске?

раскрыть ветку 1
+6

он участвовал в бдсм вечеринке но забыл стоп слово

+1

Юному шифровальщику

Иллюстрация к комментарию
раскрыть ветку 2
0

Неоднозначный «шифр»: З и Е одинаковые.

Хотя выглядит симпатично.

раскрыть ветку 1
0

Ну я заметил потом, но начертание здесь выручает.

+1

Вижинер легко ломается, частотным анализом и далее атакой Касиски.

+1

А про шифр Вернама будет?

0
О, фоточка Лео, мило
0
Забегая немного вперел - RCA вскрыли уже? Пару лет назад алгоритм считался невскрываемым
раскрыть ветку 5
+1

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

раскрыть ветку 1
+2
Имеешь ввиду алгоритм Шора?
+1
Если ты про RSA то нет
раскрыть ветку 1
0
Упс.. Конечно же про него
0

Пока нет, RSA считается надежным с длиной ключа более 1024 бит.

Похожие посты