В частности, в октябрьском номере журнала Nature Photonics сообщается, что группа ученых из Германии и Дании создала квантовый генератор хаотических сигналов, который стал одним из лучших в мире по указанным критериям. Как пишетжурнал "Успехи физических наук", принцип работы генератора основан на случайном характере вакуумных колебаний электромагнитного поля.
В литературе по криптографии хаотические последовательности нулей и единиц часто называют случайными числами . Понятие случайного (псевдослучайного) числа используется также в теории и приложениях численного статистического моделирования (или в методах Монте-Карло). Здесь случайные числа используются для имитации (моделирования) траекторий различных случайных процессов на компьютере с целью оценки требуемых усредненных характеристик этих процессов.
О том, в чем схожи и различны понятия и способы реализации случайного числа в криптографии и в вычислительной математике, рассказывает доктор физико-математических наук, ведущий научный сотрудник Института вычислительной математики и математической геофизики Сибирского отделения РАН, профессор кафедры вычислительной математики Новосибирского государственного университета, специалист в области теории методов Монте-Карло Антон Войтишек.
- Антон Вацлавович, чем различаются случайные и псевдослучайные числа в теории методов Монте-Карло? Как они соотносятся с понятием случайного числа в криптографии?
- При применении методов численного статистического моделирования требуется получать на компьютере выборочные значения случайных величин с различными законами распределения. Здесь используются различные формульные и алгоритмические преобразования стандартных случайных чисел α j которые распределены равномерно в интервале (0,1) ("на пальцах" это означает, что частота появления этих чисел в различных частях единичного интервала одинакова). А вот для получения чисел α j используются датчики (генераторы) стандартных случайных чисел.
Различают физические датчики случайных чисел (основанные, кстати, на использовании упомянутых выше "шумящих" приборов) и генераторы псевдослучайных чисел (это специальные компьютерные программы, имеющие в языках программирования названия RAND или RANDOM ).
Конструирование физических датчиков основано на том, что двоичное представление стандартного случайного числа α (а именно такое представление чисел реализуется в компьютере) имеет вид
α = 0,10011001010...
то есть целая часть числа равна нулю (ведь α расположено между нулем и единицей), а в "хвосте", следующем после запятой (этот "хвост" по научному называется мантиссой , а нули и единицы заполняют разряды мантиссы ), стоят нули и единицы. Появление нуля и единицы (вне зависимости от значений в соседних разрядах) происходит с равной вероятностью (то есть с вероятностью 1/2).
Далее нужно сконструировать тот самый "шумящий" прибор, выдающий или не выдающий случайный сигнал в данный момент времени. Получение стандартных чисел α j сведется к формированию соответствующих "хвостов" (мантисс) с помощью многократного обращения к прибору (наличие сигнала даст единицу в разряде мантиссы, отсутствие его даст нуль).
Определенная сложность состоит в том, что для применения методов Монте-Карло требуется прибор, позволяющий получать нули и единицы в разрядах мантиссы с равной вероятностью.
К слову, при получении чисел (шифров) в криптографии последнее требование желательно, но не обязательно. Здесь нет нужды увязывать наборы нулей и единиц с приведенным выше представлением стандартного числа α j . Если обнаруживаются слишком длинные серии нулей или единиц, то реализуются специальные алгоритмы, удаляющие следы повторяемости. Это тоже обуславливает существенное отличие "криптографических" чисел от стандартных случайных чисел, используемых в методах Монте-Карло: для последних длинные серии нулей и единиц в мантиссе вполне допустимы.
- Какие сигналы можно использовать в физических датчиках?
- Можно крутить рулетку, раскрасив предварительно круг в два цвета (например, в красный и черный); красный цвет может соответствовать единице, черный - нулю. К слову, этот возможный способ получения стандартных случайных чисел обусловил название методов Монте-Карло, ведь в знаменитом игорном центре тоже крутят рулетку. Недостаток этого способа получения случайных чисел: долгое время реализации и отсутствие автоматизации процесса получения случайных нулей и единиц. Зато здесь более-менее гарантирована вероятность 1/2, если круг раскрашен двумя цветами пополам.
Читать дальше