Выбрать главу

Шифр Виженера. Этот шифр удобнее всего представлять себе как шифр Цезаря с переменной величиной сдвига. Чтобы знать, на сколько сдвигать очередную букву открытого текста, заранее договариваются о способе запоминания сдвигов. Сам Виженер предлагал запоминать ключевое слово, каждая буква которого своим номером в алфавите указывает величину сдвига. Ключевое слово повторяется столько раз, сколько нужно для замены всех букв открытого текста. Например, ключевое слово ВАЗА означает следующую последовательность сдвигов букв открытого текста: 3191319131913191... Например, открытый текст КРИПТОГРАФИЯ при таком способе шифрования преобразуется в шифртекст НССРХПЛСГХСА.

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

Подумайте сами:

1. Поэкспериментируйте с шифрами Цезаря и Виженера.

2. Попробуйте найти способ вскрытия шифра «Сциталь» (не зная диаметра сциталя).

1.5. Что такое ключ?

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

В древнейшем шифре «Сциталь», описанном в этюде 1.4, ключом является диаметр сциталя. При этом не меняя принцип построения шифра, можно для шифрования разных сообщений пользоваться сциталями разных диаметров.

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

Зачем же нужен ключ? Из предыдущего изложения понятно, что придумывание хорошего шифра — дело трудоемкое. Поэтому желательно увеличить «время жизни» хорошего шифра и использовать его для шифрования как можно большего количества сообщений. Но при этом возникает опасность, что противник уже разгадал (вскрыл) шифр и читает защищаемую информацию. Если же в шифре есть сменный ключ, то, заменив ключ, можно сделать так, что разработанные противником методы уже не дают эффекта. Этот принцип особенно полезен и важен в тех случаях, когда применимы дорогостоящие шифрующие машины (шифрмашины) в больших сетях связи.

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

Вернёмся к формальному описанию основного объекта криптографии (этюд 1.3). Теперь в него необходимо внести существенное изменение — добавить недоступный для противника секретный канал связи для обмена ключами:

Практическое построение таких сетей связи для большого обмена шифрованными сообщениями стало ещё более дорогостоящим мероприятием.

Подумайте сами:

1. Что является ключом в шифре Виженера.

1.6. Атака на шифр. Стойкость шифра

Под атакой на шифр понимают попытку вскрытия этого шифра.

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

Понятие стойкости шифра является центральным для криптографии. Хотя качественно понять его довольно легко, но получение строгих доказуемых оценок стойкости для каждого конкретного шифра — проблема нерешённая. Это объясняется тем, что до сих пор нет необходимых для решения такой проблемы математических результатов. (Мы вернемся к обсуждению этого вопроса в этюде 2.6.) Поэтому стойкость конкретного шифра оценивается только путем всевозможных попыток его вскрытия и зависит от квалификации криптоаналитиков, атакующих шифр. Последнюю процедуру иногда называют проверкой стойкости.

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