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

Емельянова Н.З., Партыка Т.Л., Попов И.И. - Защита информации в персональном компьютере (Профессиональное образование) - 2009

.pdf
Скачиваний:
266
Добавлен:
27.03.2018
Размер:
10.26 Mб
Скачать

ми буквами того же самого или некоторого другого алфавита. Таблица замены может иметь следующий вид (табл. 2.5).

Таблица 2.5. Таблица простой замены

Исходные

А

В

с

D

Е

F

G

Н

I

J

К

L

М

N

О

Р

Q

R

S

т

и

V

W

X

Y

Z

символы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

шифруемого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

текста

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с

 

 

Q

 

 

Заменяемые

S

р

X

L

R

Z

I

м

А

Y

Е

D

W

Т

В

G

V

N

J

0

F

н

и

к

символы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Используя эту таблицу, зашифруем текст:

In this book the reader will find a comprehensive

survey...

Получим следующее зашифрованное сообщение:

At omiy pbbe omr nrsirn fadd zail s xbwgnrmrtjafr

jcnfru ...

Однако такой шифр имеет низкую стойкость, так как за­ шифрованный текст имеет те же статистические характеристики, что и исходный. Например, текст на английском языке содержит символы со следующими частотами появления (в порядке убы­ вания): Е — 0,13, Т 0,105; А — 0,081, О 0,079 и т. д. В за­ шифрованном тексте наибольшие частоты появления в порядке убывания имеют буквы R — 0,12; О — 0,09, Aw N по 0,07.

Естественно предположить, что символом R зашифрована буква Е, символом О букв Г и т. д. Это действительно соот­ ветствует таблице замены. Дальнейшая расшифровка не состав­ ляет труда. Эти методы дешифровки хорошо известны из клас­ сической литературы (см., например, Артур Конан Дойль «Пля­ шущие человечки», или Алан Эдгар По «Золотой жук»).

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

Для повышения стойкости шифра используют полиалфавитные подстановки, в которых для замены символов исходного тек­ ста используются символы нескольких алфавитов.

Частным случаем рассмотренной полиалфавитной замены яв­ ляется так называемая монофоническая замена. Особенность это­

го метода состоит в том, что количество и состав алфавитов вы­ бираются таким образом, чтобы частоты появления всех симво­ лов в зашифрованном тексте были одинаковыми. При таком положении затрудняется криптоанализ зашифрованного текста с помощью его статистической обработки. Выравнивание частот появления символов достигается за счет того, что для часто встречающихся символов исходного текста предусматривается использование большего числа заменяющих элементов, чем для редко встречающихся. Пример монофонического шифра для английского алфавита показан в табл. 2.6. Шифрование осуще­ ствляется так же, как и при простой замене (т. е. по шифрующе­ му алфавиту № 1) с той лишь разницей, что после шифрования каждого знака соответствующий ему столбец алфавитов цикли­ чески сдвигается вверх на одну позицию. Таким образом, столб­ цы алфавита как бы образуют независимые друг от друга кольца, поворачиваемые вверх на один знак каждый раз после шифрова­ ния соответствующего знака. В качества примера зашифруем монофоническим шифром тот же текст, который шифровался простой заменой:

In this book the reader will find a comprehensive

survey ...

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

A (-,) VNG/LjpGZ+F.= h g ...

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

Шифрование методом перестановки заключается в том, что символы шифруемого текста переставляются по определенным

Таблица 2.6. Монофонический шифр для английского алфавита

 

 

 

 

 

 

 

 

 

Алфавит открытого текста

 

 

 

 

А В

С D Е F G Н I

J К L М N 0 р Q R S T

 

f N

Q

G т

Э

,

А е L - R

( с X г Z V - -

шифротекста

*

N Q

+

[

Р ) е L О R

У / X I = $ j

f

N

Q

]

т

D

,

А

е

L

А.

R

(

#

X

I

Z

V

 

 

к

N

Q

]

W

D

г

