Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Инф. безопасность

.pdf
Скачиваний:
39
Добавлен:
18.03.2015
Размер:
2.7 Mб
Скачать

1

3

2

16

 

85

 

1

 

 

 

 

 

Y = 2

5

× 17

 

= 94

 

2

 

 

 

 

 

3

1

09

91

1

3

2

11

30

 

1

 

 

 

 

 

Y = 2

5

× 01

= 63

 

2

 

 

 

 

 

3

1

08

43

Шифртекст: «85 94 91 30 63 43»

Метод полиномов основан на преобразовании yi = xin (ai xin-1 … + an-1 x1 + an) (mod p),

где n, а1 а2, ..., аn - целые неотрицательные числа, не превосходящие уi р;

р - большое простое число.

Пример 10. Открытый текст: «ПРИКАЗ» (1617091101 08).

Полином: уi = хi3 + i2 + Зхi + 4 (mod 991). y1 = 163 + 2162 + 316 + 4 (mod 991) = 696;

y2 = 173 + 2172 + 317 + 4 (mod 991) = 591; y3 = 93 + 292 + 39 + 4 (mod 991) = 922;

y4 = 113 + 2112 + 311 + 4 (mod 991) = 619; y5 = 13 + 212 + 31 + 4 (mod 991) = 10;

у6 = 83 + 282+ 38 + 4 (mod 991) = 668.

Шифртекст: «696 591 922 619 010 668»

Экспоненциальный шифр использует преобразование вида yi = axi (mod р),

где хi - целое, 1 ≤ хi < р ≤ 1; р - большое простое число;

а - целое, 1 ≤ а ≤ р.

Пример 11. Открытый текст: «ПРИКАЗ» (16 17 09 11 01 08); a = 3; p = 991.

y1 = 316 (mod 991) = 43046721 (mod 991) = 654; y2 = 317 (mod 991) = 129140163 (mod 991) = 971; y3 = 39 (mod 991) = 19683 (mod 991) = 854;

y4 = 311 (mod 991) = 177147 (mod 991) = 749; y5 = 31 (mod 991) = 3;

y6 = 38 (mod 991) = 6561 (mod 991) = 615.

Шифртекст: «654 971 854 749 003 615»

21

3.4Упражнения

1.Расшифровать текст, полученный шифрованием методом

 

1

3

2

умножения матриц. 23 45 42 61 58 87

 

1

 

C = 2

5

 

 

2

 

 

3

1

2.Расшифровать: 394 523 723 190 010. Полином yi=xi2+6xi+3(mod 991).

3.Используя метод экспоненциальных преобразований расшифровать: 053 212 520 326 132 212 а=4, р=991

3.5Метод гаммирования.

Гаммирование является также широко применяемым криптографическим преобразованием. [5]

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

2).

yi = хi g i ,

где уi - i-й символ шифртекста; х - i-й символ открытого текста;

- выполняемая операция (наложение гаммы).

Процесс дешифрования данных сводится к повторной генерации гаммы шифра при известном ключе и наложении такой гаммы на зашифрованные данные.

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

Метод гаммирования становится бессильным, если злоумышленнику становится известен фрагмент исходного текста и соответствующая ему шифрограмма.

22

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

Пример 12 Открытый текст: «ПРИКАЗ» (16 17 09 11 01 08). Гамма: "ГАММА" ("04 01 13 13 01").

Операция: сложение по mod 33. y1 = 16+ 4 (mod 33) = 20;

y2 = 17+ 1 (mod 33) = 18; y3 = 9 +13 (mod 33) = 22; y4 = 11+13 (mod 33) = 24; y5 = 1+ 1 (mod 33) = 2; y6 = 8+ 4 (mod 33) - 12.

Шифртекст "УСХЧБЛ" ("20 18 22 24 02 12").

Пример 13 Открытый текст: «ПРИКАЗ» («16 17 09 11 01

08»).

Первые значения датчика: 04 03 12 20 10 09 . Операция: сложение по mod 2.

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

10000 10001 01001 01011 00001 01000

00100 00011 01100 10100 01010 1001

10100 10010 00101 11111 01011 00001.

Шифртекст: «УСДЮКА» Одной из разновидностей метода гаммирования является

наиболее часто применяемый метод многократного наложения гамм. Необходимо отметить, что если уi = Гk 1 i)), то

Гk 1 i)) = Г1 k i)) (1)

