Шифрование методом «Перевернутые пары»
Цель работы
Изучить различные способы шифрования и дешифрования текстовых данных.
Общее задание
Написать программу, осуществляющую шифрование и, затем, дешифрование текстовых данных. Для проверки работоспособности программ необходимо предоставить не менее 3-х контрольных примеров.
Требования к выполнению
Ввод текстовых данных должен осуществляться с клавиатуры. Результат работы программы отображается на экране. Процедуре дешифрования обязательно предшествует процедура шифрования. Обе вышеуказанные процедуры реализуются в одной программе. Перед началом выполнения программы на экран выводится следующая информация о студенте и его работе: ФИО, группа, название и номер лабораторной работы, номер варианта и задание по варианту.
Краткие теоретические сведения
Определение. Шифрование - преобразование текста с целью скрыть его содержание от несанкционированного прочтения.
Далее, рассмотрим описания различных способов шифрования.
Древние шифры
Шифр Юлия Цезаря
Самым простым из рассматриваемых шифров является шифр Цезаря. В шифре, которым пользовался сам Юлий Цезарь, каждая буква шифровки заменялась четвертой по счету от нее в алфавите: A®B®C®D. То есть, символ ‘A’ заменялся символом ‘D’.
Несмотря на то, что Юлий Цезарь всегда использовал в своем шифровании сдвиг на 3 буквы вправо, применяя данный способ шифрования в своей практике можно варьировать значение сдвига в большую и меньшую сторону. Обозначив размер смещения символом d, исходный символ как a, а зашифрованный как a’ получим формулу:
(1)
Для значений смещения d больших размерности алфавита необходимо осуществлять циклический переход на начало алфавита и дальнейшее смещение по алфавиту. Поэтому формула (1) примет вид:
a) для английского алфавита: (2)
b) для русского алфавита: (3)
Пример. Послание сенату VENI VIDI VICI, что в переводе на русский язык означает – ПРИШЕЛ УВИДЕЛ ПОБЕДИЛ, сделанное Цезарем после однодневной войны с понтийским царем Фарнаком, со значением смещения d=3, будет выглядеть шифровкой – SBKF SFAF SFZF.
Пример.Зашифруем известное изречение PER ASPERA AD ASTRA (Через тернии к звездам) со значением смещения d = 28. Получим результат: RGT CURGTC CF CUVTC.
Шифр скитала
Более древний шифр связан с перестановкой букв сообщения по определенному, известному только отправителю и получателю, правилу. Первое шифровальное устройство использовали спартанцы по крайней мере с IV в. до н.э. У отправителя и получателя была палка одного диаметра – скитал. Послание, написанное на длинной полоске кожи или папируса, выглядело как бессмысленный набор букв []. Для прочтения шифровки нужно не только знать систему засекречивания, но и обладать ключом в виде палочки нужного диаметра. Читали слева направо или сверху вниз.
Пример. Сообщение ЗАВТРА ВЫСТУПАЙТЕ, при окружности палочки в 3 буквы, даст шифровку – ЗТ СПТАРВТАЕВАЫУЙ (Рисунок 1).
Рисунок 1. Схема шифра Скитала
Полибианский квадрат
Полибианский квадрат – одна из первых систем шифрования, в которой использовалась таблица.
При использовании данного шифра составляется таблица, которая, например, для английского алфавита состоит из пяти столбцов по пять строк в каждом. В каждую клетку этой таблицы в произвольном порядке вписывается одна из букв алфавита [Адаменко]. Следует отметить, что порядок заполнения может и отличаться от произвольного и быть алфавитным (как на Рисунке 2).
Для шифрования на квадрате находили букву текста и вставляли в шифровку нижнюю от нее в том же столбце. Если буква была нижней в строке, то брали верхнюю букву из того же столбца.
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Рисунок 2. Полибианский квадрат
Для русского алфавита, содержащего большее количество букв, шифровальная таблица должна содержать не менее 30 клеток [Адаменко], если исключить буквы ‘Й’, ‘Ъ’, ‘Ё’. В такой ситуации размерность таблицы может быть 6х5, 5х6
Пример.Зашифруем с помощью данного полибианского квадрата знаменитый афоризм на латыни ERRARE HUMANUM EST – Человеку свойственно ошибаться. В процессе шифрования буква ‘E’ заменяется на ‘J’, ‘R’ заменяется на ‘W’, ‘A’ на ‘F’, ‘U’ на ‘A’ и т.д. В конечном итоге будет получено следующее зашифрованное сообщение – JWWFWJ MARFSAR JXY.
Шифры эпохи Возрождения
В ручных шифрах того времени часто используются таблицы, которые дают простые шифрующие процедуры перестановки букв в сообщении. Ключом в них служат размер таблицы, фраза, задающая перестановку или специальная особенность таблиц.
Простая перестановка
Одним из шифров, основанных на перестановке строк и столбцов в таблице с открытым текстом, является шифр простой перестановки. Создание криптограммы при использовании данного шифра следует начать с составления таблицы, в ячейки которой необходимо вписать по строкам буквы открытого текста. Количество строк и столбцов в такой шифровальной таблице выбирается произвольно. После заполнения таблицы буквы в криптограмму выписываются по столбцам, сначала из первого столбца, затем из второго и так далее. [Адаменко]
Пример. Шифруется сообщение НЕЯСНОЕ СТАНОВИТСЯ ЕЩЕ БОЛЕЕ НЕПОНЯТНЫМ. Записываем его в таблицу по столбцам. Для таблицы из 5 строк и 7 столбцов (Рисунок 3.).
Н | О | Н | С | Б | Н | Я |
Е | Е | О | Я | О | Е | Т |
Я | С | В | Е | Л | П | Н |
С | Т | И | Щ | Е | О | Ы |
Н | А | Т | Е | Е | Н | М |
Рисунок 3. Перестановочная таблица
После того, как открытый текст записан колонками, для образования шифровки он считывается по строкам. Если его записывать группами по 5 букв, то получится: НОНСБ НЯЕЕО ЯОЕТЯ СВЕЛП НСТИЩ ЕОЫНА ТЕЕНМ. Если записать эту криптограмму без пробелов, то она примет следующий вид: НОНСБНЯЕЕОЯОЕТЯСВЕЛПНСТИЩЕОЫНАТЕЕНМ.
Для использования этого шифра отправителю и получателю нужно договориться об общем ключе в виде размера таблицы.
Одиночная перестановка
Более практический метод шифрования, называемый одиночной перестановкой по ключу, очень похож на предыдущий. Он отличается лишь тем, что колонки таблицы переставляются по ключевому слову, фразе, или набору чисел длиной в строку таблицы.
Пример. Использовав для предыдущего примера в качестве ключа слово ЛУНАТИК, получим таблицу (См. Рисунок 4.).
В верхней строке ее записан ключ, а номера под ключом определены по естественному порядку соответствующих букв ключа в алфавите. Если в ключе встретились бы одинаковые буквы, они бы нумеровались слева направо.
Л | У | Н | А | Т | И | К |
4 | 7 | 5 | 1 | 6 | 2 | 3 |
Н | О | Н | С | Б | Н | Я |
Е | Е | О | Я | О | Е | Т |
Я | С | В | Е | Л | П | Н |
С | Т | И | Щ | Е | О | Ы |
Н | А | Т | Е | Е | Н | М |
Рисунок 4. Перестановочная таблица до перестановки
А | И | К | Л | Н | Т | У |
1 | 2 | 3 | 4 | 5 | 6 | 7 |
С | Н | Я | Н | Н | Б | О |
Я | Е | Т | Е | О | О | Е |
Е | П | Н | Я | В | Л | С |
Щ | О | Ы | С | И | Е | Т |
Е | Н | М | Н | Т | Е | А |
Рисунок 5. Перестановочная таблица после перестановки
Получается шифровка: СНЯНН БОЯЕТ ЕООЕЕ ПНЯВЛ СЩОЫС ИЕТЕН МНТЕА.
Двойная перестановка
Для дополнительной скрытности можно повторно зашифровать сообщение, которое уже было зашифровано. Этот способ называют двойной перестановкой. Для этого размер второй таблицы подбирают так, чтобы длины ее строк и столбцов были другие, чем в первой таблице. Лучше всего, если они будут взаимно простыми. Кроме того, в первой таблице можно переставлять столбцы, а во второй строки. Наконец, можно заполнять таблицу зигзагом, змейкой, по спирали или каким-нибудь другим способом.
Кроме одиночных перестановок использовались еще двойные перестановки столбцов и строк таблицы с сообщением. При этом перестановки определялись отдельно для столбцов и отдельно для строк. В таблицу вписывался текст и переставлялись столбцы, а потом строки. При расшифровке порядок перестановок был обратный.
Пример. Шифруется двойной перестановкой фраза-сообщение: «АГЕНТ БУДЕТ НА МЕСТЕ В ДЕСЯТЬ»
2 | 4 | 1 | 3 | 5 | |
А | Г | Е | Н | Т | |
_ | Б | У | Д | Е | |
Т | _ | Н | А | _ | |
М | Е | С | Т | Е | |
_ | В | _ | Д | Е | |
С | Я | Т | Ь | _ |
Рисунок 6. Исходная таблица
1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 | |||
Е | А | Н | Г | Т | У | _ | Д | Б | Е | |||
У | _ | Д | Б | Е | Н | Т | А | _ | _ | |||
Н | Т | А | _ | _ | С | М | Т | Е | Е | |||
С | М | Т | Е | Е | Е | А | Н | Г | Т | |||
_ | _ | Д | В | Е | Т | С | Ь | Я | _ | |||
Т | С | Ь | Я | _ | _ | _ | Д | В | Е |
Рисунок 7. Перестановки столбцов и строк
Получается шифровка: У_ДБЕНТА__ СМТЕЕЕАНГТСЬЯ___ДВЕ
Ключом к этому шифру служат номера столбцов 24135 и номера строк 412365 исходной таблицы. Число вариантов двойной перестановки тоже велико: для таблицы 3*3 их 36, для 4*4 их 576, а для 5*5 их 14400.
Шифр «Магический квадрат»
Магическими квадратами называются квадратные таблицы с вписанными в их клетки последовательными натуральными числами от 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Подобные квадраты широко применялись для вписывания шифруемого текста по приведенной в них нумерации. Если потом выписать содержимое таблицы по строкам, то получалась шифровка перестановкой букв.
Пример.Шифруется сообщение «ПРИЕЗЖАЮ ШЕСТОГО» с помощью магического квадрата (Рисунок 9).
О | И | Р | Т | |||||
З | Ш | Е | Ю | |||||
Ж | А | С | ||||||
Е | Г | О | П |
Рисунок 8. Магический квадрат и зашифрованное в нем сообщение
Получается шифровка ОИРТЗШЕЮ ЖАСЕГОП.
На первый взгляд кажется, будто магических квадратов очень мало. Однако это не так. Так, существует лишь один магический квадрат размером 3*3. Магических квадратов 4*4 насчитывается уже 880 , а 5*5 – 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.
Шифр Гронсфельда
Шифр Гронсфельда состоит в модификации шифра Цезаря числовым ключом. Для этого под сообщением пишут ключ. Если ключ короче сообщения, то его повторяют циклически. Шифровку получают так же, как и в шифре Цезаря, но значение сдвига для каждой буквы сообщения соответствует цифре ключа.
Пример. Зашифруем фразу СОВЕРШЕННО СЕКРЕТНО. В качестве ключа выберем число 314. Подготовленное к шифрованию сообщение будет выглядеть так, как показано ниже.
Сообщение: | С | О | В | Е | Р | Ш | Е | Н | Н | О | С | Е | К | Р | Е | Т | Н | О | |
Ключ: |
Получаем зашифрованное сообщение – ФПЖИСЬИОСС ХИЛФИУСС. Для дешифрования сообщения получателю необходимо знать ключ.
Шифр Виженера
Шифр Виженера представляет еще одну модификацию шифра Цезаря, только вместо цифрового ключа, как в шифре Гронсфельда, здесь в качестве ключа используется ключевое слово или фраза.
Французский дипломат Блэйс де Виженер в XVI веке предложил использовать для создания зашифрованных сообщений не один, а несколько алфавитов, размещенных в прямоугольной таблице. Количество алфавитов для каждого языка определяется количеством букв в этом алфавите. Так, например, для русского языка следует использовать 32 или 33 алфавита, а для английского – 26 алфавитов.
При составлении шифровальной таблицы есть определенные правила.
1. Для русского языка в верхней строке, которая не имеет номера, необходимо вписать буквы алфавита от ‘А’ до ‘Я’. Этот алфавит будет использоваться для работы с открытым текстом.
2. В ячейки в крайнем левом столбце таблицы следует вписать цифры от 1 до 32, а в каждую пронумерованную строку таблицы - алфавит для шифрования. При этом алфавит в первом ряду начинается с буквы ‘Б’, алфавит во втором ряду – с буквы ‘В’ и так далее до ряда 32, который начинается с буквы ‘А’.
В результате для русского языка получается следующая таблица:
А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | |
А | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ |
Б | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я |
В | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю |
Г | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э |
Д | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь |
Е | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы |
Ж | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ |
З | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ |
И | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш |
К | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч |
Л | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц |
М | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х |
Н | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф |
О | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У |
П | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т |
Р | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С |
С | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р |
Т | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П |
У | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О |
Ф | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н |
Х | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л | М |
Ц | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К | Л |
Ч | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И | К |
Ш | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З | И |
Щ | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж | З |
Ъ | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е | Ж |
Ы | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д | Е |
Ь | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г | Д |
Э | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В | Г |
Ю | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б | В |
Я | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А | Б |
_ | Б | В | Г | Д | Е | Ж | З | И | К | Л | М | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ | Ъ | Ы | Ь | Э | Ю | Я | _ | А |
Рисунок 9. Таблица шифрования Вижанера
Каждая строка в этой таблице соответствует одному шифру замены вроде шифра Юлия Цезаря для алфавита, дополненного пробелом. При шифровании сообщения его выписывают в строку, а под ним ключ. Если ключ короче сообщения, то его повторяют циклически. Шифровку получают, находя символ в колонке таблицы по букве текста и строке соответствующей букве ключа.
Пример.Зашифруем сообщение ПРИЕЗЖАЮ_ШЕСТОГО.
Сообщение: | П | Р | И | Е | З | Ж | А | Ю | _ | Ш | Е | С | Т | О | Г | О | |||
Ключ: | А | Г | А | В | А | А | Г | А | В | А | Г | А | В | А | А | Г |
Полученное с помощью данного метода шифрования сообщение: ПНИГЗЖЮЮЮАЕОТМГО.
Шифр Трисемуса
Данный способ шифрования подобен шифру Полибия. Отличие заключается в использовании ключевого слова или фразы. Ключевое слово вписывалось в таблицу (размер таблицы для русского языка – 5х6, для английского – 5х5) по строкам, а повторяющиеся буквы отбрасывались. Затем таблица до-заполнялась не вошедшими в нее буквами алфавита по порядку. Поскольку ключевое слово легко хранить в памяти, то такой подход упрощал процессы шифрования и дешифрования. Таблица для ключа RAIN представлена на рисунке 10.
R | A | I | N | B |
C | D | E | F | G |
H | K | L | M | O |
P | Q | S | T | U |
V | W | X | Y | Z |
Рисунок 10. Таблица Трисемуса для ключа RAIN
Пример. Зашифруем с помощью данного квадрата знаменитый афоризм на латыни ERRARE HUMANUM EST (Человеку свойственно ошибаться). Пример взят из шифра «Полибианский квадрат». Получим зашифрованное сообщение: LCCDCL PZTDFZT LXY
Биграмный шифр Плэйфера
Ручная симметричная техника шифрования, в которой впервые использована замена биграмм [википедия].
При шифровании на русском языке, все буквы, за исключением Й и Ъ в определенном порядке выписываются в квадрат 5х6. Для английского языка размер квадрата составляет 5х5, с исключением буквы J. Заполнит квадрат можно двумя способами: либо начав ключевого слова и расставив оставшиеся буквы в алфавитном порядке, либо расставив все буквы в случайном порядке. Повторения букв в ключевом слове игнорируются [черчхауз]. Таким образом, ключевые слова следует подбирать без повторяющихся букв.
Рассмотрим таблицу 6х6 с ключевым словом РЕСПУБЛИКА:
Р | Е | С | П | У | Б |
Л | И | К | А | В | Г |
Д | Ж | З | М | Н | О |
Т | Ф | Х | Ц | Ч | Ш |
Щ | Ы | Ь | Э | Ю | Я |
Рисунок 11. Таблица шифра Плейфера для ключа РЕСПУБЛИКА
Разберем алгоритм шифрования на примере. Зашифруем фразу СОВЕРШЕННО СЕКРЕТНО.
1. Текст разбивается на пары букв:
СО ВЕ РШ ЕН НО СЕ КР ЕТ НО
2. Далее текст шифровки строится по двум правилам:
1) Если обе буквы биграммы исходного текста принадлежат одной колонке таблицы, то буквами шифра считаются буквы, которые находятся под ними. Если буква исходного текста находится в нижнем ряду, то для шифра берется соответствующая буква из верхнего ряда.
2) Если обе буквы биграммы исходного текста находятся в одной строке таблицы, то буквами шифра считаются буквы, которые находятся справа от них. Так биграмма СЕ примера дает текст шифровки ПС. Если буква исходного текста находится в правой колонке, то для шифра берется соответствующая буква из левой колонки. Так биграмма НО в нашем примере дает шифр ОД.
3) Если обе буквы биграммы открытого текста лежат в разных рядах и колонках, то вместо них берутся такие буквы, чтобы вся четверка их представляла прямоугольник. При этом последовательность букв в шифре была зеркальной исходной паре. Так биграмма СО нашего примера шифруется как БЗ, а ВЕ – как ИУ, и так далее.
4) Если обе буквы одинаковые, то между ними вставляется «пустая» буква [черчхауз].
5) В случае необходимости в конце исходного текста добавляется «пустая» буква [чечхауз].
Результат шифрования: ЗБУИТБ ЖУОДПС СЛРФОД.
Двойной шифр Плейфера
В двойной системе Плейфера используются два квадрата, записанные рядом. При этом первая буква каждой биграммы исходного текста ищется в первом (левом квадрате), а вторая буква биграммы - во втором (правом) квадрате. Соответствующие буквы шифрованного текста определяются по обычным правилам системы шифрования Плейфера, но буквы в углах прямоугольника заменяются на соответствующие буквы из тех же столбцов. Это означает, что любая буква всегда заменяется буквой из того же самого квадрата.
Пример. Зашифруем фразу СОВЕРШЕННО СЕКРЕТНО. Текст разбивается на пары букв: СО ВЕ РШ ЕН НО СЕ КР ЕТ НО
Возьмем для шифрования два квадрата с двумя ключевыми словами РЕСПУБЛИКА и ГРОЗА (Рисунок 12).
Р | Е | С | П | У | Б | Г | Р | О | З | А | Б | |
Л | И | К | А | В | Г | В | Д | Е | Ж | И | К | |
Д | Ж | З | М | Н | О | Л | М | Н | П | С | Т | |
Т | Ф | Х | Ц | Ч | Ш | У | Ф | Х | Ц | Ч | Ш | |
Щ | Ы | Ь | Э | Ю | Я | Щ | Ы | Ь | Э | Ю | Я |
Рисунок 12. Таблицы двойного шифра Плейфера для ключа РЕСПУБЛИКА и ДОЖДЬ
Процесс шифрования биграмм, с помощью квадратов отображен в таблице.
Биграмма исходного текста | Биграмма шифра | Биграмма исходного текста | Биграмма шифра |
СО | ПЗ | СЕ | КО |
ВЕ | ГЖ | КР | СД |
РШ | ТБ | ЕТ | ЖБ |
ЕН | ЖО | НО | УН |
Результат шифрования текста: ПЗГЖТБ ЖОУНКО СДЖБУН.
Шифрование методом решеток
Решетки представляют собой квадратные таблицы, где четверть ячеек прорезана так, что при четырех поворотах они покрывают весь квадрат. Вписывание в прорезанные ячейки текста и повороты решетки продолжаются до тех пор, пока весь квадрат не будет заполнен.
Решетки подбираются таким образом, чтобы при поворотах прорезанные ячейки не совпадали. Примеры решеток размером 4х4 представлены на рисунке .
а) б) в) г)
Рисунок 13. Примеры решеток для шифрования
Например, на рисунке ниже показан процесс шифровки решеткой 4*4. Пустые клетки – это «непрорезанные» ячейки. Повороты осуществляются по часовой стрелке на угол 90°:
П | З | _ | Т | |||||||||||||||
Р | Ж | Ш | О | |||||||||||||||
И | А | Е | Г | |||||||||||||||
Е | Ю | С | О |
После четырех поворотов получается заполненная буквами исходного сообщения таблица.
З | Т | П | _ |
О | Ж | Ш | Р |
Е | И | Г | А |
Е | С | Ю | О |
Для получения шифрованного сообщения необходимо буквы из таблицы по строкам или по столбцам. В результате получим следующее шифрованное сообщение ЗТП_ОЕЖШРЕИГАЕСЮО, при прочтении по строкам, и сообщение ЗОЕЕТЖИСПШГЮ_РАО, при прочтении по строкам.
Шифр с паролем
Для использования простейшего варианта шифра с паролем необходимо составить специальную таблицу. Но сначала следует выбрать ключевое слово или пароль. Например, при шифровании текста СЕКРЕТНОЕ СООБЩЕНИЕ с помощью данного шифра в качестве пароля можно использовать слово КОМПЬЮТЕР.
При создании шифровальной таблицы следует:
1. В верхней строке записать буквы алфавита, а в нижней под первыми шестью буквами – буквы пароля.
2. Дописать в нижней строке таблицы буквы алфавита, которых нет в слове пароля.
В окончательном варианте для пароля КОМПЬЮТЕР шифровальная таблица будет выглядеть вот так:
Буквы входного текста | А | Б | В | Г | Д | Е | Ж | З | И | Й | К | Л | М |
Буквы зашифрованного текста | К | О | М | П | Ь | Ю | Т | Е | Р | А | Б | В | Г |
Буквы входного текста | Н | О | П | Р | С | Т | У | Ф | Х | Ц | Ч | Ш | Щ |
Буквы зашифрованного текста | Д | Ж | З | И | Й | Л | Н | С | У | Ф | Х | Ц | Ч |
Буквы входного текста | Ъ | Ы | Ь | Э | Ю | Я | |||||||
Буквы зашифрованного текста | Ш | Щ | Ъ | Ы | Э | Я |
При использовании шифра с паролем, как и ранее рассмотренных шифров замены, необходимо каждую букву открытого текста найти в верхнем ряду таблицы и заменить ее на соответствующую букву в нижнем ряду таблицы.
Пример. Зашифруем текст СЕКРЕТНОЕ СООБЩЕНИЕ. В зашифрованном виде данной входное сообщение будет представлять следующий набор букв:
ЙЮБИЮЛДЖЮ ЙЖЖОЧЮДРЮ
Для большей скрытности этот текст можно произвольно разделить на группы букв.
ЙЮ БИЮЛ ДЖЮ ЙЖЖОЧ Ю ДРЮ
Для расшифровки такой криптограммы надо каждую букву шифровки найти в нижнем ряду таблицы и заменить ее на соответствующую букву в верхнем ряду.
Варианты заданий
1. Тип шифрования — Шифр с