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

Учебное пособие 800354

.pdf
Скачиваний:
17
Добавлен:
01.05.2022
Размер:
1.89 Mб
Скачать

9. ОСНОВЫ КРИПТОГРАФИЧЕСКОЙ ЗАЩИТЫ ИНФОРМАЦИИ И ПОСТРОЕНИЯ ЧАСТНЫХ ВИРТУАЛЬНЫХ СЕТЕЙ

Одним из важнейших направлений ЗИ с незапамятных времен стала тайнопись. Необходимость еѐ возникла из потребностей тайной передачи как военных, так и дипломатических сообщений. Для обозначения всей области тайной связи используется термин "криптология" (cryptos – тайный, logosсообщение). Криптология содержит в себе 2 направления: криптографию и криптоанализ. Криптография направлена на обеспечение конфиденциальности и аутентичности (подлинности) информации. Криптоанализ направлен на взлом систем защиты, разработанных криптографами. Научная криптография началась с публикации статьи К. Шеннона "Теория связи в секретных системах" в 1949 г. Криптография – это совокупность методов преобразования данных, направленных на то, чтобы сделать эти данные бесполезными для противника или конкурента. Такие преобразования нужны для обеспечения как конфиденциальности, так и целостности информации. Существует два вида криптосистем (систем шифрования): 1) симметричные одноключевые криптосистемы (с секретным ключом); 2) асимметричные двухключевые криптосистемы (с открытым ключом). Классическими, ранее широко применявшимися на практике являются симметричные криптосистемы. В них используются одинаковые секретные ключи в блоках шифрования и расшифрования

(рис.28).

231

Рис.28. Модель симметричной криптосистемы

В асимметричной системе используются два раз-

ных ключа для того, чтобы исключить передачу одного

секретного ключа по каналу, как это делается в симмет-

ричных системах. В асимметричной системе по каналу

передается только открытый ключ, а секретный ключ

остается на месте его генерации.

Любая попытка со стороны перехватчика расшифровать шифротекст С для получения открытого текста М или зашифровать свой собственный текст М' для получения правдоподобного шифротекста С', не имея подлинного ключа, называется криптоаналитической атакой. Если такие атаки не достигают цели, то криптосистема является криптостойкой. Обычно показателем криптостойкости является интервал времени, необходимый для раскрытия шифра.

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

232

1) перестановок; 2) замены; 3) гаммирования; 4)

основанные на аналитических преобразованиях данных.

Шифры перестановок являются самыми простыми. Суть их в перестановке символов текста по определенному правилу.

Пример 1. Спартанский шрифт "Скитала" Правители Спарты в 5 веке шифровали свои посла-

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

Пример 2. Шифрующие таблицы. В качестве ключа в них используется размер таблицы и ключевое слово.

Без ключевого слова шифрующая таблица напоминает шифр "скитала". Применим в качестве ключевого слово из 5 букв, например, Туман.

4

5

2

1

3

 

1

2

3

4

5

т

у

М

а

н

 

а

М

н

т

у

з

т

А

и

4

 

и

А

4

з

т

а

и

Ч

с

0

 

с

Ч

0

а

и

н

я

а

ь

0

 

ь

А

0

н

я

я

н

л

1

 

 

1

Л

 

я

н

В результате имеем шифротекст иа4зт сч0аи ьа0ня

1л_ян.

Возможны многократные перестановки по столбцам и строкам. Системы легко взламываются.

233

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

16

3

2

13

 

О

и

р

М

5

10

11

6

 

Е

о

с

Ю

9

6

7

12

 

В

т

а

Ь

4

15

14

1

 

Л

г

о

П

Результат: оирм еосю втаь лгоп.

Шифры простой замены.

Система шифрования Цезаря. Суть шифра: каждая буква исходного текста заменяется на другую букву того же алфавита, при этом заменяющая буква определяется путем смещения по алфавиту на К букв. Ключом является число К. Пример для К=3.

ABCDEFGHIJKLNNOPQRSTUVWXYZ

XYZABCDEFGHIJKLMNOPQRSTUVW

VENI VIDI VICT

YHQL YLGL

YLFL

 

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

Подстановка, определяемая ключом К, является криптографическим преобразованием Ек, которое шифрует n-грамму (x1, x2, x3, …xn-1) открытого текста в n-грамму

(y1,y2,…yn-1) шифротекста, где yi=Ek(xi), 0 i n. Ek: j (j + k)*(mod n), 0 K m,

где m – количество букв в алфавите;

j – числовой код буквы открытого текста; j+K – числовой код буквы шифротекста.

234

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

Усовершенствование этой системы – это введение ключевого слова. Пусть ключевое слово – защита. Введем его с ключом К=3 и далее без повтора букв запишем алфавит:

АБ В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч

ШЩ Ь Ы Ъ Э Ю Я

ЭЮЯ З А Щ И Т Б В Г Д Е Ж Й К Л МН О П Р С У Ф ХЦ Ч Ш Ь Ы Ъ

Зная ключевое слово и шифр К можно легко вос-

становить текст.

Шифры сложной замены.

Для шифров сложной замены характерно то,, что берут не один алфавит, а много алфавитов. Впервые многоалфавитную подстановку применил в 1566 г. Леон Батист Альберти в "Трактате о шифре". Примером шифра сложной замены является шифр Гронсфельда,

235

который является модификацией шифра Цезаря число-

вым ключом.

Пример 3. Пусть числовой ключ 3216, сообщение ЗАНЯТИЕ НАЧАЛОСЬ

3 21

6 3 2 1 6 3 21 6 3 21

