Простая перестановка
В шифре простой перестановки сообщение сначала вписывается в таблицу, обычно прямоугольную, которую горизонтальные и вертикальные линии делят на клетки. Число вертикальных линий задается числовым или буквенным ключом; число горизонтальных линий может быть фиксировано, а может задаваться длиной сообщения. Если число строк фиксировано, то сообщение разбивается на участки подходящей длины, равной емкости таблицы. Сообщение вписывается в таблицу построчно, начиная с верхней строки, а шифрованный текст выписывается из таблицы по столбцам, причем порядок выписки столбцов задается ключом. В результате сами буквы сообщения не изменяются, но передаются в другом порядке. Этот метод шифрования очень прост, как показывает следующий пример.
Пример 4.1
Зашифровать сообщение
MEETING WILL BE ON FRIDAY AT ELEVEN THIRTY
с помощью шифра перестановки с ключом длины 5 вида: 3-1-5-2-4.
Зашифрование
Опуская пробелы между словами, получим текст из 35 букв. Поскольку длина ключа равна 5, нам понадобится таблица из 5 столбцов и 7 строк.
Таблица 4.1
Ключ | 3 | 1 | 5 | 2 | 4 |
| M | E | E | T | I |
| N | G | W | I | L |
| L | B | E | O | N |
| F | R | I | D | A |
| Y | A | T | E | L |
| E | V | E | N | T |
| H | I | R | T | Y |
Итак, выпишем ключ, а под ним нарисуем таблицу для записи текста из 5 столбцов и 7 строк. Впишем сообщение в таблицу построчно, начиная с верхней строки и опуская при этом пробелы между словами (см. таблицу 4.1). Наконец, выписывая текст из таблицы по столбцам в порядке, заданном ключом, получим шифрованный текст, который запишем в виде серии 5-значных групп:
EGBRA VITIO DENTM NLFYE HILNA LTYEW EITER.
Вот такой текст увидят и получатель, и криптоаналитик. Как будет его расшифровывать получатель, и как может криптоаналитик попытаться его дешифровать?
Расшифрование
Получатель вписывает шифрованный текст в столбцы перестановочной таблицы; порядок столбцов задается ключом перестановки. Затем он читает сообщение в строках таблицы, начиная сверху.
Метод дешифрования
Каким бы простым ни был шифр перестановки, может оказаться, что вскрыть его вовсе не так просто. Подсчет частот встречаемости отдельных букв ("монографов") показывает, что они не изменились, но частоты пар букв ("диграфов"), таких как TH, HE и QU, будут отличны от ожидаемой частоты их встречаемости в английском тексте. По этой причине криптоаналитик заподозрит использование шифра перестановки. При попытке дешифрования такой системы его первая задача - определить длину ключа.
Поскольку длина вышеприведенного сообщения составляет 35 букв, получается 7 полных групп по пять букв в каждой. Криптоаналитик не знает, была ли длина исходного сообщения равна 35, или же оно было дополнено буквами-"пустышками" для получения полных пятизначных групп шифрованного текста. Однако в любом из этих случаев это является возможной подсказкой относительно длины ключа. Так как 35=57, то стоит проанализировать шифрованный текст в предположении, что длина ключа равна 5 или 7. Криптоаналитик предполагает, что перестановочная таблица имеет "правильную" форму, то есть, что все столбцы имеют одинаковую длину - это может быть и неверно, но начать с этого было бы логично.
Предположим, что ключ действительно имеет длину 5. Тогда две буквы, стоящие рядом в исходном сообщении, в шифрованном тексте будут отстоять друг от друга на 7, 14, 21 или 28 позиций, если только одна из них не находится в конце одной строки, а другая - в начале следующей строки. Поэтому криптоаналитик вписывает шифрованный текст в 5 столбцов по 7 букв. Если записать текст таким образом, велика вероятность того, что буквы, стоящие рядом в открытом тексте, окажутся в одной строке. Записанный таким образом шифрованный текст примет вид, показанный в таблице 4.2.
Таблица 4.2
E | T | M | I | E |
G | I | N | L | W |
B | O | L | N | E |
R | D | F | A | I |
A | E | Y | L | T |
V | N | E | T | E |
I | T | H | Y | R |
Следующий шаг - проанализировать различные пары букв в каждой строке, чтобы определить среди них наиболее вероятные диграфы. В этом деле серьезным подспорьем оказывается наличие таблицы частот встречаемости диграфов английского языка. Такие таблицы можно найти в своде, опубликованном Университетом имени Брауна (см. [2.2]), и в различных книгах по криптографии. Например, мы находим, что в первой строке вышеприведенной таблицы 4.2 пары ME, TI и ET более употребительны, чем другие. Такой анализ нужно провести по каждой строке и отметить связанные между собой факты. Так, если в первой строке буква T на самом деле стоит перед буквой I, то столбец 2 должен стоять слева от столбца 4. Выполняя это упражнение для каждой строки, криптоаналитик надеется найти подтверждение своим предположениям и, таким образом, восстановить перестановочную таблицу и получить исходный текст. Не каждая связь будет правильной, некоторые будут противоречить друг другу; но есть надежда, что будет найдено достаточное число истинных связей, чтобы отсеять ложные. Доказательством тому является таблица 4.3.
Таблица 4.3
Строка | Диграфы | Предположительно смежные столбцы |
1 | ME,TI,ET | 3-1 или 3-5, 2-4, 1-2 или 5-2 |
2 | IN,WI,NG | 2-3, 5-2,3-1 |
3 | BE,ON,LE | 1-5, 2-4, 3-5 |
4 | RI,DA,ID | 1-5, 2-4, 5-2 |
5 | AT,ET,EA | 1-5, 2-5, 2-1 |
6 | VE,NT | 1-3 или 1-5, 2-4 |
7 | IT,TH,HI | 1-2, 2-3, 3-1 |
Хотя в таблице есть некоторые противоречия, некоторые связи между столбцами возникают достаточно часто, чтобы заслужить дальнейшего рассмотрения. К таким относятся пары столбцов:
1-5, 2-4, 3-1 и 5-2.
Если теперь мы упорядочим столбцы шифрованного текста, как подсказывают эти пары, начиная с третьего столбца (нам придется опробовать и другие столбцы в качестве начального), мы увидим, что шифрованный текст следует перегруппировать так, что столбцы шифрованного текста
3-1-5-2-4
станут столбцами
1-2-3-4-5
открытого текста, а первая строка шифрованного текста
E T M I E
становится строкой открытого текста
M E E T I.
Аналогично, вторая строка шифрованного текста
G I N L W
превращается в
N G W I L,
и получение оставшейся части сообщения подтверждает правильность дешифрования.
Мы привели очень простой пример: ключ был короткий, его длина была очевидна и найдена с первой попытки. Однако это хорошая иллюстрация метода вскрытия. Этим примером мы также показали, что наличие таблицы частот диграфов, хотя и не является непременным условием, но способно значительно облегчить решение задачи. Если бы длина шифрованного текста не была кратна 5, то для длины ключа возможное равенство 5 (или 7, как в данном случае) не так бросалось бы в глаза, и пришлось бы перебирать и другие значения длины ключа. Для ключей, имеющих длину не больше 5, возможно даже применение метода "грубой силы", так как число возможных перестановок столбцов весьма невелико (всего 120 для длины ключа 5). Если длина ключа превышает число 5, то использование метода полного перебора становится весьма трудоемким, и вручную практически невыполнимо, тогда как описанный выше "метод диграфов" можно реализовать для любой длины ключа, которая может встретиться на практике. Зная все это, криптограф попытается как можно тщательнее замаскировать длину ключа. Он может также прибегнуть и к другим мерам, таким как
- Глава 1. Введение 10
- Глава 9. Шифрмашина "Энигма" 130
- Глава 10. Шифрмашина "Хагелин" 152
- Глава 11. После "Энигмы" 172
- Глава 12. Криптография с открытым ключом 179
- Глава 13. Шифрование и Интернет 188
- Предисловие
- Глава 1. Введение Некоторые аспекты безопасности связи
- Шифр Юлия Цезаря
- Несколько основных определений
- Три этапа дешифрования: идентификация, взлом системы и вскрытие ключей.
- Коды и шифры
- Оценка стойкости системы шифрования
- Коды, обнаруживающие и исправляющие ошибки
- Другие методы сокрытия содержания сообщений
- Модульная арифметика
- Модульное сложение и вычитание букв
- Заключение
- Глава 2. От Юлия Цезаря до простой замены Шифры Юлия Цезаря и их вскрытие
- Шифры простой замены
- Вскрытие шифра простой замены
- Частоты встречаемости букв в других языках, кроме английского
- Сколько знаков необходимо для дешифрования простой замены?
- Глава 3. Многоалфавитные системы Усиление системы Юлия Цезаря: шифры Вижанэра
- Вскрытие шифра Вижанэра
- Индикаторы
- Одноключевые сообщения
- Распознавание одноключевых сообщений
- Какой объем текста необходим для дешифрования шифра Вижанэра?
- Цилиндр Джефферсона
- Глава 4. Шифры-головоломки
- Перестановки
- Простая перестановка
- Двойная перестановка
- Другие виды перестановок
- Регулярные перестановочные таблицы
- Нерегулярные перестановочные таблицы
- Оценка стойкости шифров перестановки
- Общая концепция двойного шифрования
- Глава 5. Двухбуквенные шифры
- Замена "монограф-диграф"
- Мдпм-шифры
- Система "диграф-диграф"
- Шифр Плейфера*)
- Расшифрование в системе Плейфера
- Криптоаналитические аспекты системы Плейфера
- Двойной шифр Плейфера
- Глава 6. Коды Характеристики кодов
- Одночастевые и двухчастевые коды
- Код плюс аддитивное шифрование
- Глава 7. Шифры для шпионов
- Шифры-решетки
- Книжные шифры
- Использование книжного шифра
- Частоты встречаемости букв в книжных шифрах
- Вскрытие книжного шифра
- Индикаторы
- Катастрофические ошибки при использовании книжного шифра
- Шифры "агента Гарбо"
- Первый шифр "агента Гарбо"
- Второй шифр "агента Гарбо"
- Одноразовый блокнот
- Глава 8. Получение случайных чисел и букв Случайные последовательности
- Получение случайных последовательностей
- Бросание монеты
- Бросание костей
- Извлечение из урны (по типу лотереи)
- Космические лучи
- Шум от усилителей
- Псевдослучайные последовательности
- Линейные рекурренты
- Использование последовательности двоичных знаков гаммы для шифрования
- Двоичные линейные последовательности как генераторы гаммы
- Криптоанализ линейной рекурренты
- Повышение стойкости двоичной гаммы
- Генераторы псевдослучайных чисел
- Метод срединных квадратов
- Линейные конгруэнтные генераторы
- Глава 9. Шифрмашина "Энигма" Историческая справка
- Первая "Энигма"
- Шифрование с использованием контактных колес
- Шифрование в "Энигме"
- Коммутатор "Энигмы"
- Ахиллесова пята "Энигмы"
- Цепочки индикаторов в "Энигме"
- Выравнивание цепочек
- Идентификация колеса r1 и его угловой установки
- Двойное шифрование в "Энигме"
- "Энигма" Абвера
- Глава 10. Шифрмашина "Хагелин" Историческая справка
- Конструкция шифрмашины «Хагелин»
- Шифрование при помощи шифрмашины "Хагелин"
- Выбор установок барабана в шифрмашине "Хагелин"
- Теоретический объем перебора для шифрмашины "Хагелин"
- Вскрытие установок "Хагелина" по отрезку гаммы
- Дополнительные возможности шифрмашины "Хагелин"
- Смещение
- Определение смещения по шифрованному тексту
- Перекрытия
- Вскрытие шифрмашины "Хагелин" только по шифрованному тексту
- Глава 11. После "Энигмы" sz42 - предтеча электронных машин
- Описание шифрмашины sz42
- Шифрование в машине sz42
- Вскрытие шифрмашины sz42 и определение ее угловых установок
- Модификации шифрмашины sz42
- Глава 12. Криптография с открытым ключом Историческая справка
- Вопросы безопасности
- Защита программ и данных
- Шифрование программ, данных и сообщений
- Задача распределения ключей
- Система ключевого обмена Диффи-Хеллмана
- Стойкость системы Диффи-Хеллмана
- Глава 13. Шифрование и Интернет Обобщение шифра простой замены
- Факторизация больших целых чисел
- Стандартный метод факторизации
- Малая теорема Ферма
- Теорема Ферма-Эйлера (для случая системы rsa)
- Ключи зашифрования и расшифрования в системе rsa
- Процессы зашифрования и расшифрования в системе rsa
- Каким образом хозяин ключей отвечает корреспондентам?
- Американский Стандарт Шифрования Данных (des)*)
- Общие сведения
- Процедура зашифрования
- Процедура расшифрования
- Стойкость des-алгоритма
- Зацепление
- Реализации des-алгоритма
- Совместное использование алгоритмов rsa и des
- Полезное замечание
- После des-алгоритма
- Проверка подлинности сообщения и удостоверение подлинности подписи
- Криптография эллиптической кривой
- Приложение. Математические вопросы Глава 2 м1. Совпадения знаков в алфавитах замены
- М2. Снижение стойкости при использовании взаимно-обратных алфавитов
- M3. Парадокс дней рождения
- Глава 3 м4. Евклидово доказательство бесконечности множества простых чисел
- Глава 6 м5. Последовательность чисел Фибоначчи
- Глава 7 м6. Частота встречаемости букв для книжного шифра
- М7. Одноразовый блокнот дешифровать невозможно
- Глава 8 м8. Частота появления случайных чисел на странице
- М9. Комбинирование двух последовательностей двоичных знаков гаммы, имеющих отклонения
- М10. Последовательность типа Фибоначчи
- М11. Двоичные линейные рекурренты
- M12. Восстановление двоичной линейной рекурренты по отрезку гаммы
- М13. Получение псевдослучайных чисел
- Глава 9 м14. Распайка колёс шифрмашины "Энигма"
- М15. Число возможных отражателей шифрмашины "Энигма"
- М16. Вероятность одноключевых сообщений для "Энигмы"
- М17. Среднее число индикаторов, необходимое для построения полных цепочек
- Глава 10 м18. Число возможных барабанов шифрмашины "Хагелин"
- М19. Максимальная кратность значения зацепления, которая может встретиться при вычислении разности гаммы шифрмашины "Хагелин"
- M20. Определение смещения шифрмашины "Хагелин" с помощью коэффициента корреляции
- Глава 13 m21. (Порядок роста количества простых чисел)
- M22. Вычисление остатка с использованием модульной арифметики
- М23. Доказательство теоремы Ферма-Эйлера
- М24. Нахождение чисел, "предположительно" являющихся простыми
- M25. Алгоритм Евклида
- М26. Эффективность возведения в степень методом последовательного возведения в квадрат
- М27. Число ложных ответов при дешифровании des-алгоритма методом "встречного поиска "
- М28. Криптография эллиптической кривой
- Решения задач Глава 2
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- Глава 7
- Глава 8
- Глава 9
- Глава 10
- Глава 11
- Глава 13
- Литература
- Глава 1
- Глава 2
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- Глава 7
- Глава 8
- Глава 9
- Глава 10
- Глава 11
- Глава 12
- Глава 13