Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ю.В. Романец, П.А. Тимофеев - Защита информации...docx
Скачиваний:
12
Добавлен:
01.03.2025
Размер:
1.05 Mб
Скачать
  1. Ассоциативность. Оба способа заключения в скобки про­изведения подстановок щп2пз.

щ (Я2Я3) = (я-|Я2) Яз

дают одинаковый результат.

  1. Существование единичного элемента. Подстановка 5, оп­ределенная как

5(t) = t, 0 < t < m,

является единственным единичным элементом группы SYM(Zm)

по умножению:

5я = 5я для всех я е SYM(Zm).

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

яя"1 = 5.

Указанные свойства являются аксиомами группы. Ключ К подстановки для алфавита Zm представляет собой последовательность элементов симметричной группы из : К = (я0,Я1, •.•, Яр-1, ...),Япе§7М(2т), 0<п<оо.

Подстановка, определяемая ключом К, является криптогра­фическим преобразованием Ек, которое шифрует п-грамму (х0, x1p х2 Хп.,) открытого текста в п-грамму (у0, yi, у2 yn-i) шифртек­ста, где

И = щ(Х|), 0 < i < п,

для каждого л, п =1,2,3

Криптографическое преобразование Ек называется одноал- фавитной подстановкой, если значение я, одинаково для каждого i, i = 0,1,2,...; в противном случае преобразование. Ек называется многоалфавитной подстановкой.

На рис. 2.5 представлена схема реализации подстановки Ек.

Рис. 2.5. Схема подстановки Ек

Отметим характерные особенности подстановки Ек:

  • открытый текст шифруется побуквенно (буква за буквой);

» i-я буква у, шифртекста является функцией только i-й компонен­ты ключа К и i-й буквы х, открытого текста;

  • шифрование n-граммы (х0, х^ х2 xn_t) производится в соответ­ствии с формулой

(Уо. У1, Уг Уп-i) = Ек0. xi, х2 Xn_i).

Система Цезаря представляет собой одноалфавитную под­становку, которая шифрует n-грамму (х0, x1t х2,..., xn_t) открытого текста в n-грамму (уо, У1. Уг,...■ Уп-0 шифртекста согласно следую­щему правилу:

у, = Ек (х,). О < i < п, (2.3)

Ек : j —» (j + К) (mod n), 0 < К < m,

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

В отличие от шифра Цезаря, описанного в начале этого под­раздела, система шифрования Цезаря образует по существу се­мейство одноалфавитных подстановок для выбираемых значений ключа К, причем 0 < К < т.

Достоинством системы шифрования Цезаря является просто­та шифрования и расшифрования. К недостаткам системы Цезаря следует отнести следующие:

  • подстановки, выполняемые в соответствии с системой Цезаря, не маскируют частот появления различных букв исходного от­крытого текста;

  • сохраняется алфавитный порядок в последовательности заме­няющих букв; при изменении значения К изменяются только на­чальные позиции такой последовательности;

4* 51

  • число возможных ключей К мало;

  • шифр Цезаря легко вскрывается на основе анализа частот появ­ления букв в шифртексте.

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

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

Аффинная система подстановок Цезаря

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

Определим преобразование в такой системе:

Еа,ь'- zm->zm, Ea,b:t-^Ea,b(t), Ea,b(t) = at+ b (mod m), (2.4)

где a, b - целые числа, 0 < a, b < m, НОД (a, m) = 1.

В данном преобразовании буква, соответствующая числу t, заменяется на букву, соответствующую числовому значению (at + b) по модулю т.

Следует заметить, что преобразование Ea,b(t) является вза­имно однозначным отображением на множестве Zm только в том случае, если наибольший общий делитель чисел а и т, обозна­чаемый как НОД (а,т), равен единице, т.е. а и m должны быть взаимно простыми числами.

Например, пусть m = 26, а = 3, b = 5. Тогда, очевидно, НОД (3,26) = 1, и мы получаем следующее соответствие между число­выми кодами букв:

52

t

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

3t+5

5

8

11

14

17

20

23

0

3

6

9

12

15

18

21

24

1

4

7

10

13

16

19

22

25

2

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

А

В

С

D

E

F

G

H

I

J

К

L

M

N

О

p

Q

R

S

T

и

V

W

X

Y

z

F

I

L

О

R

U

X

A

D

G

J

M

P

S

V

Y

В

E

H

к

N

Q

T

w

z

С

Исходное сообщение НОРЕ преобразуется в шифртекст AVYR

Достоинством аффинной системы является удобное управле­ние ключами - ключи шифрования и расшифрования представля­ются в компактной форме в виде пары чисел (а,Ь). Недостатки аффинной системы аналогичны недостаткам системы шифрова­ния Цезаря.

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

Система Цезаря с ключевым словом

Система шифрования Цезаря с ключевым словом является одноалфавитной системой подстановки. Особенностью этой сис­темы является использование ключевого слова для смещения и изменения порядка символов в алфавите подстановки [79].

Выберем некоторое число к, 0<к<25, и слово или короткую фразу в качестве ключевого слова. Желательно, чтобы все буквы ключевого слова были различными. Пусть выбраны слово DIPLOMAT в качестве ключевого слова и число к = 5.

Ключевое слово записывается под буквами алфавита, начи­ная с буквы, числовой код которой совпадает с выбранным числом к:

0 1 2 3 4 5 10 15 20 25

ABCDEFGH I JKLMNOPQRSTUVWXYZ D I Р L О М A T

Оставшиеся буквы алфавита подстановки записываются по­сле ключевого слова в алфавитном порядке:

5

ABCDEFGH I JKLMNOPQRSTUVWXYZ V W X Y ZD I PLOMAT BCEFGHJ KNQRSU

Теперь мы имеем подстановку для каждой буквы произволь­ного сообщения.

Исходное сообщение SEND MORE MONEY

шифруется как HZBY TCGZ TCBZS

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

КАК ДЫМ ОТЕЧЕСТВА НАМ СЛАДОК И ПРИЯТЕН

и число к = 3 порождают следующую таблицу подстановок:

О 3

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

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

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

Шифрующие таблицы Трисемуса

В 1508 г. аббат из Германии Иоганн Трисемус написал печат­ную работу по криптологии под названием "Полиграфия". В этой книге он впервые систематически описал применение шифрующих таблиц, заполненных алфавитом в случайном порядке [32]. Для получения такого шифра замены обычно использовались таблица для записи букв алфавита и ключевое слово (или фраза). В табли­цу сначала вписывалось по строкам ключевое слово, причем по­вторяющиеся буквы отбрасывались. Затем эта таблица дополня­лась не вошедшими в нее буквами алфавита по порядку. Посколь­ку ключевое слово или фразу легко хранить в памяти, то такой подход упрощал процессы шифрования и расшифрования.

Поясним этот метод шифрования на примере. Для русского алфавита шифрующая таблица может иметь размер 4x8. Выберем в качестве ключа слово БАНДЕРОЛЬ. Шифрующая таблица с та­ким ключом показана на рис. 2.6.

Б

А

Н

Д

Е

р

О

л

Ь

В

г

ж

3

и

и

к

М

П

С

т

У

ф

X

ц

ч

Ш

Щ

ы

ъ

э

ю

я

Рис. 2.6. Шифрующая таблица с ключевым словом БАНДЕРОЛЬ

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

Например, при шифровании с помощью этой таблицы сооб­щения

ВЫЛЕТАЕМПЯТОГО

получаем шифртекст

ПДКЗЫВЗЧШЛЫЙСЙ

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

Биграммный шифр Плейфейра

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

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

Процедура шифрования включает следующие шаги.