КВОЕХКЖУГЩБССУЫ Далее в соответствии с цифрой ключа делается

смещение по алфавиту относительно указанной в сообщении буквы и получается новое сообщение. Аналогичен шифр в более общей системе шифрования Вижинера (так называемая таблица или квадрат Вижинера). Еще большее усложнение введено в системы шифрования двойными квадратами, когда весь текст разбивается на пары букв (биграммы), затем первые буквы шифруют по одной таблице, а вторые – по другой по правилу прямоугольника (две буквы исходного текста и две буквы шифротекста образуют прямоугольник). Это так называемый шифр Чарльза Уинстона, изобретенный им в 1856 г. и применявшийся широко Германией в 1 мировую войну.

 

Т

У

М

А

Н

Б

В

Г

 

Д

Е

Ж

 

И

Й

К

Л

 

 

 

 

З

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

О

П

Р

С

Ф

Х

Ц

Ч

 

Ш

Щ

Ь

Ы

Ъ

Э

Ю

Я

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

З

 

К

О

Н

Б

В

Г

А

236

Д

 

Ж

И

Й

Л

М

П

 

Е

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Р

С

Т

У

Ф

Х

Ц

Ч

Ш

Щ

Ь

Ы

Ъ

Э

Ю

Я

Пример 4. Пусть имеется текст "Занятия начались". Текст разбивается на биграммы:

ЗА НЯ ТИ ЯН АЧ АЛ ИС ЬЬ. Каждая биграмма шифруется по двум таблицам, первая буква по одной таблице, а вторая - по другой. Например, З Е и А А, в результате ЗА ЕА. А в целом получается шифрограмма ЕА ГЪ ОД ЪГ ГС БЗ ЕФ ТР. С орфографическим ошибками, но сообщение зашифровано.

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

Наконец, кратко о методе гаммирования. Под гаммированием понимаетсяпроцесс наложения по определенному закону гаммы шифра на открытые данные. Гамма шифра – это псевдослучайная последовательность, выработанная по заданному алгоритму. Процесс шифрования заключается в генерации гаммы шифра и наложении полученной гаммы на исходный открытый текст обратимым образом, например, с использованием операции по модулю 2. Из известных процедур генерации псевдослучайных целых чисел наиболее часто применяется линейный конгруэнтный генератор, который вырабатывает последовательность чисел, используя со-

237

(a Yi 1

отношение Yi b) mod m, где а,b,m-константы. Текущее значение числа Yi получают из предыдущего

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

k

 

h j ai 1

0;

j 0

 

k 1

 

ai k

h j ai j .

j 0

 

Решением этой системы уравнений является последовательность чисел a0 , a1 , a2 ... так называемого поля Галуа.

Концепция асимметричных криптосистем с

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

N P Q . По значению N практически невоз-

можно определить P и Q. Другой пример однонаправленной функции – это модульная экспонента с фиксированным основанием и модулем. Пусть А и N – целые числа, такие, что 1 A N . Определим множество

238

Z N 0,1,2,..., N 1 . Тогда модульная экспонента с основанием А по модулю N представляет собой функцию

f

AN

(x)

Ax (mod N) ,

где x-

целое

число,

 

 

 

 

 

 

1 x N

1.

Если y A x , то естественно x

logA ( y) ,

поэтому задачу обращения

функции

f AN (x) называют

задачей дискретного логарифма или задачей дискретного логарифмирования, то есть необходимо для известных целых А, N и y найти число х такое, что

Ax mod N y . Алгоритмов решения этой задачи за приемлемое время до сих пор не найдено.

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

Криптосистемы шифрования данных RSA (R. Rivest, A. Shamir, A. Adleman).

Пусть открытый ключ Kв , секретный ключ zв ,

сообщение М и криптограмма С принадлежат множеству целых чисел Z m 0,1,2....N 1 , где N- это модуль: N PQ , P и Q - случайные простые числа (как прави-

ло, равной длины). Открытый ключ выбирается случайным образом так, чтобы выполнялись условия

1 Kв (N ), HOД (Kв , (N )) 1; (N ) (P 1)(Q 1).

Функция Эйлера (N) указывает количество чисел в интервале от 1 до N, которые взаимно просты с N. Наибольший общий делитель НОД K в , (N )) 1 - это условие того, что ключ K в и функция (N) должны быть взаимно простыми.

239

Секретный ключ zв вычисляется из условия

zв Kв 1(mod (N)) или zв Kв

1 (mod(P 1)(Q 1)).

Если бы можно было разложить Т на сомножители P и Q, тогда можно было бы найти функцию Эйлера (N) (P 1)(Q 1) , а затем по K в найти zв , но ука-

занное разложение практически невозможно.

Процедура шифрования и дешифрирования в криптосистеме RSA.

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

1. Выбирает два произвольных больших числа P и

Q.

 

 

 

 

 

 

 

 

 

 

 

2.

Вычисляет значение модуля N

PQ .

 

 

 

 

3.

Вычисляет функцию Эйлера

 

 

 

 

 

4.

(n) (P

1)(Q 1) .

 

 

 

 

 

 

5.

Выбирает случайным образом значение откры-

того

 

ключа

K в с

учетом условий 1

K в

(N ) и

НОД( K в , (N ) )=1.

 

 

 

 

 

 

 

6.

Вычисляет

значение

секретного

ключа

z

в

K

1

(mod

(N))

1 .

 

 

 

 

 

в

 

 

 

 

 

 

 

 

 

7.

Пересылает для А по незащищенному каналу

пару чисел N и Kв .

Пользователь А - отправитель:

240