О й ш в _ щ з р б _ д ш у т о о _ т м к ч з щ
, ы у р о р р ж ...
Таблица 2
Таблица вариантов замены
Идея фактически была предложена в 16-м веке французским дипломатом Блезом де Вижинером. Вместо цифр им использовались буквы, и ключевая последовательность представляла собой слово.
Легко видеть, что алгоритм многозначной замены определяет совокупность преобразований шифра, отличающихся параметром - ключевой последовательностью шифрования (ключом). Это позволяет строить надежную криптосистему на основании фиксированного (несекретного) алгоритма шифрования, но секретного ключа, который регулярно меняется. Теоретически такой шифр поддается дешифрованию на основе частотного анализа употребления букв, но для этого требуется, чтобы длина шифросообщений, сделанных с этим ключом, значительно превышала длину самого ключа.
На основе алгоритма многозначной замены были разработаны и нашли широкое применение (особенно во время второй мировой войны) дисковые шифровальные машины. Сконструированные на принципах, используемых в арифмометрах, шифрмашины содержали 6-10 дисков на общей оси, которые могли дискретно поворачиваться один относительно другого, создавая на каждом такте уникальное сочетание из всех возможных сочетаний угловых положений.
Принцип работы дисков был одновременно открыт четырьмя изобретателями из разных стран (американец - 1918 г., голландец - 1919 г., швед - 1919г., немец Артур Шербиус - 1927 г.). Именно он сконструировал энигму (в переводе с немецкого – «загадка»).
В диски из электроизоляционного материала были впрессованы латунные контактные площадки (соответствующие отдельным буквам) с каждой стороны, которые попарно соединялись внутри диска. Таких дисков (разных) в комплект шифрмашины входило больше, чем использовалось в работе. Кроме изменения набора рабочих дисков, они могли нанизываться на ось в произвольном порядке, начальный угол установки каждого диска также можно было менять.
При шифровании на контакты одного из крайних дисков подается напряжение, которое последовательно передается на связанный контакт последнего диска, чем осуществляется замена буквы исходного текста на другую букву. Затем выполняется дискретный угловой поворот первого диска, и возможно, связанных с ним других дисков, устанавливая следующие сочетания замены. Для дешифровки сообщения на шифрмашине достаточно было поменять местами вход и выход.
Такие шифрмашины использовались в войсковых соединениях и посольствах для взаимного обмена секретными сообщениями. Для работы утверждался секретный график их модификации, например:
- еженедельно устанавливается новый набор рабочих дисков;
- ежедневно устанавливается новый порядок дисков на оси;
- для каждого нового сообщения некоторому получателю в течении дня устанавливается новое начальное угловое положение дисков.
Этим фактически неявно определялось множество ключей, используемых в алгоритме шифрования.
Оригинальный вариант алгоритма многозначной замены был предложен в 1917 году американским инженером Г.С.Вернамом. Он предназначался для шифрования текстов, представленных в двоичном (телеграфном) коде (код Бодо). Главным элементом был секретный (двоичный) ключ, цифры которого как бы надписывались над исходным кодом, а шифрсообщение (также в двоичном коде) формировалось применением операции «исключающее ИЛИ» (сложение по модулю два) к двоичным цифрам исходного текста и ключа. Как было установлено значительно позднее (доказал К.Шеннон), стойкость шифра Г.С. Вернама очень высока, если длина ключа не меньше длины сообщения (практически нераскрываемый шифр). Казалось бы проблема решена, но здесь имеются трудности с ключами (их качество, хранение, уничтожение, транспортировка). На каждом этапе существует угроза их безопасности. Поэтому этот метод используют в исключительных случаях.
Первый кто «породил» метод замены был Юлий Цезарь. Он каждую букву циклически заменял третьей буквой. Например:
А Б В Г Д Е Ж З И К Л М Н О П Р С Т и т.д. , тогда зашифрованное слово
ЗОВ будет выглядеть следующим образом: МТЖ.
В средние века использовали квадрат Полибия. Это первый табличный способ шифрования. Для этого брался квадрат 6х6 в котором по строкам вписаны все буквы алфавита. Метод заключается в том, чтобы заменить исходную букву буквой, которая стоит ниже по квадрату Полибия. Алгоритм усложнится , если буквы в квадрате расположить не по алфавиту, а в беспорядке. Все эти шифр замены легко вскрываются, т.к. есть закономерность появления сдвоенных букв.
Рассмотрим более подробно методы замены.