Ученые создали самый быстрый физический генератор случайных чисел.
Генераторы случайных числе в настоящее время используются повсеместно. Однако, например, программный генератор случайных чисел, который присутствует во многих приложениях, на самом деле не дает случайные числа.
Последовательность получаемых значений является результатом работы некоторого алгоритма (полученные числа называются псевдослучайными).
Так, входящий в большинство стандартных программ линейный конгруэнтный метод генерирует последовательность, используя рекуррентное соотношение xn+1 = axn + c, где равенство берется в смысле остатка при делении на некоторое большое m.
Наиболее перспективными являются физические генераторы случайных чисел. В рамках работы ученые использовали полупроводниковый лазер с короткими и резкими пиками интенсивности.
Лазер пропускался через среду с обратной связью с задержкой, то есть интенсивность излучения на выходе определялась интенсивностью сигнала на входе и состоянием среды, которое зависело от интенсивности на выходе.
Ранее исследователям было известно, что интенсивность подобного луча является процессом квазипериодическим, то есть с течением времени почти повторяется, поэтому на прямую использовать его в качестве генератора случайных чисел нельзя.
Для того, чтобы избавиться от квазипериодичности, физики действовали следующим образом. Интенсивность луча замерялась примерно 2,5 миллиарда раз в секунду. Результат каждого измерения записывался в строку длиной в 8 бит. Оно вычиталось из значения предыдущего измерения, а результат усекался. Таким образом, исследователям удалось избавиться от квазипериодичности и добиться генерации случайного потока нулей и единиц со скоростью примерно 12,5 гигабита в секунду.