14.1.4. Классические шифры

Лекции по Теоретическим основам цифровой связи   

14. Шифрование и дешифрование

14.1.4. Классические шифры

Одним из ранних примеров моноалфавитного шифра был шифр Цезаря, который использовался Юлием Цезарем во времена его Галльских походов. Каждая буква исходного текста заменяется новой, полученной путем сдвига алфавита. На рис. 14.2, а изображено такое шифрующее преобразование, состоящее из трех циклических сдвигов алфавита. Если использовать этот алфавит Цезаря, сообщение "now is the time" ("время пришло!") шифруется следующим образом.

открытый текст

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

шифрованный текст

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

а)

 

1

2

3

4

5

1

A

B

C

D

E

2

F

G

H

IJ

K

3

L

M

N

O

P

4

Q

R

S

T

U

5

V

W

X

Y

Z

б)

Рис.14.2.  примеры шифров: а) алфавит Цезаря со сдвигом 3; б) квадрат Полибиуса.

Исходный текст:   N   O   W   I    S   T   H   E   T   I   M   E

Шифрованный      Q   R    Z   L   V   W  K  H   W  L   P   H

текст:

Дешифрующий ключ — это просто число сдвигов алфавита; с выбором нового ключа код изменяется. Еще одна классическая система шифрования, изображенная на рис. 14.2, б, называется квадратом Полибиуса (Polybius square). Вначале объединяются буквы I и J и трактуются как один символ (в дешифрованном сообщении значение этой "двойной буквы" легко определяется из контекста). Получившиеся 25 символов алфавита размещаются в таблицу размером 55. Шифрование любой буквы производится с помощью выбора соответствующей пары чисел — строки и столбца (или столбца и строки). Ниже приведен пример шифрования того же сообщения "now is the time" с помощью квадрата Полибиуса.

Исходный текст:   N    O    W    I     S     Т     Н     Е     Т     I     M     E

Шифрованный      33   43   25  42   34   44    32    51   44   42   23     51 текст:

Код изменяется путем перестановки букв в таблице 55.

Прогрессивный ключ Тритемиуса, который изображен на рис. 14.3, является примером полиалфавитного шифра. Строка, обозначенная как сдвиг 0, совпадает с обычным порядком букв в алфавите. Буквы в следующей строке сдвинуты на один символ влево с циклическим сдвигом оставшихся позиций. Каждая последующая строка получается с помощью такого же сдвига алфавита на один символ влево относительно предыдущей строки. Это продолжается до тех пор, пока в результате циклических сдвигов алфавит не будет смещен на все возможные позиции. Один из методов использования такого алфавита заключается в выборе первого символа шифрованного сообщения из строки, полученной при сдвиге на 1 символ, второго символа — из строки, полученной при сдвиге на 2 символа, и т.д. Ниже приведен пример сообщения, зашифрованного подобным образом.

открытый текст

 

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

сдвиг

0

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

 

1

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

A

 

2

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

 

3

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

 

4

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

 

5

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

 

6

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

 

7

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

 

8

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

 

9

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

 

10

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

 

11

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

 

12

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

 

13

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

 

14

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

 

15

P

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

 

16

Q

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

 

17

R

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

 

18

S

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

 

19

T

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

 

20

U

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

 

21

V

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

 

22

W

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

 

23

X

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

 

24

Y

Z

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

 

25

Z

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

Рис. 14.3. Прогрессивный ключ Тритемиуса

Исходный текст:          N   O   W   I    S    Т     Н     Е      Т     I     M     E Шифрованный текст:  O   Q    Z  M   X   Z     O     M     C     S     X     Q

Существует несколько интересных способов использования прогрессивного шифра Тритемиуса. В одном из них, называемом методом ключа Вигнера (Vigener key method), применяется ключевое слово (keyword). Этот ключ диктует выбор строк для шифрования и дешифрования каждого последующего символа в сообщении. Предположим, что в качестве ключа выбрано слово "TYPE"; тогда сообщение, зашифрованное с применением метода Вигнера, выглядит следующим образом.

Ключ:                   T     Y     P    E    T    Y    P     E     T    Y     P     E

Исходный текст:  N    O    W    I     S     T   H     E     T     I     M    E

Шифрованный     G    M    L    M   L      R  W    I      M   G     B     I
текст:

Здесь первая буква ключа (Т) указывает, что в качестве строки для шифрования первой буквы открытого текста выбирается строка, начинающаяся с Т (сдвиг 19). Следующей выбирается строка, начинающаяся с Y (сдвиг 24), и т. д. Разновидностью этого метода является так называемый метод автоматического (явного) ключа Вигнера (Vigener auto (plain) key method), когда в качестве образующего ключа используется единственная буква или слово. Этот ключ дает начальную строку или строки для шифрования первого или нескольких первых символов открытого текста аналогично предыдущему примеру. Затем в качестве ключа для выбора шифрующей строки используются символы исходного текста. В приведенном ниже примере в качестве образующего ключа использована буква "F".

Ключ:                    F    N   O    W     I     S    T     H     E     T     I    М

Исходный текст:  N    O   W    I      S    T    H     E     T     I     M    E

Шифрованный     S    B     K   E     A    L    A     L    X     B    U     Q

текст:

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

Последняя разновидность метода Вигнера — это метод автоматического (шифрованного) ключа Вигнера (Vigenere auto (cipher) key method), подобный простому методу ключа; в нем также используются образующий ключ и обратная связь. Отличие состоит в том, что после шифрования с помощью образующего ключа, каждый последующий символ ключа в последовательности берется не из символа исходного текста, а из символа шифрованного текста. Ниже приведен пример, который должен помочь понять принцип работы данного метода; как и ранее, в качестве начального ключа используется буква "F".

Ключ:                    F     S     G     C     K    C     V    C    G    Z     H     T

Исходный текст:  N    O     W     I     S     T     H     E    T    I      M     E

Шифрованный     S     G     C     K     C   V     C     G    Z    H     T      X
текст:

Хотя каждый символ ключа может быть найден из предшествующего ему символа шифрованного текста, функционально он зависит от всех предшествующих символов в сообщении и плюс основного ключа. Таким образом, имеется эффект рассеивания статистических свойств исходного текста вдоль шифрованного текста, что делает статистический анализ очень сложным для криптоаналитика. Слабым звеном описанного здесь примера шифрования с использованием ключа является то, что шифрованный текст содержит знаки ключа, которые будут публично выставлены через общедоступный канал "на всеобщее обозрение". Для того чтобы предотвратить такое публичное разоблачение, можно использовать вариации этого метода [3]. По нынешним стандартам схема шифрования Вигнера не является очень защищенной; основным вкладом Вигнера было открытие того, что неповторяющиеся ключевые последовательности можно создавать с использованием самих сообщений или функций от сообщений.







© Банк лекций Siblec.ru
Формальные, технические, естественные, общественные, гуманитарные, и другие науки.