Тождество (1) называют основным свойством гаммы. Одной из разновидностей метода гаммирования является

наиболее часто применяемый метод многократного наложения гамм.

Пример 14 Открытый текст: «ШИФРЫ» (25 09 21 17 28); Г1 = “ГАММА” ("04 01 13 13 01"); Г2 = “ТЕКСТ” ("19 06 11 18 19"),

Используемая операция: сложение по mod 2.

23

1. y1i = xi γ 1i

11001 01001 10101 10001 11100

00100 00001 01101 01101 00001

11101 01000 11000 11100 11101.

2. y2i = y1i γ 2i

11101 01000 11000 11100 11101

10011 00110 01011 10010 10011

01110 01110 10011 01110 01110.

Проведем операцию шифрования, поменяв порядок

применения гамм.

1. y1i* = xi γ 2i

11001 01001 10101 10001 11100

10011 00110 01011 10010 10011

01010 01111 11110 00011 01111.

2, y2i* = y1i γ 1i

01010 01111 11110 00011 01111

00100 00001 01101 01101 00001

01110 01110 10011 01110 01110.

Таким образом, у2i = у2i*, что является подтверждением основного свойства гаммы.

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

3.6Упражнения

1.Расшифровать: РЯУЦЦЖ Гамма {08 14 01 14 09 06} Операция: сложение по mod 33

24

2.Расшифровать: ЮСРББЩ Первые значения датчика ПСЧ:

{01 03 05 07 11 09} Операция: сложение по mod 2

3.Расшифровать: НИШЗЬБ

Гамма1 = “ДИПЛОМ” Гамма2 = “ВАТМАН” и

подтвердите основное свойство гаммы.

3.7Перестановочные шифры

Шифр, преобразования из которого изменяют только порядок следования символов исходного текста, но не изменяют их самих, называется шифром перестановки. [4]

Рассмотрим преобразование из шифра перестановки, предназначенное для зашифрования сообщения длиной n символов. Его можно в виде подстановки:

 

1

2

...

n

 

 

i

 

...

i

 

i

2

 

 

1

 

 

 

n

где i1 — номер места шифртекста, на которое попадает первая буква исходного сообщения при выбранном преобразовании, i2 — номер места для второй буквы и т.д. В верхней строке таблицы выписаны по порядку числа от 1 до n, а в нижней — те же числа, но в произвольном порядке. Такая таблица называется подстановкой степени n.

Зная подстановку, задающую преобразование, можно осуществить как зашифрование, так и расшифрование текста. Например, если для преобразования используется подстановка

1

2

3

4

5

6

 

 

 

 

 

 

 

 

 

5

2

3

1

4

6

 

 

 

и в соответствии с ней зашифровывается слово МОСКВА, то получится ВОСМКА.

Число различных преобразований шифра перестановки, предназначенного для зашифрования сообщений длины n, меньше либо равно n! (заметим, что в это число входит и вариант преобразования, оставляющий все символы на своих местах).

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

25

равно n!.

Для использования на практике такой шифр не удобен, так как при больших значениях n приходится работать с длинными таблицами.

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

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

Пример 6. Зашифруем указанным способом фразу:

ПРИМЕРМАРШРУТНОЙПЕРЕСТАНОВКИ

используя прямоугольник размера 4×7:

ПР ИМЕ Р М

НТ УР ШР А ОЙПЕ Р Е С

ИКВО Н АТ

Зашифрованная фраза выглядит так:

МАСТАЕРРЕШРНОЕРМИУПВКЙТРПНОИ

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

Шифр «Сцитала». Одним из самых первых шифровальных приспособлений был жезл («Сцитала»), применявшийся еще во времена войны Спарты против Афин в V веке до н. э. Это был цилиндр, на который виток к витку наматывалась узкая папирусная лента (без просветов и нахлестов), а затем на этой ленте вдоль его оси записывался необходимый для передачи текст. Лента сматывалась с цилиндра и отправлялась адресату, который, имея цилиндр точно такого же диаметра, наматывал

26

ленту на него и прочитывал сообщение. Ясно, что такой способ шифрования осуществляет перестановку местами букв сообщения.

Шифр «Сцитала» реализует не более n перестановок (n — длина сообщения). Действительно, этот шифр, как нетрудно видеть, эквивалентен следующему шифру маршрутной перестановки: в таблицу, состоящую из m столбцов, построчно записывают сообщение, после чего выписывают буквы по столбцам. Число задействованных столбцов таблицы не может превосходить длины сообщения.

