Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка (сети).doc
Скачиваний:
6
Добавлен:
19.11.2019
Размер:
435.71 Кб
Скачать

Трансформационные шифры Моноалфавитный шифр

Самый простой тип трансформационного шифра должен брать каждый символ в сообщении и заменять его в зашифрованном тексте другим символом. Символы для зашифрованного текста обычно берутся из того же алфавита, что и сообщения, но это не обязательно. Система называется моноалфавитной из-за того, что каждый символ сообщения всегда преобразуется в один и тот же символ зашифрованного текста. Еще Юлий Цезарь использовал систему преобразования. Он заменял каждую букву сообщения на третью букву из того же алфавита. Термин “подстановка Цезаря” теперь применяется к любому шифру с подобным сдвигом между символами сообщения и алфавитом шифра, даже если этот сдвиг не равен трем. Более безопасной является произвольная подстановка, которая изменяет порядок подстановочных символов. Проблема со всеми моноалфавитными шифрами состоит в том, что их очень просто атаковать с использованием частотного анализа.

Другая проблема с произвольной подстановкой – длина ключа, т.к. должно быть определено преобразование каждого символа. Это непросто запомнить. В простой системе подобного рода, иногда называемой подстановкой Виженера используется специальное кодовое слово, чтобы определить несколько первых подстановок, и затем выставляются остальные буквы. Ключ в форме кодового слова легко запомнить, но шифр очень беден, т.к. последние символы алфавита (такие как w и y) вряд ли будут вообще зашифрованы.

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

C

O

D

E

A

B

F

G

H

I

J

K

L

M

N

P

Q

R

S

T

U

V

W

X

Y

Z

Рис. 3 Шифр с подстановками Виженера

Полиалфавитный шифр

Одним из способов преодоления атаки частного анализа является использование разных алфавитов преобразования, зависящих от позиции символа в сообщении. Данная система называется полиалфавитным шифром Веженера. В этом случае для определения числа подстановок Цезаря, которые будут использоваться для кодирования, применяется специальное кодовое слово. Например, пусть этим кодовым словом будет “code”. Оно определяет четыре алфавита, первый – со сдвигом 2, второй – со сдвигом 14, третий – со сдвигом 3 и четвертый со сдвигом 4.

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

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

2

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

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

а

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

T

H

I

S

I

S

A

M

E

S

S

A

G

E

T

O

B

E

C

O

D

E

D

V

V

L

W

K

G

D

Q

G

G

V

E

I

S

W

S

D

S

F

S

F

S

G

б

Рис. 4 Полиалфавитный шифр Веженера:

а – таблица шифрования

б – пример кодирования

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]