Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Material.doc
Скачиваний:
7
Добавлен:
01.03.2025
Размер:
7.07 Mб
Скачать

2. Коммутация сообщений

Под коммутацией сообщений понимается передача единого блока данных между транзитными компьютерами сети с временной буферизацией этого блока на диске каждого компьютера (рис. 2,32), Сообщение в отличие от пакета имеет произволь­ную длину, которая определяется не технологическими соображениями, а содер­жанием информации, составляющей сообщение. Например, сообщением может быть текстовый документ, файл с кодом программы, электронное письмо.

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

По такой схеме обычно передаются сообщения, не требующие немедленного ответа, чаще всего сообщения электронной почты. Режим передачи с промежуточ­ным хранением на диске называется режимом «хранение-и-передача» (store-and-forward).

Режим коммутации сообщений разгружает сеть для передачи трафика, требую­щего быстрого ответа, например трафика службы WWW или файловой службы.

Рис. 2.32. Коммутация сообщений

Количество транзитных компьютеров стараются по возможности уменьшить. Если компьютеры подключены к сети с коммутацией пакетов, то число промежу­точных компьютеров обычно уменьшается до двух. Например, пользователь пере­дает почтовое сообщение своему серверу исходящей почты, а тот сразу старается передать сообщение серверу входящей почты адресата. Но если компьютеры связа­ны между собой телефонной сетью, то часто используется несколько промежуточ­ных серверов, так как прямой доступ к конечному серверу может быть невозможен в данный момент из-за перегрузки телефонной сети (абонент занят) или экономи­чески невыгоден из-за высоких тарифов на дальнюю телефонную связь.

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

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

Старший преподаватель кафедры №24 капитан I ранга________ Куканков С. Н.

Практическое занятие №9

Тема: Простейшие шифры

Вопросы:

1) Шифры Цезаря и Вижинера

2) Шифр Плейфера

Шифр Цезаря

Шифр Це́заря — один из древнейших шифров. При шифровании каждый символ заменяется другим, отстоящим от него в алфавите на фиксированное число позиций. Шифр Цезаря можно классифицировать как шифр подстановки, при более узкой классификации — шифр простой замены.

Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Естественным развитием шифра Цезаря стал шифр Виженера. С точки зрения современного криптоанализа, шифр Цезаря не имеет приемлемой стойкости.

Математическая модель

Если сопоставить каждому символу алфавита его порядковый номер (нумеруя с 0), то шифрование и дешифрование можно выразить формулами:

где — символ открытого текста, — символ шифрованного текста, мощность алфавита, а — ключ.

Можно заметить, что суперпозиция двух шифрований на ключах и — есть просто шифрование на ключе . Более общо, множество шифрующих преобразований шифра Цезаря образует группу .

Пример

Шифрование с использованием ключа k = 3. Буква С «сдвигается» на три буквы вперед и становится буквой «Ф». Твердый знак, перемещённый на три буквы вперед, становится буквой «э», и так далее:

Оригинальный текст:

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

Шифрованный текст

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

Шифр Виженер

Шифр Виженера (фр. Chiffre de Vigenère) — метод полиалфавитного шифрования буквенного текста с использованием ключевого слова.

Этот метод является простой формой многоалфавитной замены. Шифр Виженера изобретался многократно. Впервые этот метод описал Джованни-Баттиста Беллазо (Giovan Battista Bellaso) в книге La cifra del. Sig. Giovan Battista Bellasо в 1553 году, однако в XIX веке получил имя Блеза Виженера, швейцарского дипломата. Метод прост для понимания и реализации, он является недоступным для простых методов криптоанализа.

Описание

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

В шифре Цезаря каждая буква алфавита сдвигается на несколько позиций; например в шифре Цезаря при сдвиге +3, A стало бы D, B стало бы E и так далее. Шифр Виженера состоит из последовательности нескольких шифров Цезаря с различными значениями сдвига. Для зашифрования может использоваться таблица алфавитов, называемая tabula recta или квадрат (таблица) Виженера. Применительно к латинскому алфавиту таблица Виженера составляется из строк по 26 символов, причём каждая следующая строка сдвигается на несколько позиций. Таким образом, в таблице получается 26 различных шифров Цезаря. На разных этапах кодировки шифр Виженера использует различные алфавиты из этой таблицы. На каждом этапе шифрования используются различные алфавиты, выбираемые в зависимости от символа ключевого слова. Например, предположим, что исходный текст имеет вид:

ATTACKATDAWN

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

LEMONLEMONLE

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

Исходный текст:

ATTACKATDAWN

Ключ:

LEMONLEMONLE

Зашифрованный текст:

LXFOPVEFRNHR

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

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

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

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

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

Тест Касиски

В 1863 году Фридрих Касиски был первым, кто опубликовал успешный алгоритм атаки на шифр Виженера, хотя Чарльз Беббидж разработал этот алгоритм уже в 1854 году. В то время когда Беббидж занимался взломом шифра Виженера, John Hall Brock Thwaites представил новый шифр в «Journal of the Society of the Arts»; когда Беббидж показал, что шифр Thwaites'а является лишь частным случаем шифра Виженера, Thwaites предложил ему его взломать. Беббидж расшифровал текст, который оказался поэмой «The Vision of Sin» Альфреда Теннисона, зашифрованной ключевым словом Emily — именем жены поэта.

Тест Касиски опирается на то, что некоторые слова, такие как «the» могут быть зашифрованы одинаковыми символами, что приводит к повторению групп символов в зашифрованном тексте. Например: сообщение, зашифрованное ключом ABCDEF , не всегда одинаково зашифрует слово «crypto»:

Ключ: ABCDEF AB CDEFA BCD EFABCDEFABCD

Исходный текст: CRYPTO IS SHORT FOR CRYPTOGRAPHY

Шифрованный текст: CSASXT IT UKSWT GQU GWYQVRKWAQJB

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

Ключ: ABCDAB CD ABCDA BCD ABCDABCDABCD

Исходный текст: CRYPTO IS SHORT FOR CRYPTOGRAPHY

Шифрованный текст: CSASTP KV SIQUT GQU CSASTPIUAQJB

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

Шифрованный текст: DYDUXRMHTVDVNQDQNWDYDUXRMHARTJGWNQD

Расстояние между повторяющимися DYDUXRMH равно 18, это позволяет сделать вывод, что длина ключа равна одному из значений: 18,9,6,3 или 2. Расстояние между повторяющимися NQD равно 20. Из этого следует, что длина ключа равна 20 или 10, или 5, или 4 или 2. Сравнивая возможные длины ключей, можно сделать вывод, что длина ключа (почти наверняка) равна 2.

Тест Фридмана

Тест Фридмана (иногда называемый каппа-тест) был изобретен Вильямом Фридманом в 1920 году. Фридман использовал индекс совпадения, который измеряет частоты повторения символов, чтобы взломать шифр. Зная вероятность ?p того, что два случайно выбранных символа текста совпадают (примерно 0,067 для англ. языка) и вероятность совпадения двух случайно выбранных символов алфавита (примерно 0,0385 для англ. языка), то длина ключа может быть оценена как:

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

Где С-размер алфавита (26 символов для англ. языка), N-длина текста, и n1 до nc- наблюдаемые частоты повторения символов зашифрованного текста. Однако, это только приблизительное значение, точность которого увеличивается при большем размере текста. На практике это было бы необходимо для перебора различных ключей приближаясь к исходному.

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

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

Варианты

Вариант running key (бегущий ключ) шифра Виженера когда-то был невзламываемым. Эта версия использует в качестве ключа блок текста, равный по длине исходному тексту. Так как ключ равен по длине сообщению, то тесты Фридмана и Казиски не работают (так как ключ не повторяется). В 1920 году Фридман первым обнаружил недостатки этого варианта. Проблема с running key шифра Виженера состоит в том, что криптоаналитик имеет статистическую информацию о ключе (учитывая, что блок текста написан на известном языке) и эта информация будет отражаться в шифрованном тексте. Если ключ действительно случайный, его длина равна длине сообщения и он использовался единожды, то шифр Виженера теоретически будет невзламываемым. Виженер фактически изобрёл более стойкий шифр — шифр с автоключом. Несмотря на это, «шифр Виженера» ассоциируется с более простым многоалфавитным шифром. Фактически эти два шифра часто путали, называя их le chiffre indechiffrable. Беббидж фактически взломал более стойкий шифр с автоключом, в то время когда Казиски издал первое решение взлома многоалфавитного шифра с фиксированным ключом. Метод Виженера зашифровки и расшифровки сообщений иногда относится к «варианту Битфорда». Его отличие от шифра Битфорда, изобретенного сэром Френсисом Битфордом, который, тем не менее, подобен шифру Виженера, заключается в использовании немного измененного механизма шифрования и таблиц. Несмотря на очевидную стойкость шифра Виженера, он широко не использовался в Европе. Большее распространение получил шифр Гронсфилда, созданный графом Гронсфилдом, идентичный шифру Виженера, за исключением того, что он использовал только 10 различных алфавитов (соответствующих цифрам от 0 до 9). Преимущество шифра Гронсфилда состоит в том, что в качестве ключа используется не слово, а недостаток в небольшом количестве алфавитов. Шифр Гронсфилда широко использовался по всей Германии и Европе, несмотря на его недостатки.

