ШИФРОВАНИЕ СООБЩЕНИЙ С ПОМОЩЬЮ КЛАССИЧЕСКИХ МЕТОДОВ ПОДСТАНОВКИ
создание документов онлайн
Документы и бланки онлайн

Обследовать

ШИФРОВАНИЕ СООБЩЕНИЙ С ПОМОЩЬЮ КЛАССИЧЕСКИХ МЕТОДОВ ПОДСТАНОВКИ

художественная культура



Отправить его в другом документе Tab для Yahoo книги - конечно, эссе, очерк Hits:



дтхзйе дплхнеофщ

КРОНБОРГ- <ЗАМОК ГАМЛЕТА>
Гомеровская Греция
ГРАНОВИТАЯ ПАЛАТА МОСКОВСКОГО КРЕМЛЯ
НА ЗЕМЛЕ СВЯЩЕННОЙ ОЛИМПИИ
МИРСКИЙ ЗАМОК В БЕЛАРУСИ
КОРОЛЕВСКИЕ ДВОРЦЫ БЕНИНА
Итальянское Возрождение
ЭРМИТАЖ - «пустынный уголок»
РИМСКАЯ НАЦИОНАЛЬНАЯ ГАЛЕРЕЯ
МЮНХЕНСКИЙ МУЗЕЙ ЕСТЕСТВОЗНАНИЯ И ТЕХНИКИ
 

ШИФРОВАНИЕ СООБЩЕНИЙ С ПОМОЩЬЮ КЛАССИЧЕСКИХ МЕТОДОВ ПОДСТАНОВКИ


           

I. Теоретические сведения


       Одной из наиболее простейших среди схем шифрования подстановкой, стойких к частотному криптоанализу, является схема Виженера (опубликована в 1586 году). Таблица представляет  собой  квадратную  матрицу  размерности  m  x  m,   где m – число символов алфавита. В первой строке матрицы записываются буквы алфавита в порядке очерёдности, во второй – та же последовательность букв, но со сдвигом влево на одну позицию, в третьем – со сдвигом на две позиции и т.д. Освободившиеся справа места заполняются вытесненными влево буквами, записываемыми в естественной последовательности.

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

       Процесс шифрования включает в себя следующую последовательность действий:

·   под каждой буквой шифруемого текста записываются буквы ключа, повторяющие его 414c29ge требуемое число раз;




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

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

* – для ознакомления с общей идеей и принципами построения шифров подстановки и перестановки смотрите подраздел 1.3 книги Б.Шнайера «Прикладная криптография» (t:\ Электронная библиотека\ Безопасность и защита информации\  Книги\).

                         Расшифрование текста выполняется  вследующей  последовате-льности:

      – под буквами шифртекста сверху последовательно записываются буквы ключа;

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

     – полученный текст группируется в слова по смыслу.

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

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

Открытый текст разбивается на пары символов xixi+1, после чего каждая пара символов открытого текста заменяется на пару символов из таблицы следующим образом:

     1) если символы находятся в одной строке, то каждый из символов пары заменяется на стоящий правее его (за последним символом в строке следует первый);

2) если символы находятся в одном столбце, то каждый символ пары заменяется на символ, расположенный  ниже его в столбце (за последним нижним символом следует верхний);

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

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

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

                                       j ® (aj + b)(mod m),

где j – числовой код символа открытого текста; m – основание (число символов) алфавита исходного текста; (aj + b)(mod m) – числовой код соответствующего символа шифртекста. При этом a,b – целые числа, такие, что 0<a,b<m,  при этом числа a и m – взаимно-простые (понятие взаимной простоты чисел смотрите в файле “Основные понятия теории чисел”.doc).

Например, для латинского алфавита m = 26. Примем a = 3, b = 5. Очевидно, что числа 3 и 26   взаимно-простые. Тогда можно получить следующее соответствие между числовыми кодами символов открытого текста и числовыми кодами символами кодами символов вектора замены, а также между символами исходного текста и символами вектора замены:

                                                                                                          

j

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

Алфавит

исходного текста

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

aj+b

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

Вектор

замены

F

I

L

O

R

U

X

A

D

G

J

M

P

S

V

Y

B

E

H

K

N

Q



T

W

Z

