
Криптографическая стойкость
В 1945 году Клод Шеннон написал работу (рассекреченную только после Второй мировой войны в 1949 г.), в которой доказал абсолютную стойкость шифра Вернама. То есть перехват шифротекста не даёт никакой информации о сообщении. С точки зрения криптографии, невозможно придумать систему безопаснее шифра Вернама. Требования к реализации подобной схемы достаточно нетривиальны, поскольку необходимо обеспечить наложение уникальной гаммы, равной длине сообщения, с последующим её гарантированным уничтожением. В связи с этим коммерческое применение шифра Вернама не так распространено в отличие от схем с открытым ключом и он используется, в основном, для передачи сообщений особой важности государственными структурами.
Приведём доказательство абсолютной криптографической стойкости. Пусть сообщение представлено двоичной последовательностью длины . Распределение вероятности сообщений может быть любым. Ключ так же представлен двоичной последовательностью той же длины но с равномерным распределением для всех ключей.
В соответствии со схемой шифрования, произведём шифротекст, покомпонентно суммируя по модулю 2 последовательности открытого текста и ключа:
Легальный пользователь знает ключ и осуществляет расшифрование:
Найдём вероятностное распределение N-блоков шифротекстов, используя формулу:
Результат подтверждает известный факт о том, что сумма двух случайных величин, одна из которых имеет равномерное распределение, является случайной величиной с равномерным распределением. Таким образом, в нашем случае распределение шифротекстов равномерное. Запишем совместное распределение открытых текстов и шифротекстов:
Найдём условное распределение
так как ключ и открытый текст являются независимыми случайными величинами. Итого:
Подстановка правой части этой формулы в формулу для совместного распределения даёт
Что доказывает независимость шифротекстов и открытых текстов в этой системе. Это и означает абсолютную криптографическую стойкость.
Область применения Примерный вид страницы шифроблокнота
В настоящее время шифрование Вернама используется достаточно редко. Это связано с тем, что современные методы криптографии развиты достаточно хорошо для того, чтобы удовлетворять потребностям пользователей. Однако с развитием технологий и с увеличением доступных компьютерных мощностей, растёт и вероятность успешной атаки. Современные носители данных могут хранить огромное количество случайных ключей, а современные генераторы случайных чисел позволяют производить случайные ключи достаточного для использования в шифре Вернама качества. Всё это повышает актуальность использования шифра Вернама.
На практике можно один раз физически передать носитель информации с длинным истинно случайным ключом, а потом по мере необходимости пересылать сообщения. На этом основана идея шифроблокнотов: шифровальщик по дипломатической почте или при личной встрече снабжается блокнотом, каждая страница которого содержит ключи. Такой же блокнот есть и у принимающей стороны. Использованные страницы уничтожаются.
Кроме того, если есть два независимых канала, в каждом из которых вероятность перехвата низка, но отлична от нуля, шифр Вернама также полезен: по одному каналу можно передать зашифрованное сообщение, по другому — ключ. Для того чтобы расшифровать сообщение, перехватчик должен прослушивать оба канала.
Шифр Вернама может применяться, если есть односторонний защищённый канал: ключ передаётся в одну сторону под защитой канала, сообщения в другую сторону защищаются ключом.
Не является шифром Вернама, но близка к нему схема одноразовых кодов: например, кодовое слово «Альфа» означает «Возвращаюсь».