Шифр Плейфера

Система шифрования Плейфера была изобретена Чарльзом Уитстоном, который впервые описал её в 1854 году.

Шифр Плейфера или квадрат Плейфера  — ручная симметричная техника шифрования, в которой впервые использована замена биграмм. Изобретена в 1854 году Чарльзом Уитстоном, но названа именем Лорда Лайона Плейфера, который внедрил данный шифр в государственные службы Великобритании. Шифр предусматривает шифрование пар символов (биграмм) вместо одиночных символов, как в шифре подстановки и в более сложных системах шифрования Виженера. Таким образом, шифр Плейфера более устойчив к взлому по сравнению с шифром простой замены, так как затрудняется частотный анализ. Он может быть проведен, но не для 26 возможных символов (латинский алфавит), а для 26х26=676 возможных биграмм. Анализ частоты биграмм возможен, но является значительно более трудным и требует намного большего объема зашифрованного текста.

Использование шифра Плейфера

Шифр Плейфера использует матрицу 5х5 (для латинского алфавита, для русского алфавита необходимо увеличить размер матрицы до 6х6), содержащую ключевое слово или фразу. Для создания матрицы и использования шифра достаточно запомнить ключевое слово и четыре простых правила. Чтобы составить ключевую матрицу, в первую очередь нужно заполнить пустые ячейки матрицы буквами ключевого слова (не записывая повторяющиеся символы), потом заполнить оставшиеся ячейки матрицы символами алфавита, не встречающимися в ключевом слове, по порядку (в английских текстах обычно опускается символ «Q», чтобы уменьшить алфавит, в других версиях «I» и «J» объединяются в одну ячейку). Ключевое слово может быть записано в верхней строке матрицы слева направо, либо по спирали из левого верхнего угла к центру. Ключевое слово, дополненное алфавитом составляет матрицу 5х5 и является ключом шифра.

Для того, чтобы зашифровать сообщение необходимо разбить его на биграммы (группы из двух символов), например «Hello World» становится «HE LL OW OR LD», и отыскать эти биграммы в таблице. Два символа биграммы соответствуют углам прямоугольника в ключевой матрице. Определяем положения углов этого прямоугольника относительно друг друга. Затем руководствуясь следующими 4 правилами зашифровываем пары символов исходного текста:

1. Если два символа биграммы совпадают, добавляем после первого символа «Х», зашифровываем новую пару символов и продолжаем. В некоторых вариантах шифра Плейфера вместо «Х» используется «Q».

2. Если символы биграммы исходного текста встречаются в одной строке, то эти символы замещаются на символы, расположенные в ближайших столбцах справа от соответствующих символов. Если символ является последним в строке, то он заменяется на первый символ этой же строки.

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

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

Для расшифровки необходимо использовать инверсию этих четырёх правил, откидывая символы «Х» (или «Q»), если они не несут смысла в исходном сообщении.

Пример

Используем ключ «Playfair example», тогда матрица примет вид:

P L A Y F

I R E X M

B C D G H

J K N O S

T U V W Z