C


       В этом случае результат шифрования текста, например, WE ARE STUDENTS на основе данной таблицы будет таким: TR FER HKNORSKH. Так, например, в данном случае символ W исходного текста, имеющий порядковый номер в алфавите 22, отображается в символ T, имеющий порядковый номер в алфавите 19, поскольку (3×22 + 5)mod26 = 19.

      Следует заметить, что независимо от величины m, нумерацию символов алфавита нужно начинать с 0, поскольку в противном случае будет иметь место ситуация, когда одному из символов исходного алфавита невозможно будет поставить в соответствие какой-либо  символ  по  причине  того,  что  результатом   преобразования (aj + b)(mod m) окажется 0.  Так, для приведенного примера, если нумерацию символов латинского алфавита производить с 1, то символу G, который будет в этом случае иметь порядковый номер j = 7, невозможно будет поставить в соответствие никакой символ, так как (3j + 5)(mod 26) = 0.

      В дополнение к описанным методам рассмотрим метод гаммирования.  Данный метод основан на сложении символов  исходного текста  и некоторой последовательности символов , формируемой на основе ключа, по модулю, равному длине алфавита n. Наиболее распространен случай, когда , тогда i-ый символ (бит) шифртекста получается как , где  - символ операции сложения по модулю 2, а - элемент гамма-оследовательности, генерируемой датчиком псевдослучайных чисел (ПСЧ). Для дешифрования шифртекста, т.е. восстановления исходного текста, получатель зашифрованного сообщения выполняет преобразование  , т.е. каждый бит полученного зашифрованного текста складывает по модулю 2 с  соответствующим битом  гамма-последовательности.

      Например, если первые значения, сгенерированные датчиком ПСЧ, являются 21794567, то открытый текст ПРИКАЗ зашифруется следующим образом (при этом код каждой буквы открытого текста записывается в двоичном виде с использованием пяти разрядов, а каждая цифра гамма-последовательности – четырех):



      Затем каждому пятиразрядному двоичному числу ставится в соответствие буква исходного алфавита. При этом размерность алфавита должна быть не более 32-х символов, чтобы имелась возможность их представить в виде пятиразрядного двоичного числа, а нумерация символов должна производиться с 0 до 31.

    В данном случае, если исключить из алфавита, к примеру, символ Ъ,  чтобы сделать его размерность, равной 32, получим что первый символ слова П отобразится в символ У, поскольку  Тогда шифртекстом будет последовательность символов  УУФЯИР.


II. Практическая часть

     

        Постановка задачи.

       Зашифровать свою фамилию, используя:

      1) методы шифрования подстановкой  на основе:

          а) схемы Виженера, используя в качестве ключа слово БЛАГО;

          б) шифра Плэйфера, если шифрующая схема задана табл. 1.1.

          в) аффинной  системы  Цезаря,  где  в  качестве  ключа  выступает пара чисел (a, b), значения которых заданы в таблице вариантов исходных данных (табл. 1.2).

Историческая справка. Слово «аффинный» происходит от латинского affine, означающего «смежный», «соседний».

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

 


                     Таблица 1.1    


А

Ь

М

Б

Ц

,

 Г

Н

Ч

Ы

О

Д

Ъ

Е

В

У

Ю

Э

Ж

Р

К

И

З

Й

С

Х

Щ

П

Т

Л

.

Я

-

Ш

Ф

_



              Таблица 1.2


Номер

варианта

a

b

Номер

варианта

a

b

1

5

9

14

7

6

2

7

8

15

3

8

3

3

6

16

9

5

4

9

7

17

5

9

5

5

7

18

7

8

6

7

8

19

3

7

7

3

8

20

9

6

8

9

9

21

5

10

9

5

8

22

7

4

10

7

9

23

3

9



11

3

7

24

5

7

12

9

6

25

7

5

13

5

4

26

7

6





       Решение типовых примеров.

Пусть необходимо зашифровать сообщение DATA MANAGEMENT SYSTEM с помощью схемы Виженера при ключевом слове REGIN. В этом случае полная матрица (26 х 26) и подматрица шифрования имеют вид, показанный  соответственно табл. 1.3 и 1.4.


                      Таблица 1.3                                                 Таблица 1.4

ABCDEFGH…XYZ

BCDEFGHI… YZA

CDEFGHIJ … ZAB

DEFGHIJK … ABC

.

.

.

ZABCDEFG…WXY

ABCD   . . . XYZ

RSTU   . . .

EFGH   . . . 

GHIJ     . . .  

 IJKL     . . . 

 NOPQ  . . .










    


Тогда процесс шифрования иллюстрируется табл. 1.5.

                           

                                                                         Таблица 1.5

Шифруемый текст

DATA MANAGEMENT SYSTEM

 Ключ

    REGI  NREGINREGI    NREGIN

Текст после замены (шифртекст)

    UEZI  ZRRGORDITB    FPWZMZ









Так, например, под первой буквой шифруемого текста D располагается буква R ключа. В первой строке подматрицы (см. табл. 1.4.) находим букву D и выбираем из данной  подматрицы букву, находящуюся  на пересечении строки  с начальной буквой R (первой буквой ключа) и столбца, начальной буквой которого является D. Этой буквой является U. Затем выполняется замена исходной буквы D на букву U в выходном тексте и т.д.


Что касается шифрования с помощью шифра Плейфера,  то текст “ШИФР ПЛЕЙФЕРА” с помощью шифрующей таблицы вида





А

Х

Б

М

Ц

В

Ч

Г

Н

Ш

Д

О

Е

Щ

,

Ж

У

П

.

З

Ъ

Р

И

Й

С

Ь

К

Э

Т

Л

Ю

Я

_

Ы

Ф

-

 






преобразуется в шифртекст

РДИЫЙ-.ПУЮМ.. (Здесь, в частности, первые два символа Ш и И находятся в разных строках и столбцах, поэтому, согласно п.3 в описании шифра Плейфера, эти символы заменяются на  Р и Д).


       Вопросы для самоконтроля.


1. Какой схеме криптопреобразования Вы бы отдали предпочтение и почему:

   а) схеме Виженера или аффинной системе Цезаря;

   б) схеме Виженера или схеме гаммирования;

   в) аффинной системе Цезаря или схеме гаммирования;

   г) аффинной системе Цезаря или шифру Плейфера?

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