Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Коды и шифры.DOC
Скачиваний:
68
Добавлен:
18.08.2019
Размер:
2.07 Mб
Скачать

Модульное сложение и вычитание букв

Нередко возникает необходимость в сложении или вычитании последовательностей букв с применением числа 26 в качестве модуля. Для этого преобразуем каждую букву в двузначное число, начиная с A=00 и заканчивая Z=25, как показано в таблице 1.1. Подобно операциям с числами, каждая пара букв складывается и вычитается по модулю 26 отдельно, без "переноса" или "заимствования" из следующей пары. По завершении операций сложения или вычитания результирующие числа обычно преобразуются обратно в буквы.

Таблица 1.1

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

00

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

Пример 1.2

  1. Прибавить TODAY к NEVER по модулю 26.

  2. Вычесть NEVER из TODAY по модулю 26.

Решение

(1) TODAY= 19áá14áá03áá00áá24

NEVER= 13áá04áá21áá04áá17

Сумма 32áá18áá24áá04áá41áá06á18á24á04á15=GSYEP.

(2) TODAY= 19áá14áá03áá00áá24

NEVER= 13áá04áá21áá04áá17

Разность 06áá10á-18á-04áá07áá06á10á08á22á07=GKIWH.

Род

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

Заключение

В конце книги можно найти, во-первых, математическое приложение, предназначенное для тех читателей, которых заинтересует математическая теория, лежащая в основе некоторых упомянутых в тексте систем, проблем, исследований и вероятностных вопросов. Как правило, читателю достаточно близкого знакомства с чистой математикой в объеме английской стандартной программы обучения Уровня А, но иногда для детальных объяснений необходимы серьёзные математические познания. В таких случаях я пытаюсь дать упрощенное описание проблемы, отсылая интересующихся читателей к более серьёзным работам. В тексте книги ссылки на математическое приложение обозначаются М1, М2, и т.д. Во-вторых, в конце книги даны решения задач. В-третьих, приведен список литературы, в котором статьи и книги, относящиеся, например, к главе 5, обозначаются [5.1],[5.2] и т.д.

Глава 2. От Юлия Цезаря до простой замены Шифры Юлия Цезаря и их вскрытие

В шифре, которым пользовался Юлий Цезарь, каждая буква алфавита сдвигается на три позиции по циклу, так что A заменяется на D, B - на E,..., W - на Z, X - на A, Y - на B, и Z - на C. И хотя Юлий Цезарь сдвигал буквы только на три позиции, он вполне мог бы (по своему желанию) сдвигать их на любое число позиций от 1 до 25. Поэтому шифр Юлия Цезаря имеет 25 вариантов. Отсюда вытекает, как такой шифр можно вскрыть: запишем шифрованное сообщение, а под ним на 25 строчках выписываем 25 вариантов, которые получаются сдвигом каждой буквы на 1, 2, 3, ... ,25 позиций соответственно. Одна из этих 25 строк будет содержать исходное сообщение.

Пример 2.1

Текст сообщения, зашифрованного по системе Юлия Цезаря, имеет вид

VHFX TM HGVX

Требуется дешифровать сообщение.

Решение

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

Таблица 2.1

Сдвиг

Сообщение

0

VHFX TM HGVX

1

WIGY UN IHWY

2

XJHZ VO JIXZ

3

YKIA WP KJYA

4

ZLJB XQ LKZB

5

AMKC YR MLAC

6

BNLD ZS NMBD

7

COME AT ONCE

Мы видим, что в шифре использован сдвиг на 19 позиций, поскольку шифрованный текст, будучи сдвинутым на 7 позиций вперед, дает открытый текст. Это означает, что для получения шифрованного текста открытый текст нужно сдвинуть на (26-7)=19 позиций. Весьма вероятно (если предполагать, что ни при каком другом сдвиге не получается осмысленного сообщения), что мы правильно дешифровали это сообщение, и поэтому нет необходимости выписывать оставшиеся варианты. Такое допущение о единственности решения вполне обоснованно, когда шифрованное сообщение содержит более пяти-шести знаков; но если сообщение очень короткое, возможных решений может быть несколько. Так, например, если получено шифрованное сообщение вида

DSP

то возможны три решения, как показано в таблице 2.2.

Таблица 2.2

Сдвиг

Сообщение

2

FUR

8

LAX

15

SHE

Они не имеют особого смысла как сообщения, хотя можно вообразить ситуации, в которых они могут содержать важную информацию. Например, это могут быть имена лошадей, которым предстоит победить на скачках. Этот пример приведен главным образом для иллюстрации важного и часто возникающего вопроса: какой длины должно быть шифрованное сообщение, чтобы решение было единственным? Ответ на этот вопрос зависит от системы шифрования и может быть практически любым числом от "примерно четырех-пяти букв" (для шифра Юлия Цезаря) до "бесконечности" (для системы с одноразовым блокнотом, как мы увидим в главе 7).

Заканчивая рассказ о шифре Юлия Цезаря, приведем довольно забавный пример неоднозначного решения. Пусть шифрованный текст выглядит так:

MSG

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

Таблица 2.3

Сдвиг

Сообщение

2

OUI

12

YES