Физики из МГУ и МИФИ построили генератор, позволяющий получать последовательности случайных чисел со скоростью 75 мегабит в секунду. В качестве источника случайности устройство использует процесс поглощения фотонов атомами фотоумножителей. Статья опубликована в Laser Physics Letters.
Чтобы зашифровать информацию, необходимо сгенерировать ключ, то есть случайную последовательность нолей и единиц. Получить эту последовательность можно разными способами. Например, с помощью генератора псевдослучайных чисел, который вычисляет по заданному правилу и начальному числу последовательность, очень похожую на случайную. Проблема таких псевдослучайных последовательностей в том, что если разгадать правило, по которому генератор находит следующее число, легко предсказать, что он будет выдавать. Поэтому надежные криптографические системы используют в качестве источника физические генераторы случайности.
Физические генераторы, в свою очередь, делятся на классические и квантовые. Классические используют тот факт, что в некоторых системах погрешность начальных условий очень быстро растет со временем (динамический хаос), и предсказать их конечное состояние сложно. Тем не менее, это не настоящая случайность, поскольку классические уравнения движения являются детерминированными. В квантовой же механике неопределенность заложена в самих уравнениях движения, и при измерении состояния квантовых систем мы должны получать по-настоящему случайные числа. Поэтому последовательности, полученные с помощью квантовых генераторов, самые надежные. К сожалению, скорость генерации таких случайных последовательностей обычно не очень велика.
В данной статье физики придумали и реализовали на практике способ быстро получать случайные последовательности чисел, используя случайность процесса поглощения фотона атомом. Идея разработанного ими метода заключается в следующем. Если светить слабым лазером на кремниевый фотоумножитель, то можно считать, что атомы фотоумножителя поглощают отдельные фотоны. Вероятность того, что одиночный атом поглотит m фотонов за время T, подчиняется распределению Пуассона и равна PT(m) = e−μ×μm/m!. Здесь μ — это вероятность поглотить отдельный фотон, и чем ниже она, тем лучше работает однофотонное приближение. Тем не менее, лавинный фотоумножитель не отличает события, отвечающие разному числу фотонов, поэтому для него вероятность зарегистрировать фототок равна просто 1 − e−μ (чтобы найти ее, надо просуммировать по m от одного до бесконечности).
При повторении опыта мы обнаружим, что иногда фотоумножитель регистрирует ток несколько раз подряд, а иногда ничего не регистрирует. Число последовательных регистраций обозначим как in. Последовательность {in} является случайной, однако вероятности появления различных чисел отличаются. Поэтому с помощью специального полиномиального алгоритма такой последовательности сопоставляется номер Nj, лежащий в интервале от 0 до CnK — 1, где CnK — это биномиальный коэффициент, а K — длина j-ой последовательности. Повторяя процедуру несколько раз, мы получим новую последовательность {Nj}. Наконец, переводя каждое число в двоичную систему и обрезая его до длины Kmax (максимальная длина последовательностей {in}j), мы получим набор случайных последовательностей нулей и единиц.
Физически ученые реализовали прибор следующим образом. Чтобы повысить точность и избежать остаточных пульсаций в фотоумножителях после регистрации фототока они использовали массив из 1156 фотоумножителей размером 32×32 микрометра каждый. Температура прибора составляла 25 градусов Цельсия. В качестве источника фотонов физики взяли лазерный диод, излучающий свет на длине волны 405 нанометров. Вероятность μ в такой установке составляла примерно 0,2×10−3, то есть реализовался однофотонный случай (вероятность атома поглотить два фотона примерно в десять тысяч раз меньше, чем поглотить один). Последовательности {in} исследователи выводили с помощью разъема USB 2.0.
В итоге построенный физиками прибор позволял получать последовательности случайных чисел со скоростью 75 мегабит в секунду, что на двадцать процентов быстрее, чем предыдущий результат. Полученные последовательности с высоким уровнем достоверности (p-значение P > 0.01) прошли проверки на случайность Национального института стандартов и технологий США.
Недавно мы писали о том, как ученые из МГУ под руководством Сергея Попова нашли первый сжимающийся белый карлик. Также в начале ноября физики из Российского квантового центра ускорили исправление ошибок при квантовой передаче ключей.
Дмитрий Трунин