29.11 // Одноразовый блокнот на оптических носителях неклонируемых функций
Классическим способом достижения абсолютной стойкости в криптографии является т.н. одноразовый блокнот. Это система связи, основанная на использовании абсолютно случайных (полученных из некоторого физически случайного процесса), неповторяющихся ключей, равных по длине открытым данным. Поскольку ключи не должны повторяться, то после использования они уничтожаются, что придаёт системе свойство PFS (Perfect Forward Secrecy) — наперёд заданной секретности, невозможности прочесть данные, переданные до момента компрометации системы противником.
Классический одноразовый блокнот рассмотрен на рис. 1a:
Рис. 1а. Классический одноразовый блокнот.
У обеих сторон есть копия одноразового ключа OTPk, которую они используют в качестве одноразовой гаммы. Эту гамму они объединяют с открытым текстом посредством операции XOR для шифрования или с шифртекстом — для расшифрования.
В современном мире использование электронных носителей делает такую схему уязвимой к проблеме надёжного уничтожения ранее использованных фрагментов гаммы и её защиты он несанкционированного копирования.
В последнее время наметился интерес исследователей в направлении неклонируемых физических функций — т.н. PUF (Physical Unclonable Function). Наиболее перспективными считаются оптические PUF. Это объект из оптически прозрачного материала с множеством неоднородностей (частиц, пузырьков, фазовых областей, центров кристаллизации, включений примесей), которые образуются в процессе его создания непредсказуемым образом. Сделать точную копию такого объекта невозможно. Если на него подать определённым образом сформированный лазерный луч, в котором закодирована некоторая цифровая последовательность, то можно получить определённый ответ, из которого также можно извлечь определённую цифровую последовательность. Если использовать коды коррекции ошибок и криптографическое отбеливание (извлечение случайности из ответа путём т.н. «отбеливателей» или экстракторов случайности), то можно для одинаковых входных данных получать одинаковые случайные данные на выходе, что является физическим аналогом детерминированной случайной функции. При этом такая функция не может быть ни склонирована, ни (в идеальном случае) смоделирована математическим путём (неподвержена алгоритмическому взлому).
Естественным ограничением PUF является количество возможных уникальных запросов-ответов, ограничивающих её ёмкость по возможности извлечения случайности. Изначально ёмкость была небольшой, поэтому PUF рассматривались лишь как аутентифицирующие токены. Однако, исследователи Roarke Horstmeyer, Benjamin Judkewitz, Sid Assawaworrarit, Changhuei Yang (кафедра электротехники и биоинженерии калифорнийского технологического институтута, Пасадена, США) и Ivo Vellekoop (группа биомедицинской фотонной визуализации, институт биомедицинских технологий и технической медицины MIRA университета Твенте, Энсхедэ, Нидерланды) смогли применить оптические PUF с высокой плотностью извлечения случайности: 10 гигабит / 2мм2 в текущем эксперименте и 1 терабит / мм2 в перспективе.
На первый взгляд, PUF мало интересны в качестве носителей одноразовых блокнотов именно по причине неклонируемости. Сторона A может полностью оцифровать свой PUF, а затем попытаться как-то через тайник, доверенного курьера или ещё каким-то способом передать стороне B, которая также его оцифрует. Этот сценарий показан на рис. 1b.
Рис. 1b. Передача одноразового блокнота через оптический носитель неклонируемых функций.
В таком сценарии PUF — не более чем удобный носитель для передачи одноразового блокнота, который можно спрятать или опечатать. Кроме того, полная оцифровка PUF занимает много времени (не менее суток) и не может быть ускорена по физическим ограничениям, что даёт противнику малое окно времени для копирования.
Более интересным представляется случай, когда стороны имеют разные PUF, которые также имеют все преимущества неклонируемого неэлектронного носителя, но при этом их не требовалось бы передавать, зато иметь возможность постоянно хранить секрет только в них. Такой сценарий может быть реализован на практике, в чём и заключается новизна работы. Сторонам A и B достаточно встретиться один раз в безопасном месте (или однократно организовать канал безопасной связи, например — квантовый) и совместно оцифровать свои PUF. Объединив результаты оцифровки операцией XOR они получат согласованный одноразовый массив A⊕B, который можно записать на электронный носитель информации. Этот массив не является секретным — он может быть расположен на общедоступном сервере. После совместного создания такого массива стороны расходятся на исходные пункты связи и весь их секрет сохраняется в PUF. Теперь эти PUF становятся согласованными для связи (Communication PUF — CPUF).
Общий вид такой схемы показан на рис. 1c.
Рис. 1с. Согласованный одноразовый блокнот через два разных носителя неклонируемых функций.
Подробности реализации и работы с оптическими CPUF показаны на рис. 2. Они включают кодирование входных данных в параметры микрофокусировки лазера, считывание данных на фотосенсорную матрицу, обработку функцией отбеливания W для получения ключей.
Рис. 2. Извлечение цифровых данных из оптического носителя неклонируемых функций.
Как было сказано ранее, стороны в момент встречи в безопасном окружении согласовывают общий массив оцифровки своих PUF и отправляют его на обычный электронный носитель или внешний сервер, не нуждающийся в защите, что показано на рис. 3a.
Рис. 3а. Схема согласования двух разных носителей неклонируемых функций.
На рис. 3bc более подробно показан сеанс связи на CPUF.
Рис. 3bc. Шифрование-расшифрование с использованием согласованных носителей неклонируемых функций.
Результат экспериментальной передачи данных показан на рис 4.
Рис. 4. Экспериментальная передача данных в канале из согласованных носителей неклонируемых функций.
Как можно заметить визуально, из-за несовершенства считывания информации с PUF появляются шумы и точной передачи данных не происходит. Однако, как было указано ранее, для передачи цифровых данных этот недостаток может быть устранён посредством применения кодов коррекции ошибок.
Таким образом, носителем одноразового блокнота являются миниатюрные высокоёмкие CPUF, которые легче охранять, которые не могут быть быстро физически оцифрованы злоумышленником, получившим к ним физический доступ, которые могут быть легко уничтожены после использования, а массив согласования которых не требуется держать в секрете.
Авторы предполагают, что если для согласования общего массива использовать защищённый квантовый канал, то CPUF могут стать дополнительным средством, позволяющим использовать достоинства совершенной секретности в любых каналах связи, в т.ч. в мобильных применениях: сами PUF — миниатюрны, установку для работы с ними также можно уменьшить, а большой согласованный массив может быть размещён на сетевом сервере.
В работе не рассматриваются проблемы стойкой аутентификации, которая для данного протокола также важна, как и коррекция ошибок, но нет принципиальных препятствий и для внедрения информационно-теоретически стойкой аутентификации и защиты от подмены сообщений в канале, зашифрованном одноразовым блокнотом.
Источник: arXiv.org, Physics > Optics.
Угу, нашёл [1], [2], [3].
Угу.
Несмотря на приведённые ссылки, ясность не вырисовывается. Т.е. вы утверждаете, что если противник украдёт приватный ключ, использовавшийся в, например, OTR, он сможет расшифровать весь трафик, записанный в прошлом? Ибо зачем ему взламывать асимметрику, когда у него уже приватный ключ будет в руках... И в чём тогда состоит FS / PFS в OTR? Защита от кражи только сеансовых ключей? Так на диске у абонентов лежат приватные ключи, и из них, получается, можно получить сеансовые.* Ну, отрицаемость, допустим, сохранится несмотря на это, а всё остальное, получается, идёт лесом...
*Для получения симметричного ключа надо иметь приватные ключи обоих абонентов, так?
комментариев: 11558 документов: 1036 редакций: 4118
комментариев: 9796 документов: 488 редакций: 5664
Также можно предполагать, что сильно поломать можно и симметрику (ГПСЧ, блочный шифр) или, что в протоколе есть ещё какие-то изъяны.
- Атакующий получил доступ к приватным долговременным ключам.
- Атакующий получил какое-то особое знание, позволяющее ему вычислить то, что раньше он не мог, даже зная приватные ключи абонетов.
Нетривиально, что полный взлом с расшифрованием, как я вас понял, требует именно варианта 2, а не 1. Впрочем, это всё равно звучит странно, т.к.Именно из-за этого я полагал, что какой бы взлом асимметрики ни был, максимум, что он даст атакующему — сделать MITM. Но вы говорите, что это неправда. Или тут дело в том, что ломать будут не долговременные ключи аутентификации, а те временные асимметричные, которые генерируются каждый раз заново только для согласования симметричного ключа? Т.е. они генерятся для каждой сессии, но после создания симметричного ключа тут же уничтожаются и на диске не хранятся, что, однако, не отменяет восстановления этих ключей по трафику при тотальном взломе асимметрики?
комментариев: 11558 документов: 1036 редакций: 4118
Ровно об этом и шла речь. DH ведь не через астрал выполняют, все параметры идут в трафике, который (по сценарию) пишет противник.
комментариев: 9796 документов: 488 редакций: 5664
Вы про обычный DH, который придумали ещё даже до шифрования открытым ключом? такой оффтопик не укладывается у меня в голове :)
В нём нет никаких приватных ключей. Есть сеансовые секретные одноразовые параметры a и b, ну с натяжкой их можно назвать половинками совместно выводимого ключа.
Алиса Бобу: ga mod p
Боб Алисе: gb mod p
После этого Алиса и Боб совместно могут вычислить s = (ga) b mod p = (gb) a mod p
Надо еще сделать KDF от такого s, но это уже не имееет отношения конкретно к вашим вопросам.
g и p также передаются в канал открыто или открыто согласовываются заранее — обычно это постоянные и общие для всех параметры; a и b не передаются и после получения ответа от другой стороны уничтожаются, поэтому PFS.
Ева знает ga mod p, gb mod p, g и p. Посчитать s как Алиса и Боб она не может, т.к. не знает a и b. Чтобы это вычислить, например из ga mod p значение a, ей нужно уметь вычислять дискретный логарифм в конечном поле, заданном g и p.
Нет, я про обычный DH, который в XMPP, OpenVPN или Tor, например.
А такое a единственное, которое даёт s?
Сейчас вроде понятней. Кстати, чувствуется какой-то параллелизм с тем, что было выше в треде: там не играла роль расстановка скобок во взятии XOR'а, а тут в DH не играет роль порядок возведения в степень. Результат в обоих случаях один и тот же: имея нечто общее и никуда непередаваемый секрет, вывести то секретное, что будет доступно обоим.
Математически понятно, что парадокса нет. Ева всё может узнать, даже не влияя на канал (математически проблема разрешима), но это вычислительно сложная задача, поэтому без эффективного алгоритма ей не продвинуться никак.
комментариев: 9796 документов: 488 редакций: 5664
Ну можно через b ещё высчитать. g даёт перестановку при возведении в степень в интервале a∈{1 … p-1} в поле модуля p, так что да — единственное.
Асимметрика (также как, впрочем, и симметрика) на некоммутативной алгебре в виде теоретической экзотики также существует, там просто будет более сложный протокол.
Понятно. У группы есть период или как оно там называется, поэтому там, наверно, будет бесконечное число решений, отстоящих друг от друга на один и тот же интервал. Если зафиксировать интервал, получаем единственность.
Кстати, в широком смысле этого слова вся квантовая информатика (и квантмех) строится на некоммутативной математике, и одно из базовых понятий — соотношение неопределённостей — по сути есть значение коммутатора (для коммутирующих величин коммутатор равен нулю).
комментариев: 9796 документов: 488 редакций: 5664