На протяжении почти четырехсот лет проблема оставалась.
Как может Алиса спроектировать шифр, который скроет характерные признаки сообщения,
исключив, таким образом, утечку информации?
Ответ в случайности.
Представьте, что Алиса бросает 26-гранные кости
для создания длинного списка случайных смещений,
после чего сообщает его Бобу вместо кодового слова.
Теперь для шифрования сообщения
Алиса может использовать этот список случайных смещений.
Во избежание повторений, важно, чтобы этот список смещений
был по длине равен длине сообщения.
После этого сообщение отправляется Бобу, который его расшифровывает,
используя тот же список случайных смещений, полученный от Алисы.
В таком случае у Евы возникают проблемы по причине того,
что итоговое зашифрованное сообщение
имеет два мощных свойства:
Во-первых, смещения не образуют повторяющийся шаблон.
Во-вторых, зашифрованное сообщение имеет равномерное распределение частот вхождения букв,
потому что нет частотных различий,
и, следовательно, нет утечки информации.
Теперь Ева не может взломать шифр.
Это самый надежный из возможных методов шифрования,
и он появился в конце 19-го века.
Метод известен как шифр Вернама или схема одноразовых блокнотов.
Для визуализации надежности такого метода,
нужно понимать, что появляется комбинаторный взрыв (стремительный рост числа вариантов для перебора).
Например, шифр Цезаря смещает каждую букву на одинаковую величину,
которая находится в промежутке от 1 до 26.
Если Алиса решит зашифровать свое имя,
то сделать это можно будет одним из 26 возможных вариантов.
Достаточно небольшое число вариантов, можно запросто проверить их все.
Такой метод называют методом грубой силы (брутфорс).
По сравнению с этим шифрование по схеме одноразовых блокнотов
смещает каждый символ
на различную величину от 1 до 26.
Представьте число возможных вариантов шифрованного сообщения.
Оно равняется 26, умноженному само на себя 5 раз,
что равно почти 12 миллионам.
Иногда это трудно представить.
Допустим, Алиса написала свое имя на одном листе бумаги, где этот лист
лежит первым в стопке всех возможных вариантов шифрования.
Насколько велика, по-вашему, будет итоговая стопка таких листов?
Для почти 12 миллионов возможных вариантов при пятибуквенном сообщении
стопка бумаги будет просто огромная,
около километра в высоту.
Когда Алиса шифрует свое имя по схеме одноразовых блокнотов,
с точки зрения Евы -- взломщика, -- это то же самое,
что достать случайным образом один лист
из стопки всех возможных вариантов шифрования всех пятибуквенных сообщений,
каждое из которых равновероятно может оказаться верным.
Это идеальная защищенность в действии.