я

е

L

и

R

(

#

X

I

а

d

 

 

f N

Q

1 т D

,

А е L А. R

У

п

X I Z V С

 

*

N Q

G

1 D

Р )

е L О R ( С

X I = $ - -

 

R

N Q

+ W D г

я

е L и R

у /' X I а d

j

Алфавит

* N

Q

1

г D

р )

е

L О R

У

п X I

= $ с

f

N

Q

+

т

D

 

А

е

L

О

R

Y

/

X

I

Z

V

i

 

к

N

Q

G

W D г

Я е

L

и

R

(

с

X

I

а

d

--

 

*

N

Q

]

[

D

р )

е

L А R

(

#

X I

=

$

 

 

к N Q і

1 W D г

Я

е L и R

У

п X I а d с

и

V

w

X

Y

Z

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

w

s

h

u

К

t

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

Самая простая перестановка — написать исходный текст за­ дом наперед и одновременно разбить шифрограмму на пятерки букв. Например, из фразы

ПУСТЬ БУДЕТ ТАК, КАК МЫ ХОТЕЛИ,

получится такой шифротекст:

ИЛЕТО ХЫМКА ККАТТ ЕДУБЬ ТСУП.

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

ПУСТЬ-БУДЕТ-ТАККА-КМЫХО-ТЕЛИО.

Тогда шифрограмма, несмотря на столь незначительное из­ менение, будет выглядеть по-другому:

ОИЛЕТ ОХЫМК АККАТ ТЕДУБ ЬТСУП

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

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

п

X ;

л

 

И

р М т

 

ж

Ж

 

 

 

 

 

 

Ж

 

 

к ѵ

жЖЖ

Г

О У с

м

 

 

 

X

X '

ж ж Жж

 

й

о У г

м '

ЖЖ ж

 

р

 

 

 

 

у

 

Ж

 

Е р д

м ' Л ' К ' И '

 

 

Рис. 2.4. Зашифровка перестановкой с использование прямоугольной решетки (іа)\ решетка Кардано (б); зашифрованный фрагмент (в)

Для примера возьмем решетку 6 x 6 (причем количество строк может увеличиваться или уменьшаться в зависимости от длины исходного сообщения) и заполним ее по строкам. Если шифровать по диагоналям (стрелкам) сверху вниз с левого верх­ него угла, то в итоге получится такая шифрограмма:

П УУ СДК ТЕКХ ЬТАОА БТКТБП АМЕВР ЫЛГС ИДТ ЕУ Ф

Для окончательного оформление шифротекст может быть разбит на группы по 6 символов

ПУУСДК ТЕКХЬТ АОАБТП ТБМАМЕ ВРЫЛГС ИДТЕУФ

Интересным примером является р е ш е т к а К а р д а н о — метод перестановки (рис. 2.4, б ), базирующийся на решетчатой маске, устроенной таким образом, что при каждом повороте на 90° отверстия открывают участки чистой бумаги, а за 4 поворота «лист» (в данном случае 4x4) заполняется полностью. Читате­ лям предлагается самостоятельно расшифровать фрагмент текста на рис. 2.4, в.

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

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

Пример гаммирования приведен на рис. 2.5 — символы ис­ ходного текста и гаммы представляются в виде двоичного кода,

С им волы ш и ф р у ем о го те к с т а

б

у

д

ь

 

 

0 1 0 0 1 0

1 0 0 0 0 0

 

1 1 0 0 1 0

1 0 0 0 0 0

Зн аки гам м ы :

7

1

8

 

2

д еся ти ч н ы е

 

д во ичны е

0 0 0 1 1 1

0 0 0 0 0 1

 

0 0 1 0 0 0

0 0 0 0 1 0

С им волы за ш и ф р о в а н н о го те кста

о ю ю і

100001

 

т о ю

Ю О О Ю

Рис. 2.5. Пример шифрования гаммированием

затем соответствующие разряды складываются по модулю 2. Вместо сложения по модулю 2 при гаммировании можно ис­ пользовать и другие логические операции.

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

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

В качестве гаммы может быть использована любая последо­ вательность случайных символов, например, последовательность цифр числа 7г, числа е (основание натурального логарифма) и т. п. При шифровании с помощью ЭВМ последовательность гаммы может формироваться с помощью датчика псевдослучай­ ных чисел (ПСЧ) — известно несколько алгоритмов работы та­ ких датчиков, которые обеспечивают удовлетворительные харак­ теристики гаммы.

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

С = А х В; С, = Y^aiJbJ.

j = 1

Если матрицу А = (а0) использовать в качестве ключа, а вме­ сто компонента вектора В = (bj) подставить символы текста, то компоненты вектора С = (с,) будут представлять собой символы зашифрованного текста.

Приведем пример, взяв в качестве ключа квадратную матри­ цу третьего порядка

'14 8

А= 8 5 2

3 2 1

Заменим буквы алфавита цифрами, соответствующими их порядковому номеру в алфавите: А — О, Б — 1, в — 2, и т. д. То­ гда отрывку текста ватала будет соответствовать последователь­ ность 2, 0, 19, 0, 12, 0. По принятому алгоритму шифрования выполним необходимые действия с тройками символов:

Л4

С = А х В = 8

8

31

( 2 )

5

2

X 0

оо U\

= 54

U

2

0

W

К2Ъ)

