В криптографии одноразовый блокнот ( OTP ) — это метод шифрования , который невозможно взломать , но который требует использования одноразового предварительного общего ключа , который больше или равен размеру отправляемого сообщения. В этом методе открытый текст сопоставляется со случайным секретным ключом (также называемым одноразовым блокнотом ). Затем каждый бит или символ открытого текста шифруется путем объединения его с соответствующим битом или символом из блокнота с использованием модульного сложения . [1]
Полученный шифртекст будет невозможно расшифровать или взломать, если выполнены следующие четыре условия: [2] [3]
Также было математически доказано, что любой шифр со свойством идеальной секретности должен использовать ключи с фактически теми же требованиями, что и ключи OTP. [4] Цифровые версии шифров одноразового шифрблокнота использовались странами для критически важной дипломатической и военной связи , но проблемы безопасного распределения ключей делают их непрактичными для большинства приложений.
Впервые описанный Фрэнком Миллером в 1882 году [5] [6] одноразовый блокнот был заново изобретен в 1917 году. 22 июля 1919 года Гилберту Вернаму был выдан патент США 1,310,719 на операцию XOR , используемую для шифрования одноразового блокнота. [7] Полученная из его шифра Вернама , система представляла собой шифр, который объединял сообщение с ключом, считываемым с перфоленты . В своей первоначальной форме система Вернама была уязвима, поскольку ключевая лента представляла собой цикл, который повторно использовался всякий раз, когда цикл делал полный цикл. Одноразовое использование появилось позже, когда Джозеф Моборн понял, что если бы ключевая лента была полностью случайной, то криптоанализ был бы невозможен. [8]
Часть названия «прокладка» происходит от ранних реализаций, где ключевой материал распространялся в виде прокладки бумаги, что позволяло отрывать и уничтожать текущий верхний лист после использования. Для сокрытия прокладка иногда была настолько мала, что для ее использования требовалось мощное увеличительное стекло . КГБ использовало прокладки такого размера, что они могли поместиться на ладони [9] или в скорлупе грецкого ореха . [10] Для повышения безопасности одноразовые прокладки иногда печатались на листах легковоспламеняющейся нитроцеллюлозы , так что их можно было легко сжечь после использования.
Термин «шифр Вернама» неоднозначен, поскольку некоторые источники используют «шифр Вернама» и «одноразовый блокнот» как синонимы, в то время как другие называют «шифром Вернама» любой аддитивный потоковый шифр , включая те, которые основаны на криптографически безопасном генераторе псевдослучайных чисел (CSPRNG). [11]
Фрэнк Миллер в 1882 году был первым, кто описал систему одноразового шифрблокнота для защиты телеграфной связи. [6] [12]
Следующая система одноразового шифрблокнота была электрической. В 1917 году Гилберт Вернам (из корпорации AT&T ) изобрел [13] и позже запатентовал в 1919 году ( патент США 1,310,719 ) шифр, основанный на технологии телетайпа . Каждый символ в сообщении электрически объединялся с символом на перфорированной бумажной ленте ключа. Джозеф Моборн (тогда капитан армии США , а позже начальник Корпуса связи ) понял, что последовательность символов на ленте ключа может быть совершенно случайной и что, если это так, криптоанализ будет более сложным. Вместе они изобрели первую систему одноразовой ленты. [11]
Следующим развитием стала система бумажных блокнотов. Дипломаты долгое время использовали коды и шифры для конфиденциальности и минимизации расходов на телеграф . Для кодов слова и фразы преобразовывались в группы чисел (обычно 4 или 5 цифр) с использованием словаря, похожего на кодовую книгу . Для дополнительной безопасности секретные числа могли быть объединены (обычно модульным сложением) с каждой группой кодов перед передачей, при этом секретные числа периодически менялись (это называлось супершифрованием ). В начале 1920-х годов три немецких криптографа (Вернер Кунце, Рудольф Шауфлер и Эрих Ланглотц), которые занимались взломом таких систем, поняли, что их никогда не взломать, если для каждой группы кодов использовать отдельное случайно выбранное аддитивное число. У них были дубликаты бумажных блокнотов, напечатанных строками случайных числовых групп. Каждая страница имела серийный номер и восемь строк. Каждая строка имела шесть пятизначных чисел. Страница использовалась в качестве рабочего листа для кодирования сообщения, а затем уничтожалась. Серийный номер страницы отправлялся вместе с закодированным сообщением. Получатель должен был отменить процедуру и затем уничтожить свою копию страницы. Министерство иностранных дел Германии ввело эту систему в эксплуатацию к 1923 году. [11]
Отдельной идеей было использование одноразового блокнота с буквами для непосредственного кодирования открытого текста, как в примере ниже. Лео Маркс описывает изобретение такой системы для британского Управления специальных операций во время Второй мировой войны , хотя в то время он подозревал, что она уже была известна в сильно разрозненном мире криптографии, например, в Блетчли-парке . [14]
Окончательное открытие было сделано теоретиком информации Клодом Шенноном в 1940-х годах, который осознал и доказал теоретическую значимость системы одноразовых блокнотов. Шеннон представил свои результаты в секретном отчете в 1945 году и опубликовал их открыто в 1949 году. [4] В то же время советский теоретик информации Владимир Котельников независимо доказал абсолютную безопасность одноразовых блокнотов; его результаты были представлены в 1941 году в отчете, который, по-видимому, остается секретным. [15]
Существует также квантовый аналог одноразового блокнота, который может использоваться для обмена квантовыми состояниями по одностороннему квантовому каналу с идеальной секретностью, что иногда используется в квантовых вычислениях. Можно показать, что для обмена n-кубитным квантовым состоянием по одностороннему квантовому каналу требуется общий секрет из не менее 2n классических битов (по аналогии с результатом, что для обмена n-битным сообщением с идеальной секретностью требуется ключ из n битов). Схема, предложенная в 2000 году, достигает этой границы. Один из способов реализации этого квантового одноразового блокнота — разделить 2n-битный ключ на n пар битов. Чтобы зашифровать состояние, для каждой пары битов i в ключе следует применить вентиль X к кубиту i состояния тогда и только тогда, когда первый бит пары равен 1, и применить вентиль Z к кубиту i состояния тогда и только тогда, когда второй бит пары равен 1. Расшифровка включает в себя повторное применение этого преобразования, поскольку X и Z являются своими собственными инверсиями. Можно показать, что это совершенно секретно в квантовой среде. [16]
Предположим, что Алиса хочет отправить сообщение hello
Бобу . Предположим, что два блокнота, содержащие одинаковые случайные последовательности букв, были каким-то образом заранее изготовлены и надежно выданы обоим. Алиса выбирает подходящую неиспользованную страницу из блокнота. Способ сделать это обычно заранее оговаривается, например, «использовать 12-й лист 1 мая» или «использовать следующий доступный лист для следующего сообщения».
Материал на выбранном листе является ключом для этого сообщения. Каждая буква из блокнота будет объединена предопределенным образом с одной буквой сообщения. (Обычно, но не обязательно, назначать каждой букве числовое значение , например, a
0, b
1 и т. д.)
В этом примере техника заключается в объединении ключа и сообщения с помощью модульного сложения , что мало чем отличается от шифра Виженера . Числовые значения соответствующих букв сообщения и ключа складываются по модулю 26. Таким образом, если ключевой материал начинается с XMCKL
, а сообщение — hello
, то кодирование будет выполнено следующим образом:
приветственное сообщение 7 (з) 4 (д) 11 (л) 11 (л) 14 (о) сообщение+ 23 (X) 12 (M) 2 (C) 10 (K) 11 (L) ключ= 30 16 13 21 25 сообщение + ключ= 4 (E) 16 (Q) 13 (N) 21 (V) 25 (Z) (сообщение + ключ) mod 26 EQNVZ → шифртекст
Если число больше 25, то остаток после вычитания 26 берется в модульной арифметике. Это просто означает, что если вычисления «проходят» Z, последовательность начинается снова с A.
Таким образом, шифротекст, который нужно отправить Бобу, равен EQNVZ
. Боб использует соответствующую ключевую страницу и тот же процесс, но в обратном порядке, чтобы получить открытый текст . Здесь ключ вычитается из шифротекста, снова используя модульную арифметику:
EQNVZ шифртекст 4 (E) 16 (Q) 13 (N) 21 (V) 25 (Z) шифртекст− 23 (X) 12 (M) 2 (C) 10 (K) 11 (L) ключ= −19 4 11 11 14 шифртекст – ключ= 7 (h) 4 (e) 11 (l) 11 (l) 14 (o) шифртекст – ключ (по модулю 26) привет → сообщение
Аналогично предыдущему, если число отрицательное, то к нему добавляется 26, чтобы число стало равным нулю или больше.
Таким образом, Боб восстанавливает открытый текст Алисы, сообщение hello
. И Алиса, и Боб уничтожают ключевой лист сразу после использования, тем самым предотвращая повторное использование и атаку на шифр. КГБ часто выдавало своим агентам одноразовые блокноты, напечатанные на крошечных листах флэш-бумаги, бумаги, химически преобразованной в нитроцеллюлозу , которая сгорает почти мгновенно и не оставляет пепла. [17]
Классический одноразовый блокнот шпионажа использовал настоящие блокноты крошечной, легко скрываемой бумаги, острый карандаш и немного устной арифметики . Метод может быть реализован сейчас как программа, использующая файлы данных в качестве входных данных (открытый текст), выходных данных (зашифрованный текст) и ключевого материала (требуемая случайная последовательность). Операция исключающего или (XOR) часто используется для объединения открытого текста и ключевых элементов и особенно привлекательна на компьютерах, поскольку обычно представляет собой собственную машинную инструкцию и поэтому очень быстра. Однако трудно гарантировать, что ключевой материал действительно случаен, используется только один раз, никогда не становится известным оппозиции и полностью уничтожается после использования. Вспомогательные части реализации программного одноразового блокнота представляют собой реальные проблемы: безопасная обработка/передача открытого текста, действительно случайные ключи и одноразовое использование ключа.
Продолжая пример выше, предположим, что Ева перехватывает зашифрованный текст Алисы: EQNVZ
Если бы Ева перепробовала все возможные ключи, она бы обнаружила, что ключ XMCKL
даст открытый текст hello
, но она также обнаружила бы, что ключ TQURI
даст открытый текст later
, столь же правдоподобное сообщение:
4 (E) 16 (Q) 13 (N) 21 (V) 25 (Z) шифртекст− 19 (T) 16 (Q) 20 (U) 17 (R) 8 (I) возможный ключ= −15 0 −7 4 17 шифртекст-ключ= 11 (l) 0 (a) 19 (t) 4 (e) 17 (r) шифртекст-ключ (mod 26)
На самом деле, из зашифрованного текста можно «расшифровать» любое сообщение с тем же количеством символов, просто используя другой ключ, и в зашифрованном тексте нет никакой информации, которая позволила бы Еве выбирать среди различных возможных прочтений зашифрованного текста. [18]
Если ключ не является действительно случайным, можно использовать статистический анализ, чтобы определить, какой из вероятных ключей является «наименее» случайным и, следовательно, с большей вероятностью будет правильным. Если ключ используется повторно, он будет, очевидно, единственным ключом, который производит осмысленные открытые тексты из обоих шифртекстов (шансы того, что какой-то случайный неправильный ключ также производит два осмысленных открытых текста, очень малы).
Одноразовые блокноты являются « информационно-теоретически безопасными », поскольку зашифрованное сообщение (т. е. шифртекст ) не предоставляет никакой информации об исходном сообщении криптоаналитику ( кроме максимально возможной длины [примечание 1] сообщения). Это очень сильное понятие безопасности, впервые разработанное во время Второй мировой войны Клодом Шенноном и математически доказанное Шенноном как верное для одноразового блокнота примерно в то же время. Его результат был опубликован в Bell System Technical Journal в 1949 году . [19] При правильном использовании одноразовые блокноты безопасны в этом смысле даже против противников с бесконечной вычислительной мощностью.
Шеннон доказал, используя соображения теории информации , что одноразовый блокнот обладает свойством, которое он назвал совершенной секретностью ; то есть, шифротекст C не дает абсолютно никакой дополнительной информации об открытом тексте . [примечание 2] Это потому, что (интуитивно), учитывая действительно равномерно случайный ключ, который используется только один раз, шифротекст может быть переведен в любой открытый текст той же длины, и все они равновероятны. Таким образом, априорная вероятность открытого текста сообщения M такая же, как апостериорная вероятность открытого текста сообщения M при наличии соответствующего шифротекста.
Обычные симметричные алгоритмы шифрования используют сложные шаблоны подстановки и транспозиции . Для лучших из них, используемых в настоящее время, неизвестно, может ли существовать криптоаналитическая процедура, которая может эффективно обратить (или даже частично обратить ) эти преобразования, не зная ключа, используемого во время шифрования. Асимметричные алгоритмы шифрования зависят от математических задач, которые считаются сложными для решения, таких как факторизация целых чисел или дискретный логарифм . Однако нет никаких доказательств того, что эти задачи сложны, и математический прорыв может сделать существующие системы уязвимыми для атак. [примечание 3]
Учитывая идеальную секретность, в отличие от обычного симметричного шифрования, одноразовый блокнот невосприимчив даже к атакам методом перебора. Перебор всех ключей просто выдает все открытые тексты, все из которых с равной вероятностью являются фактическим открытым текстом. Даже при частично известном открытом тексте атаки методом перебора не могут быть использованы, поскольку злоумышленник не может получить никакой информации о частях ключа, необходимых для расшифровки остальной части сообщения. Известные части открытого текста раскроют только части ключа, соответствующие им, и они соответствуют строго один к одному ; биты равномерно случайного ключа будут независимы .
Квантовая криптография и постквантовая криптография включают изучение влияния квантовых компьютеров на информационную безопасность . Питер Шор и другие показали, что квантовые компьютеры намного быстрее решают некоторые проблемы, от которых зависит безопасность традиционных асимметричных алгоритмов шифрования. Криптографические алгоритмы, зависящие от сложности этих проблем, станут устаревшими при наличии достаточно мощного квантового компьютера. Однако одноразовые блокноты останутся безопасными, поскольку идеальная секретность не зависит от предположений о вычислительных ресурсах злоумышленника.
Несмотря на доказательство Шенноном своей безопасности, одноразовый блокнот имеет серьезные недостатки на практике, поскольку для его использования требуется:
Одноразовые блокноты решают мало текущих практических проблем в криптографии. Высококачественные шифры широко доступны, и их безопасность в настоящее время не считается серьезной проблемой. [20] Такие шифры почти всегда проще использовать, чем одноразовые блокноты, поскольку объем ключевого материала, который должен быть правильно и безопасно сгенерирован, распространен и сохранен, намного меньше. [18] Кроме того, криптография с открытым ключом решает проблему распределения ключей.
Высококачественные случайные числа трудно генерировать. Функции генерации случайных чисел в большинстве библиотек языков программирования не подходят для криптографического использования. Даже те генераторы, которые подходят для обычного криптографического использования, включая /dev/random и многие аппаратные генераторы случайных чисел , могут использовать некоторые криптографические функции, безопасность которых не была доказана. Примером метода генерации чистой случайности является измерение радиоактивных выбросов . [21]
В частности, одноразовое использование абсолютно необходимо. Например, если и представляют два различных открытых текстовых сообщения и каждое из них зашифровано общим ключом , то соответствующие шифртексты задаются как:
где означает XOR . Если бы у злоумышленника были оба шифротекста и , то простое взятие XOR и дает XOR двух открытых текстов . (Это потому, что взятие XOR общего ключа с самим собой дает постоянный битовый поток нулей.) тогда эквивалентно работающему ключевому шифру. [ необходима цитата ]
Если оба открытых текста на естественном языке (например, английском или русском), то у каждого из них очень высокие шансы быть восстановленным эвристическим криптоанализом, возможно, с несколькими двусмысленностями. Конечно, более длинное сообщение может быть взломано только для той части, которая перекрывает более короткое сообщение, плюс, возможно, немного больше, дополнив слово или фразу. Самый известный эксплойт этой уязвимости произошел с проектом Venona . [22]
Поскольку блокнот, как и все общие секреты , должен передаваться и храниться в безопасности, а блокнот должен быть по крайней мере такой же длины, как и сообщение, часто нет смысла использовать одноразовый блокнот, так как можно просто отправить обычный текст вместо блокнота (поскольку оба могут быть одинакового размера и должны быть отправлены безопасно). [18] Однако после того, как очень длинный блокнот был безопасно отправлен (например, компьютерный диск, полный случайных данных), его можно использовать для многочисленных будущих сообщений, пока сумма размеров сообщений не сравняется с размером блокнота. Квантовое распределение ключей также предлагает решение этой проблемы, предполагая отказоустойчивые квантовые компьютеры.
Распространение очень длинных одноразовых ключей неудобно и обычно представляет собой значительный риск для безопасности. [2] По сути, блокнот — это ключ шифрования, но в отличие от ключей для современных шифров он должен быть чрезвычайно длинным и слишком сложным для запоминания людьми. Носители информации, такие как флэш-накопители , DVD-R или персональные цифровые аудиоплееры, могут использоваться для переноски очень большого одноразового блокнота с места на место не вызывающим подозрений способом, но необходимость физической транспортировки блокнота является бременем по сравнению с протоколами согласования ключей современной криптосистемы с открытым ключом. Такие носители информации невозможно надежно стереть никакими способами, кроме физического уничтожения (например, сжигания). DVD-R объемом 4,7 ГБ, полный данных одноразового блокнота, если измельчить на частицы размером 1 мм 2 (0,0016 кв. дюйма), оставляет более 4 мегабит данных на каждой частице. [ необходима цитата ] Кроме того, риск компрометации во время передачи (например, карманник , считывающий, копирующий и заменяющий блокнот), вероятно, будет намного выше на практике, чем вероятность компрометации для такого шифра, как AES . Наконец, усилия, необходимые для управления одноразовым ключом блокнота, очень плохо масштабируются для больших сетей коммуникаторов — количество требуемых блокнотов увеличивается как квадрат числа пользователей, свободно обменивающихся сообщениями. Для общения только между двумя людьми или топологии сети со звездой это не такая уж проблема.
Материал ключа должен быть надежно утилизирован после использования, чтобы гарантировать, что материал ключа никогда не будет использован повторно, и защитить отправленные сообщения. [2] Поскольку материал ключа должен быть передан с одной конечной точки на другую и сохраняться до тех пор, пока сообщение не будет отправлено или получено, он может быть более уязвим для судебно-медицинского восстановления , чем временный открытый текст, который он защищает (из-за возможной остаточности данных).
Традиционно одноразовые блокноты не обеспечивают аутентификации сообщений , отсутствие которой может представлять угрозу безопасности в реальных системах. Например, злоумышленник, который знает, что сообщение содержит «встретимся с Джейн и мной завтра в три тридцать», может вывести соответствующие коды блокнота непосредственно из двух известных элементов (зашифрованного текста и известного открытого текста). Затем злоумышленник может заменить этот текст любым другим текстом точно такой же длины, например, «встреча в три тридцать отменяется, оставайтесь дома». Знание злоумышленником одноразового блокнота ограничено этой длиной байта, которая должна поддерживаться для того, чтобы любое другое содержимое сообщения оставалось действительным. Это отличается от пластичности [23] , когда открытый текст не обязательно известен. Не зная сообщения, злоумышленник также может переворачивать биты в сообщении, отправленном с помощью одноразового блокнота, без возможности получателя обнаружить это. Из-за их сходства атаки на одноразовые блокноты похожи на атаки на потоковые шифры . [24]
Стандартные методы предотвращения этого, такие как использование кода аутентификации сообщения, могут использоваться вместе с системой одноразового блокнота для предотвращения таких атак, как и классические методы, такие как заполнение переменной длины и русская копуляция , но все они не обладают идеальной безопасностью, которую имеет сам OTP. Универсальное хеширование обеспечивает способ аутентификации сообщений до произвольной границы безопасности (т. е. для любого p > 0 достаточно большой хеш гарантирует, что даже вычислительно неограниченная вероятность успешной подделки злоумышленником будет меньше p ), но это использует дополнительные случайные данные из блокнота, и некоторые из этих методов исключают возможность реализации системы без компьютера.
Благодаря своей относительной простоте реализации и обещанию идеальной секретности одноразовый блокнот пользуется большой популярностью среди студентов, изучающих криптографию, особенно потому, что это часто первый алгоритм, который будет представлен и реализован в ходе курса. Такие «первые» реализации часто нарушают требования к теоретической безопасности информации одним или несколькими способами:
Несмотря на свои проблемы, одноразовый блокнот сохраняет некоторый практический интерес. В некоторых гипотетических шпионских ситуациях одноразовый блокнот может быть полезен, поскольку шифрование и дешифрование можно вычислить вручную, используя только карандаш и бумагу. Почти все другие высококачественные шифры совершенно непрактичны без компьютеров. Однако в современном мире компьютеры (например, встроенные в мобильные телефоны ) настолько распространены, что наличие компьютера, подходящего для выполнения обычного шифрования (например, телефона, который может запускать скрытое криптографическое программное обеспечение), обычно не вызывает подозрений.
Одноразовый блокнот в квантовой криптографии обычно используется в сочетании с квантовым распределением ключей (QKD). QKD обычно ассоциируется с одноразовым блокнотом, поскольку он обеспечивает способ безопасного и эффективного распределения длинного общего секретного ключа (при условии существования практического квантового сетевого оборудования). Алгоритм QKD использует свойства квантово-механических систем, чтобы позволить двум сторонам договориться об общей, равномерно случайной строке. Алгоритмы для QKD, такие как BB84 , также способны определить, пыталась ли противоборствующая сторона перехватить ключевой материал, и позволяют согласовать общий секретный ключ с относительно небольшим количеством сообщений и относительно низкими вычислительными затратами. На высоком уровне схемы работают, используя разрушительный способ измерения квантовых состояний для обмена секретом и обнаружения несанкционированного доступа. В оригинальной статье BB84 было доказано, что одноразовый блокнот с ключами, распределенными через QKD, является совершенно безопасной схемой шифрования. [27] Однако этот результат зависит от правильности реализации схемы QKD на практике. Существуют атаки на реальные системы QKD. Например, многие системы не отправляют один фотон (или другой объект в желаемом квантовом состоянии) на бит ключа из-за практических ограничений, и злоумышленник может перехватить и измерить некоторые из фотонов, связанных с сообщением, получив информацию о ключе (т. е. утечку информации о блокноте), при этом передавая неизмеренные фотоны, соответствующие тому же биту ключа. [28] Объединение QKD с одноразовым блокнотом также может ослабить требования к повторному использованию ключа. В 1982 году Беннетт и Брассар показали, что если протокол QKD не обнаруживает, что злоумышленник пытался перехватить обмененный ключ, то ключ можно безопасно использовать повторно, сохраняя при этом полную секретность. [29]
Одноразовый блокнот является примером постквантовой криптографии, поскольку идеальная секретность — это определение безопасности, которое не зависит от вычислительных ресурсов противника. Следовательно, противник с квантовым компьютером все равно не сможет получить больше информации о сообщении, зашифрованном с помощью одноразового блокнота, чем противник с классическим компьютером.
Одноразовые блокноты использовались в особых обстоятельствах с начала 1900-х годов. В 1923 году они использовались для дипломатической связи немецким дипломатическим учреждением. [30] Дипломатическая служба Веймарской республики начала использовать этот метод примерно в 1920 году. Взлом плохой советской криптографии британцами , когда сообщения были обнародованы по политическим причинам в двух случаях в 1920-х годах ( дело ARCOS ), по-видимому, заставил Советский Союз принять одноразовые блокноты для некоторых целей примерно к 1930 году. Известно, что шпионы КГБ также использовали одноразовые блокноты в виде карандаша и бумаги в последнее время. Примерами служат полковник Рудольф Абель , который был арестован и осужден в Нью-Йорке в 1950-х годах, и «Крогеры» (то есть Моррис и Лона Коэн ), которые были арестованы и осуждены за шпионаж в Соединенном Королевстве в начале 1960-х годов. У обоих были обнаружены физические одноразовые блокноты.
Ряд стран использовали системы одноразовых шифрблокнотов для своего конфиденциального трафика. Лео Маркс сообщает, что британское Управление специальных операций использовало одноразовые шифрблокноты во время Второй мировой войны для кодирования трафика между своими офисами. Одноразовые шифрблокноты для использования его зарубежными агентами были введены в конце войны. [14] Несколько британских одноразовых ленточных шифровальных машин включают Rockex и Noreen . Немецкая машина Stasi Sprach Machine также могла использовать одноразовую ленту, которую Восточная Германия, Россия и даже Куба использовали для отправки зашифрованных сообщений своим агентам. [31]
Голосовой скремблер времен Второй мировой войны SIGSALY также был формой одноразовой системы. Он добавлял шум к сигналу на одном конце и удалял его на другом конце. Шум распределялся по концам канала в виде больших шеллаковых пластинок, которые изготавливались уникальными парами. Возникали как проблемы начальной синхронизации, так и долгосрочного фазового дрейфа, которые нужно было решить, прежде чем систему можно было использовать. [32]
Горячая линия между Москвой и Вашингтоном , установленная в 1963 году после Карибского кризиса 1962 года , использовала телетайпы, защищенные коммерческой системой одноразовых лент. Каждая страна подготовила ключевые ленты, используемые для кодирования своих сообщений, и доставила их через свое посольство в другой стране. Уникальным преимуществом OTP в этом случае было то, что ни одна из стран не должна была раскрывать более чувствительные методы шифрования другой. [33]
Силы специального назначения армии США использовали одноразовые шифрблокноты во Вьетнаме. Используя азбуку Морзе с одноразовыми шифрблокнотами и непрерывную радиопередачу (носитель азбуки Морзе), они достигли как секретности, так и надежной связи. [34]
Начиная с 1988 года Африканский национальный конгресс (АНК) использовал одноразовые шифрблокноты на основе дисков как часть защищенной системы связи между лидерами АНК за пределами Южной Африки и оперативниками внутри страны в рамках операции «Вула» [35], успешной попытки построить сеть сопротивления внутри Южной Африки. Случайные числа на диске стирались после использования. Бельгийская стюардесса выступала в качестве курьера, чтобы доставить шифрблокноты. Требовалось регулярное пополнение запасов новых дисков, поскольку они довольно быстро использовались. Одной из проблем системы было то, что ее нельзя было использовать для защищенного хранения данных. Позже «Вула» добавила потоковый шифр, ключом к которому служили книжные коды, чтобы решить эту проблему. [36]
Связанное понятие — одноразовый код — сигнал, используемый только один раз; например, «Альфа» для «миссия выполнена», «Браво» для «миссия провалена» или даже «Факел» для « вторжения союзников во Французскую Северную Африку » [37] не может быть «расшифрован» в каком-либо разумном смысле этого слова. Понимание сообщения потребует дополнительной информации, часто «глубины» повторения или некоторого анализа трафика . Однако такие стратегии (хотя часто используются реальными оперативниками и тренерами по бейсболу ) [38] не являются криптографическим одноразовым блокнотом в каком-либо существенном смысле.
По крайней мере в 1970-х годах Агентство национальной безопасности США (АНБ) выпускало множество ручных одноразовых блокнотов, как общего назначения, так и специализированных, в 1972 финансовом году было выпущено 86 000 одноразовых блокнотов. Специальные блокноты выпускались для того, что АНБ называло «системами для проформы», где «базовая структура, форма или формат каждого текста сообщения идентичны или почти идентичны; один и тот же вид информации, сообщение за сообщением, должен быть представлен в том же порядке, и только определенные значения, такие как числа, меняются с каждым сообщением». Примерами служат сообщения о ядерных запусках и отчеты о радиопеленгации (COMUS). [39] : стр. 16–18
Универсальные блокноты выпускались в нескольких форматах: простой список случайных букв (DIANA) или просто чисел (CALYPSO), крошечные блокноты для тайных агентов (MICKEY MOUSE) и блокноты, предназначенные для более быстрого кодирования коротких сообщений за счет меньшей плотности. Один из примеров, ORION, имел 50 строк открытого текста алфавита на одной стороне и соответствующие случайные буквы зашифрованного текста на другой стороне. Поместив лист поверх листа копировальной бумаги копировальной стороной вверх, можно было обвести одну букву в каждом ряду на одной стороне, а соответствующая буква на другой стороне была бы обведена копировальной бумагой. Таким образом, один лист ORION мог быстро кодировать или декодировать сообщение длиной до 50 символов. Производство блокнотов ORION требовало печати обеих сторон с точной регистрацией, что было сложным процессом, поэтому АНБ перешло на другой формат блокнота, MEDEA, с 25 строками парных алфавитов и случайных символов. ( См. Commons:Category:NSA one-time pads для иллюстраций.)
АНБ также создало автоматизированные системы для «централизованных штаб-квартир ЦРУ и подразделений сил специального назначения, чтобы они могли эффективно обрабатывать множество отдельных одноразовых сообщений, отправляемых и получаемых держателями блокнотов на местах». [39] : стр. 21–26
Во время Второй мировой войны и в 1950-х годах США широко использовали системы одноразовых лент. Помимо обеспечения конфиденциальности, схемы, защищенные одноразовой лентой, работали непрерывно, даже когда не было трафика, тем самым защищая от анализа трафика . В 1955 году АНБ произвело около 1 660 000 рулонов одноразовой ленты. Каждый рулон был 8 дюймов в диаметре, содержал 100 000 символов, длился 166 минут и стоил 4,55 доллара на производство. К 1972 году было произведено всего 55 000 рулонов, поскольку одноразовые ленты были заменены роторными машинами, такими как SIGTOT, а позднее электронными устройствами на основе сдвиговых регистров . [39] : стр. 39–44 АНБ описывает системы одноразовых лент, такие как 5-UCO и SIGTOT, как используемые для разведывательного трафика до введения электронного шифра на основе KW-26 в 1957 году. [40]
Хотя одноразовые шифрблокноты обеспечивают идеальную секретность при правильном создании и использовании, небольшие ошибки могут привести к успешному криптоанализу:
{{cite journal}}
: CS1 maint: multiple names: authors list (link)Номера PACS: 01.10.Fv, 03.67.Dd, 89.70.+c и открыто на русском языке Квантовая криптография и выводы В.А. Котельникова об одноразовых ключах и об отсчетах. УФНЦентр по производству криптографических материалов КГБ в Советском Союзе, по-видимому, повторно использовал некоторые страницы из одноразовых блокнотов. Это дало
Arlington Hall
возможность.
Способность Арлингтон-холла читать сообщения VENONA была неоднородной, что зависело от базового кода, ключевых изменений и отсутствия объема. Из трафика сообщений из нью-йоркского офиса КГБ в Москву, 49 процентов сообщений 1944 года и 15 процентов сообщений 1943 года были прочитаны, но это было верно только для 1,8 процента сообщений 1942 года. Для сообщений из вашингтонского офиса КГБ в Москву 1945 года только 1,5 процента были прочитаны. Около 50 процентов сообщений ГРУ-ВМС из Вашингтона в Москву/из Москвы в Вашингтон за 1943 год были прочитаны, но ни одного из других лет.
система была основана на одноразовом блокноте, хотя вместо бумажных блокнотов случайные числа были на диске.