Зашифруем сообщение «Hide the gold in the tree stump» HI DE TH EG OL DI NT HE TR EX ES TU MP 1. Биграмма HI формирует прямоугольник, заменяем её на BM. 2. Биграмма DE расположена в одном столбце, заменяем её на ND. 3. Биграмма TH формирует прямоугольник, заменяем её на ZB. 4. Биграмма EG формирует прямоугольник, заменяем её на XD. 5. Биграмма OL формирует прямоугольник, заменяем её на KY. 6. Биграмма DI формирует прямоугольник, заменяем её на BE. 7. Биграмма NT формирует прямоугольник, заменяем её на JV. 8. Биграмма HE формирует прямоугольник, заменяем её на DM. 9. Биграмма TR формирует прямоугольник, заменяем её на UI. 10. Биграмма EX находится в одной строке, заменяем её на XM. 11. Биграмма ES формирует прямоугольник, заменяем её на MN. 12. Биграмма TU находится в одной строке, заменяем её на UV. 13. Биграмма MP формирует прямоугольник, заменяем её на IF. Получаем зашифрованный текст «BM ND ZB XD KY BE JV DM UI XM MN UV IF» Таким образом сообщение «Hide the gold in the tree stump» преобразуется в «BMNDZBXDKYBEJVDMUIXMMNUVIF»

Иллюстрации в примерах

Предположим, что необходимо зашифровать биграмму OR. Рассмотрим 4 случая:

1)

* * * * *

* O Y R Z

* * * * *

* * * * *

* * * * *

OR заменяется на YZ

2)

* * O * *

* * B * *

* * * * *

* * R * *

* * Y * *

OR заменяется на BY

3)

Z * * O *

* * * * *

* * * * *

R * * X *

* * * * *

OR заменяется на ZX

4)

* * * * *

* * * * *

Y O Z * R

* * * * *

* * * * *

OR заменяется на ZY

Криптоанализ шифра Плейфера

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

Шифр Плейфера подобен шифру двух квадратов, хотя относительная простота системы шифрования Плейфера упрощает идентификацию текста. Примечательно, что биграмма шифра Плейфера и её инверсия (AB и BA) будет расшифрована как другая биграмма и её инверсия (RE и ER). В английском языке есть много слов, содержащих такие инверсные биграммы, например REceivER и DEpartED. Идентификация близко лежащих инверсных биграмм зашифрованного текста и нахождение им соответствий в списке известных слов исходного текста является одним из легких способов построения исходного текста и начала конструирования ключа.

Существует другой подход к криптоанализу шифра Плейфера, который называется en:Random-restart hill climbing. Он основывается на матрице случайных символов. С помощью простейших итераций матрица случайных символов максимально приближается к оригинальной матрице. Очевидно, что этот метод слишком сложен для человека, но компьютеры с помощью данного алгоритма могут взломать данный шифр, даже имея небольшой объем текста. Другой отличительной особенностью шифра Плейфера от шифра с двумя квадратами является то, что в нём никогда не встречаются биграммы с повторяющимися символами (например ЕЕ). Если в шифрованном тексте отсутствуют биграммы с повторяющимися символами и его длина достаточно велика, то можно предположить, что исходный текст зашифрован шифром Плейфера.

В главе 7 книги «Solution to polygrafic substitution systems» на сайте Field Manual 34-40-2 Сухопутных Войск США, можно найти руководство для нахождения ключа для шифра Плейфера. Детальный криптоанализ шифра Плейфера упоминается в главе 28 новеллы «Разыскивается труп» (автор — Дороти Сейер). В этом произведении показано, что шифр Плейфера является криптографически слабым, потому что детектив нашел ключ к сообщению довольно быстро. Книга Сейер включает детальное описание механизма шифрования методом Плейфера, а также и пошаговое руководство для его криптоанализа. Немецкая армия, ВВС и полиция использовали двойную систему шифрования Плейфера, как шифр «среднего сорта», во Второй мировой войне. Они добавили второй квадрат, так как во время Первой мировой войны шифр Плейфера был взломан. Из этого квадрата брали второй символ каждой биграммы, не используя ключевое слово и помещая символы в произвольном порядке. Но и этот шифр был взломан в Блечли-парк, потому что немцы использовали один и тот же шаблон сообщения. В восьми сообщениях, зашифрованных двойным шифром Плейфера, были использованы цифры от одного до двенадцати, это и дало возможность достаточно легко взломать его.

Старший преподаватель кафедры №24 капитан I ранга________ Куканков С. Н.