П4

8

31

{

f96l

С = А х В = 8 5 2 X 12 = 60

U

2

ь

1 ° ,

W

При этом зашифрованный текст примет вид: 85, 54, 25, 96,

60, 24.

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

Матрицей, обратной данной А, называется матрица А"1, по­ лучающая из присоединенной матрицы делением всех ее эле­ ментов на определитель данной матрицы. В свою очередь при­ соединенной называется матрица, составленная из алгебраических дополнений Ау к элементам данной матрицы, которые вычисля­ ются по формуле:

Аѵ = (-1 )'+Ч

где Ау — определитель матрицы, получаемой вычеркиванием /-й строки и у-го столбца исходной матрицы А.

Определителем матрицы называется алгебраическая сумма п\ членов (для определителя п-ѵо порядка), составленная следую­ щим образом: членами служат всевозможные произведения п элементов матрицы, взятых по одному в каждой строке и в каж­ дом столбце, причем член суммы берется со знаком «+», если его индексы составляют четную подстановку, и со знаком «-» — в противоположном случае. Для матрицы третьего порядка, на­ пример, определитель вычисляется следующим образом:

 

А - ^ 1 1 ^ 2 2 ^ 3 3 + а

П а

2 Ъ а Ъ \ + а

\ 3 а 2 \ а

3 2

 

 

~ а

\ 1^ 23^32

“ ^ 12^ 21^33 ~ ^ 13^ 22^ 31-

 

 

Тогда процесс раскрытия выглядит так:

 

 

 

Г 1

-2

1 >

Г85^

(

ь 85--2

54 + 1

25 ^

m

А '1XС = -2

5

-4 X 54

= -2 •85 + 5

5 4 - 4

25 -

0

и

-4

6 ;

125,

и

85--4 - 54 + 6 • 25 ,

W

1 -2

1 >

f96l

 

1 96--2 •60 + 1 24 >

f< n

А '1X С = -2

 

 

 

 

 

 

 

5 -4 X 60 = -2 96 + 5 • 60- 4- 24 = 12

 

-4

6 J

W

 

1 96--4- 60 + 6 • 24 ,

l o J

Таким образом, получена последовательность знаков рас­ крытого текста 2, 0, 19, 0, 12, 0, что соответствует исходному тексту. Этот метод шифрования является формальным, что по­ зволяет легко реализовать его программными средствами.

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

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

следнее время разработаны специальные коды, имеющие целью сократить объем информации при записи ее в ЗУ. Специфика этих кодов заключается в том, что для записи часто встречаю­ щихся символов используются короткие двоичные коды, а для записи редко встречающихся — длинные.

Примером такого кода для английского языка может слу­ жить код Хаффмана, показанный в табл. 2.7.

Таблица 2.7. Коды Хаффмана

Символы

 

 

 

Кодовые последовательности

 

 

 

А

1

1

1

1

 

 

 

 

 

 

О

1

1

1

0

 

 

 

 

 

 

N

1

1

0

 

 

 

 

 

 

 

D

1

1

0

1

1

 

 

 

 

і

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

Р

1

1

0

1

0

1

 

1

 

 

V

1

1

0

1

0

0

1

і

 

 

К

1

1

0

1

0

0

0

1

1

 

1

 

Q

1

1

0

1

0

0

0

1

0

1

Z

1

1

0

1

0

0

0

1

0

0

X

1

1

0

1

0

0

0

0

1

 

J

1

1

0

1

0

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

R

1

0

1

1

 

 

 

 

 

 

I

1

0

1

0

 

 

 

 

 

 

Е

1

0

0

 

 

 

 

 

 

 

S

0

1

1

0

 

 

 

 

 

 

W

0

1

1

1

0

1

 

 

 

 

в

0

1

1

1

0

0

 

 

 

 

н

0

1

0

1

 

 

 

 

 

 

F

0

1

0

0

1

 

 

 

 

 

с

0

1

0

0

0

 

 

 

 

 

м

0

0

0

1

1

 

 

 

 

 

и

0

0

0

1

0

 

 

 

 

 

G

0

0

0

0

1

 

 

 

 

 

Y

0

0

0

0

0

 

 

1

 

1

 

 

 

 

 

 

 

 

 

Такое кодирование имеет криптографическую стойкость на уровне шифрования простой заменой.

При смысловом кодировании основной кодируемой едини­ цей является смысловой элемент текста. Для кодирования со­ ставляется специальная таблица кодов, содержащая перечень ко­ дируемых элементов и соответствующих им кодов. Введем, на­ пример, следующую кодовую таблицу:

Автоматизированные системы управления 001 Автоматизация управления 002 Осуществляет 415 Позволяет 632

Тогда предложение Автоматизированные системы управ­

ления позволяют осуществлять автоматизацию управле­

ния . после кодирования будет иметь вид: 001632 415 002...

Криптографические системы

Рассмотренные понятия в настоящее время объединяются в укрупненную концепцию к р и п т о г р а ф и ч е с к и х с и с т е м (криптосистем).

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

Используются, как правило, два типа криптосистем:

симметричные (одноключевые) системы, основанные на использовании закрытых, секретных ключей;

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

Одноключевая (классическая) криптография использует только одну единицу секретной информации — кл юч, знание которого позволяет отправителю зашифровать информацию, а получате­

лю — расшифровать ее (рис. 2.6). Именно эти операции шифро­ вания/расшифрования с большой вероятностью невыполнимы без знания секретного ключа. Поскольку обе стороны, владею­ щие ключом, могут как шифровать, так и расшифровывать ин­ формацию, такие алгоритмы преобразования называют симмет­ ричными или алгоритмами с секретным (закрытым) ключом.

«Секретный» ключ

Рис. 2.6. Симметричная криптосистема

При ее использовании возникает сложная задача обеспече­ ния надежного закрытого канала для обмена ключами.

Асимметричная система. В криптографии с открытым клю­ чом имеется два ключа, по крайней мере один из которых нель­ зя вычислить из другого. Один ключ используется отправителем для шифрования информации, закрытие которой необходимо обеспечить. Другой ключ используется получателем для расшиф­ ровки полученной информации. Бывают приложения, в которых один ключ должен быть несекретным, а другой — секретным. Алгоритмы преобразования с открытым и секретным ключами называют асимметричными, поскольку роли сторон, владеющих разными ключами из пары, различны (рис. 2.7).

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

Соседние файлы в предмете Геополитика