Имеются еще и чисто физические ограничения, накладываемые реализацией шифра «Сцитала». Естественно предположить, что диаметр жезла не должен превосходить 10 сантиметров. При высоте строки в 1 сантиметр на одном витке такого жезла уместится не более 32 букв (10π < 32). Таким образом, число перестановок, реализуемых «Сциталой», вряд ли превосходит 32.

Шифр «Поворотная решетка».[1] Для использования шифра, называемого поворотной решеткой, изготавливается трафарет из прямоугольного листа клетчатой бумаги размера 2m×2k клеток. В трафарете вырезано mk клеток так, что при наложении его на чистый лист бумаги того же размера четырьмя возможными способами его вырезы полностью покрывают всю площадь листа.

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

Поясним процесс шифрования на примере.

Пример 7. Пусть в качестве ключа используется решетка

6×10:

Зашифруем с ее помощью текст

ШИФРРЕШЕТКАЯВЛЯЕТСЯЧАСТНЫМСЛУЧАЕМШИФР

27

АМАРШРУТНОЙПЕРЕСТАНОВКИ

Наложив решетку на лист бумаги, вписываем первые 15 (по числу вырезов) букв сообщения: ШИФРРЕШЕТКАЯВЛЯ.... Сняв решетку, мы увидим текст:

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

Затем переворачиваем решетку на другую сторону и зашифровываем остаток текста аналогичным образом.

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

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

28

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

Главное требование к решетке Кардано – при всех поворотах «окна» не должны попадать на одно и то же место в квадрате, в котором образуется шифртектст.

Если в квадрате после снятия решетки образовывались пустые места, то в них вписывались произвольные буквы. Затем буквы квадрата выписывались построчно, что и было шифрованным текстом.

Можно доказать, что число возможных трафаретов, то есть количество ключей шифра «решетка», составляет T = 4mk. Этот шифр предназначен для сообщений длины n = 4mk. Число всех перестановок в тексте такой длины составит (4mk)!, что во много раз больше числа T. Однако, уже при размере трафарета 8×8число возможных решеток превосходит 4 миллиарда.

Широко распространена разновидность шифра маршрутной перестановки, называемая «шифром вертикальной перестановки». В нем снова используется прямоугольник, в который сообщение вписывается обычным способом (по строкам слева направо). Выписываются буквы по вертикали, а столбцы при этом берутся в порядке, определяемом ключом. Пусть, например, этот ключ таков: (5,1,4,7,2,6,3), и с его помощью надо зашифровать сообщение:

ВОТПРИМЕРШИФРАВЕРТИКАЛЬНОЙПЕРЕСТАНОВКИ

Впишем сообщение в прямоугольник, столбцы которого пронумерованы в соответствии с ключом:

29

5

 

1

 

4

 

7

 

2

 

6

 

3

ВОТ ПР ИМ Е Р ШИФР А

ВЕ Р Т ИКА ЛЬ Н ОЙПЕ Р Е С Т АНО

ВКИ - - - -

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

ОРЕЬЕКРФИЙА-МААЕО-ТШРНСИВЕВЛРВИРКПН-ПИТОТ-

Число ключей шифра вертикальной перестановки не более m!, где m — число столбцов таблицы. Как правило, m гораздо меньше, чем длина текста n (сообщение укладывается в несколько строк по m букв), а, значит, и m! много меньше n!.

В случае, когда ключ шифра вертикальной перестановки не рекомендуется записывать, его можно извлекать из какого-то легко запоминающегося слова или предложения. Для этого существует много способов. Наиболее распространенный состоит в том, чтобы приписывать буквам числа в соответствии с обычным алфавитным порядком букв. Например, пусть ключевым словом будет ПЕРЕСТАНОВКА. Присутствующая в нем буква А получает номер 1. Если какая-то буква входит несколько раз, то ее появления нумеруются последовательно слева направо. Поэтому второе вхождение буквы А получает номер 2. Поскольку буквы Б в этом слове нет, то буква В получает номер 3 и так далее. Процесс продолжается до тех пор, пока все буквы не получат номера.

Таким образом, мы получаем следующий ключ: П Е Р Е С Т А Н О В К А

9 4 10 5 11 12 1 7 8 3 6 2

Можно использовать и усложненную перестановку. Для этого открытый текст записывается в матрицу по определенному

30