Рейтинг:1

Когда нельзя отказываться от генератора случайных чисел?

флаг co

Я сконструировал настоящий генератор случайных чисел и применил к его результатам набор тестов случайности NIST. Я создал около 200 файлов с помощью своего TRNG, каждый из которых $10^6$ биты в длину.

Отчеты об испытаниях следующие: TRNG не прошел некоторые тесты (например, ранговый тест бинарной матрицы) меньше, чем $5$ раз, т.е. только 5 файлов из $200$ провалил некоторые тесты. Однако, $20$ файлы не прошли тест на случайное отклонение. Кроме того, только $5$ файлов не удалось более $1$ тестовое задание. Поэтому я хочу знать, следует ли отклонять этот TRNG.

Какие критерии определяют, следует ли принимать или отвергать TRNG? Дайте ссылки, если можно.

Paul Uszak avatar
флаг cn
Вам не нужно 200 файлов. Подойдет только один (> 100 МБ). **Но** будьте очень осторожны с переустановкой комплекта. Некоторые аппаратные средства математически и физически _"разогреваются"_. https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-90B.pdf
Patriot avatar
флаг cn
@Mittal G Использовали ли вы инструмент NIST Statistical Test Suite (STS) для случайности?
Mittal G avatar
флаг co
Да, я использовал это.
Рейтинг:1
флаг cn

Я кое-что знаю о TRNG, и 20/200 (10%) кажется немного высоким. Случайность случайна, поэтому вы ожидаете нормального распределения значений. Но $1.6\сигма$ это слишком много.

Нормальное/гауссово распределение: -

график

Я знаю, что это глупо, но просто взгляните на вероятности. $z=\pm 0,8$ засовывает прямо под горб. Очень маловероятно. Есть инструмент под названием энт это просто, но это первый шаг в разработке TRNG. Запустите его и посмотрите, каков коэффициент корреляции:

~$ энт cmix_v17
Энтропия = 6,433268 бит на байт.

Оптимальное сжатие уменьшит размер
этого файла размером 687704 байта на 19 процентов.

Распределение хи-квадрат для 687704 выборок составляет 7388990,41, и случайным образом
превысит это значение менее чем в 0,01% случаев.

Среднее арифметическое значение байтов данных равно 86,8790 (127,5 = случайное).
Значение Монте-Карло для Пи равно 3,496968164 (ошибка 11,31%).
Серийный коэффициент корреляции равен 0,300655 (полностью некоррелированный = 0,0).

Или, чтобы копнуть глубже, вы можете выполнить БПФ в частотной области. Сохранить автокоррекцию $< 10^{-3}$. Это даст вам образцы IID, из которых вы получите простой $H_{\infty}$ и, следовательно, скорость энтропии.

P.S. Смотрим схему.
Mittal G avatar
флаг co
Не могли бы вы уточнить немного больше? Я не получаю вашего ответа.
Paul Uszak avatar
флаг cn
Конечно :-) но мой ответ связан с истинным и кошерным TRNG. Прошу прощения за педантичность, но здесь мы получаем множество вопросов о TRNG, которых на самом деле нет. Существует **огромная** путаница между TRNG, одноразовыми блокнотами и потоковыми шифрами.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.