Биграммный шифр Плейфейра
Шифр Плейфейра, изобретенный в 1854 г., является наиболее известным биграммным шифром замены. Он применялся Великобританией во время первой мировой войны. Основой шифра Плейфейра является шифрующая таблица со случайно расположенными буквами алфавита исходных сообщений.
Для удобства запоминания шифрующей таблицы отправителем и получателем сообщений можно использовать ключевое слово (или фразу) при заполнении начальных строк таблицы. В целом структура шифрующей таблицы системы Плейфейра полностью аналогична структуре шифрующей таблицы Трисемуса. Поэтому для пояснения процедур шифрования и расшифрования в системе Плейфейра воспользуемся шифрующей таблицей Трисемуса.
Процедура шифрования включает следующие шаги.
1. Открытый текст исходного сообщения разбивается на пары букв (биграммы). Текст должен иметь четное количество букв и в нем не должно быть биграмм, содержащих две одинаковые буквы. Если эти требования не выполнены, то текст модифицируется даже из-за незначительных орфографических ошибок.
2. Последовательность биграмм открытого текста преобразуется с помощью шифрующей таблицы в последовательность биграмм шифртекста по следующим правилам:
2.1. Если обе буквы биграммы открытого текста не попадают на одну строку или столбец (как, например, буквы А и Й в предыдущей таблице), тогда находят буквы в углах прямоугольника, определяемого данной парой букв. (В нашем примере это - буквы АЙОВ. Пара букв АЙ отображается в пару ОВ. Последовательность букв в биграмме шифртекста должна быть зеркально расположенной по отношению к последовательности букв в биграмме открытого текста.).
2.2. Если обе буквы биграммы открытого текста принадлежат одному столбцу таблицы, то буквами шифртекста считаются буквы, которые лежат под ними. (Например, биграмма НС дает биграмму шифртекста ГЩ.) Если при этом буква открытого текста находится в нижней строке, то для шифртекста берется соответствующая буква из верхней строки того же столбца. (Например, биграмма ВШ дает битрамму шифртекста ПА.)
2.3. Если обе буквы биграммы открытого текста принадлежат одной строке таблицы, то буквами шифртекста считаются буквы, которые лежат справа от них. (Например, биграмме НО дает биграмму шифртекста ДЛ.) Если при этом буква открытого текста находится в крайнем правом столбце, то для шифра берут соответствующую букву из левого столбца той же строке. (Например, биграмма ФЦ дает биграмму шифртекста ХМ.) Зашифруем текст
ВСЕ ТАЙНОЕ СТАНЕТ ЯВНЫМ
Разбиение этого текста на биграммы дает
ВС ЕТ АЙ НО ЕС ТА НЕ ТЯ ВН ЫМ
Данная последовательность биграмм открытого текста преобразуется с помощью шифрующей таблицы в следующую последовательность биграмм шифртекста
ГП ДУ ОВ ДЛ НУ ПД ДР ЦЫ ГА ЧТ
При расшифровании применяется обратный порядок действий.
Следует отметить, что шифрование биграммами резко повышает стойкость шифров к вскрытию. Хотя книга И.Трисемуса "Полиграфия" была относительно доступной, описанные в ней идеи получили признание лишь спустя три столетия. По всей вероятности, это было обусловлено плохой осведомленностью криптографов о работах богослова и библиофила Трисемуса в области криптографии.
Система омофонов
Система омофонов обеспечивает простейшую защиту от криптоаналитических атак, основанных на подсчете частот появления букв в шифртексте. Система омофонов является одноалфавитной, хотя при этом буквы походного сообщения имеют несколько замен. Число замен берется пропорциональным вероятности появления буквы в открытом тексте.
Данные о распределениях вероятностей букв в русском тексте приведены в таблице. Буквы в таблицах указаны в порядке убывания вероятности их появления в тексте. Например, русская буква Е встречается в 36 раз чаще, чем буква Ф, а английская буква Е встречается в 123 раза чаще, чем буква Z.
Шифруя букву исходного сообщения, выбирают случайным образом одну из ее замен. Замены (часто называемые омофонами) могут быть представлены трехразрядными числами от 000 до 999. Например, в английском алфавите букве Е присваиваются 123 случайных номера, буквам В и G - по 16 номеров, а буквам J и Z - по 1 номеру. Если омофоны (замены) присваиваются случайным образом различные появления одной и той же буквы, тогда каждый омофон появляется в щифртексте равномерно.
При таком подходе к формированию шифртекста простой подмчет частот уже ничего не дает криптоаналитику. Однако в принципе полезна также информация о распределении пар и троек букв в в различных естественных языках . Если эту информацию использовать при криптоанализе, он будет проведен более успешно.
Распределение вероятностей букв в русских текстах
Буква | Вероятн. | Буква | Вероятн | Буква | Вероятность | Буква | Вероятность |
Пробел | 0,175 | Р | 0,040 | Я | 0,018 | X | 0.009 |
О | о;оэо | В | 0,038 | Ы | 0.016 | Ж | 0,007 |
Е | 0,072 | Л | 0,035 | 0,016 | Ю | 0.006 | |
А | 0,062 | К | 0,028 | Ъ | 0,014 | Ш | 0,006 |
И | 0,062 | М | 0,026 | Б | 0,014 | Ц | 0.004 |
Н | 0,053 | Д | 0,025 | Г | 0,013 | Щ | 0,003 |
Т | 0,053 | П | 0,023 | Ч | 0,012 | Э | 0,003 |
С | 0,045 | У | 0,021 | Й | 0,010 | Ф | 0,002 |
ШИФРЫ СЛОЖНОЙ ЗАМЕНЫ
Шифры сложной замены называют многоалфавитными, так как для шифрования каждого символа исходного сообщения применяют свой шифр простой замены. Многоалфавитная подстановка последовательно и циклически меняет используемые алфавиты.
При r-алфавитной подстановке символ хо исходного сообщения заменяется символом уо из алфавита Во, символ x1 -символом y1 из алфавита B1, и так далее, символ Хг-1 заменяется символом ум из алфавита Вг-1, символ хг заменяется символом уг снова из алфавита Во, и т.д.
Общая схема многоалфавитной подстановки для случая г = 4 показана на рис. 5.7
Входной символ | X0 | X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 |
Алфавит подстановки | B0 | B1 | B2 | B3 | B0 | B1 | B2 | B3 | B0 | B1 |
Схема г-алфавитной подстановки для случая г = 4
Эффект использования многоалфавитной подстановки заключается в том, что обеспечивается маскировка естественной статистики исходного языка, так как конкретный символ из исходного алфавита А может быть поеобразован в несколько различных символов шифровальных алфавитов Вj. Степень обеспечиваемой защиты теоретически пропорциональна длине периода г в последовательности используемых алфавитов В.
Многоалфавитные шифры замены предложил и ввел в практику криптографии Леон Батист Альберти, который также был известным архитектором и теоретиком искусства. Его книга "Трактат о шифре", написанная в 1566 г., представляла собой первый в Европе научный труд по криптологии. Кроме шифра многоалфавитной замены, Альберти также подробно описал устройства из вращающихся колес для его реализации. Криптологи всего мира почитают Л.Альберти основоположником криптологии.
Шифр Гронсфельда
Этот шифр сложной замены, называемый шифром Гронсфельда, представляет собой модификацию шифра Цезаря числовым ключом. Для этого под буквами исходного сообщения записывают цифры числового ключа. Если ключ короче сообщения, то его запись циклически повторяют. Шифртекст получают примерно, как в шифре Цезаря, но отсчитывают по алфавиту не третью букву (как это делается в шифре Цезаря), а выбирают ту букву, которая смещена по алфавиту на соответствующую цифру ключа. Например, применяя в качестве ключа группу из четырех начальных цифр числа е (основания натуральных логарифмов), а именно 2718, получаем для исходного сообщения ВОСТОЧНЫЙ ЭКСПРЕСС следующий шифртекст:
Сообщение | В | О | С | Т | О | Ч | Н | Ы | Й | Э | К | С | П | Р | Е | С | С | |
Ключ | ||||||||||||||||||
Шифртекст | Д | Х | Т | Ь | Р | Ю | О | Г | Л | Д | Л | Щ | С | Ч | Ж | Щ | У |
Чтобы зашифровать первую букву сообщения В, используя первую цифру ключа 2 , нужно отсчитать вторую по порядку букву от В в алфавите В-Г-Д; получается первая буква шифр текста Д.
Следует отметить, что шифр Гронсфельда вскрывается относительно легко, если учесть, что в числовом ключе каждая цифра имеет только десять значений, а значит, имеется лишь десять вариантов прочтения каждой буквы шифртекста. С другой стороны, шифр Гронсфельда допускает дальнейшие модификации, улучшающие его стойкость, в частности двойное шифрование разными числовыми ключами.