Смекни!
smekni.com

Методические указания к лабораторным работам по курсу «Теория информациии и основы криптографии» (стр. 3 из 6)

Пример. правило подстановки для k =3 и ключа «информация»:

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

Шифрованный текст: эюинформацябвгдежзйклоп...

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

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

Шифры сложной замены называют многоалфавитными, так как для шифрования каждого символа исходного сообщения применяют свой шифр простой замены. Многоалфавитная подстановка последова­тельно и циклически меняет используемые алфавиты. При r-алфавитной подстановке символ х0 исходного сообщения за­ме­няется символом из алфавита Во, символ х1 символом из алфави­та B1, и так далее, символ хr-1 заменяется символом из алфавита Br-1, символ хr заменяется символом снова из алфавита Во, и т.д.

Общая схема многоалфавитной подстановки (r=4):

Входной символ х0 х1 х2 х3 х4 х5 х6 х7 х8 х9

Алфавит подстановки B0 B1 B2 B3 B0 B1 B2 B3 B0 B1

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

Для многоалфавитной подстановки Ек ключ подстановки К представляет собой последовательность подстановок из некоторого множества P:

К = {(π0, π1, … , πn-1), πiÎ P },n < ¥

В случае блочного шифра эта подстановка шифрует п-грамму (блок) открытого текста

(х0, х1, х2, … , хn-1) в п-грамму (y0, y1, y2, … , yn‑1) шифртекста в соответствии с формулой:

yi = πi (хi), 0 £ i < n, п = 1, 2, 3, ... .

При n®¥ мы приближаемся к теоретически стойкой одноразовой системе шифрования.

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

Диск Альберти. Многоалфавитные шифры замены предложил и ввел в практику криптографии Леон Батист Альберти, который также был известным архитектором и теоретиком искусства. Он же впервые выдвинул идею повторного шифрования, которая в виде идеи многократного шифрования лежит в основе всех современных шифров с секретным ключом. Кроме шифра многоалфа­витной замены, Альберти также подробно описал устройства для его реализации. Диск Альберти представляет собой систему из внешнего неподвижного и внутреннего подвижного дисков, на которые нанесены символы алфавита и цифры. На внешнем в алфавитном порядке, на внутреннем в произвольном. Ключом шифрования являются порядок букв на внутреннем диске и начальное положение внутреннего диска относительно внешнего. После шифрования слова внутренний диск сдвигался на один шаг. Количество алфавитов r в нем равно числу символов на диске.

Шифр Цезаря многоалфавитный. В отличие от простого шифра Цезаря, многоалфавит­ный или система шифрования Цезаря образуется множеством одноалфавитных подстановок, определяемых функциями шифрования Еk для различных значений ключа k, причем 0 £ k < m, где m-основание алфавита.

В соответствии с этой системой буква xÎZm открытого текста преобразуется в букву yÎZm шифртекста согласно следующему правилу:

Еk : y = (x + k) mod m,

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

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

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

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

Сообщение

В

О

С

Т

О

Ч

Н

Ы

Й

Э

К

С

П

Р

Е

С

С

Ключ

2

7

1

8

2

7

1

8

2

7

1

8

2

7

1

8

2

Шифртекст

Д

Х

Т

Ь

Р

Ю

О

Г

Л

Д

Л

Щ

С

Ч

Ж

Щ

У

Чтобы зашифровать первую букву сообщения В, исполь­зуя первую цифру ключа 2 , нужно отсчитать вторую по порядку букву от В, получается первая буква шифртекста Д.

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

Система шифрования Вижинера впервые была опубликована в 1586 г. и является одной из старейших и наиболее известных многоалфавитных систем. Свое название она получила по имени француз­ского дипломата XVI века Блеза Вижинера.

Этот шифр многоалфавитной замены можно описать таблицей шифрования, называемой таблицей (квадратом) Вижинера. Размер таблицы Вижинера равен длине алфавита. Первая строка имеет цифровой ключ «0» и заполняется всеми символами по алфавиту, вторая имеет цифровой ключ «1» и заполняется теми же символами, сдвинутыми вправо на один символ по кругу, и далее. k‑ая имеет цифровой ключ «к-1» и заполняется теми же символами, сдвинутыми вправо на (к-1) символ по кругу.

Приведем фрагмент таблицы Вижинера для русского алфавита.

а

б

в

г

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

0

а

б

в

г

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

1

б

в

г

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

2

в

г

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

ъ

3

г

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

ъ

э

4

д

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

ъ

э

ю

5

е

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

ъ

э

ю

я

6

ж

з

и

й

к

л

м

н

о

п

р

с

т

у

ф

х

ц

ч

ш

щ

ь

ы

ъ

э

ю

я

а

Таблица Вижинера используется для зашифрования и расшифрования. Она имеет два входа: