Хорошо подмечено, я этого не заметил. Да, энт
это самый надежный тест на случайность, хотя и не обязательно самый сложный, но посмотрите на это немного мудрый энт
тест вашего файла Hotbits: -
ent -b /tmp/горячие биты
Энтропия = 1 000 000 бит на бит.
Оптимальное сжатие уменьшит размер
этого 91750400-битного файла на 0 процентов.
Распределение хи-квадрат для 91750400 образцов равно 0,05, и случайным образом
превысит это значение в 81,93% случаев.
Среднее арифметическое значение битов данных равно 0,5000 (0,5 = случайное).
Значение Монте-Карло для Пи равно 3,141486168 (ошибка 0,00%).
Серийный коэффициент корреляции составляет -0,000773 (полностью некоррелированный = 0,0).
Обратите внимание на -б
флаг. Вышеупомянутое является четким пропуском. И этот тест NIST точно такого же набора образцов (если вы тестируете только 10 числовых битовых потоков по 1 000 000 бит): -
--------------------------------------------- ----------------------------
РЕЗУЛЬТАТЫ ДЛЯ ОДНОРОДНОСТИ P-ЗНАЧЕНИЙ И ДОЛИ ПРОХОДЯЩИХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ
--------------------------------------------- ----------------------------
генератор </tmp/hotbits>
--------------------------------------------- ----------------------------
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 ПРОПОРЦИЯ P-ЗНАЧЕНИЯ СТАТИСТИЧЕСКИЙ ТЕСТ
--------------------------------------------- ----------------------------
0 0 2 1 3 1 0 0 0 3 0,122325 10/10 Частота
0 1 0 2 2 0 1 3 1 0 0,350485 10/10 BlockFrequency
0 0 1 2 1 0 2 1 1 2 0,739918 10/10 Кумулятивные суммы
1 0 1 2 0 0 2 1 0 3 0,350485 10/10 Кумулятивные суммы
3 2 1 1 0 1 0 0 0 2 0,350485 8/10 серий
0 0 1 3 1 1 1 3 0 0 0,213309 10/10 Самый длинный пробег
2 1 1 0 2 1 1 0 2 0 0,739918 10/10 Ранг
2 0 1 2 0 3 0 1 1 0 0,350485 10/10 БПФ
0 2 0 1 0 0 0 1 2 4 0,066882 10/10 NonOverlappingTemplate
1 1 1 2 0 0 0 1 2 2 0,739918 10/10 NonOverlappingTemplate
0 1 1 3 0 0 2 2 0 1 0,350485 10/10 NonOverlappingTemplate
2 0 0 2 1 1 0 2 1 1 0,739918 9/10 NonOverlappingTemplate
0 0 1 0 2 2 0 1 1 3 0,350485 10/10 NonOverlappingTemplate
1 2 1 1 0 3 1 0 1 0 0,534146 10/10 NonOverlappingTemplate
1 0 3 2 1 1 0 1 1 0 0,534146 10/10 NonOverlappingTemplate
2 0 1 0 0 4 2 0 0 1 0,066882 10/10 NonOverlappingTemplate
0 2 1 2 1 1 2 1 0 0 0,739918 10/10 NonOverlappingTemplate
0 3 0 4 0 0 0 0 2 1 0,017912 10/10 NonOverlappingTemplate
0 1 3 1 1 0 1 1 2 0 0,534146 10/10 NonOverlappingTemplate
2 0 0 2 1 1 2 1 1 0 0,739918 10/10 NonOverlappingTemplate
1 2 0 3 0 1 1 1 0 1 0,534146 10/10 NonOverlappingTemplate
2 2 0 1 0 1 0 2 2 0 0,534146 9/10 NonOverlappingTemplate
1 1 1 0 3 1 0 2 1 0 0,534146 9/10 NonOverlappingTemplate
0 1 2 2 1 2 0 0 1 1 0,739918 10/10 NonOverlappingTemplate
1 0 0 2 2 0 1 2 1 1 0,739918 10/10 NonOverlappingTemplate
2 0 3 0 0 0 1 2 1 1 0,350485 9/10 NonOverlappingTemplate
1 1 1 2 2 0 1 1 0 1 0,911413 10/10 NonOverlappingTemplate
2 3 1 0 2 0 1 0 0 1 0,350485 10/10 NonOverlappingTemplate
1 3 1 0 2 1 1 1 0 0 0,534146 10/10 NonOverlappingTemplate
1 2 1 1 1 1 1 2 0 0 0,911413 10/10 Неперекрывающийся шаблон
5 0 0 1 1 1 0 2 0 0 0,008879 10/10 NonOverlappingTemplate
0 2 1 1 0 1 1 1 1 2 0,911413 10/10 Неперекрывающийся шаблон
0 1 1 0 3 1 1 1 2 0 0,534146 10/10 Неперекрывающийся шаблон
1 1 1 1 3 0 0 2 0 1 0,534146 9/10 NonOverlappingTemplate
1 1 2 1 1 1 0 1 1 1 0,991468 10/10 NonOverlappingTemplate
1 0 2 3 0 0 0 2 0 2 0,213309 10/10 NonOverlappingTemplate
1 2 0 1 0 0 1 2 1 2 0,739918 10/10 NonOverlappingTemplate
0 1 1 0 2 0 0 1 4 1 0,122325 10/10 NonOverlappingTemplate
0 0 1 2 1 3 0 2 1 0 0,350485 10/10 NonOverlappingTemplate
0 2 1 2 1 0 1 1 2 0 0,739918 10/10 NonOverlappingTemplate
2 2 0 1 0 0 1 1 2 1 0,739918 9/10 NonOverlappingTemplate
2 1 2 0 2 1 0 1 1 0 0,739918 9/10 NonOverlappingTemplate
2 1 2 0 0 3 1 0 1 0 0,350485 10/10 NonOverlappingTemplate
2 0 1 0 3 1 1 0 1 1 0,534146 10/10 NonOverlappingTemplate
2 2 1 1 0 2 0 0 1 1 0,739918 10/10 NonOverlappingTemplate
0 0 0 4 1 1 1 1 1 1 0,213309 10/10 NonOverlappingTemplate
3 1 0 1 0 0 3 0 2 0 0,122325 9/10 NonOverlappingTemplate
0 2 1 1 1 1 1 2 1 0 0,911413 10/10 Неперекрывающийся шаблон
0 3 2 2 0 1 0 0 1 1 0,350485 10/10 NonOverlappingTemplate
1 0 1 3 0 2 1 1 0 1 0,534146 9/10 NonOverlappingTemplate
1 2 1 1 0 2 0 0 1 2 0,739918 10/10 NonOverlappingTemplate
2 2 0 2 1 0 2 0 0 1 0,534146 10/10 NonOverlappingTemplate
0 1 1 2 2 0 1 2 1 0 0,739918 10/10 NonOverlappingTemplate
0 1 1 2 0 2 1 1 1 1 0,911413 10/10 Неперекрывающийся шаблон
4 0 0 1 1 0 1 3 0 0 0,035174 10/10 NonOverlappingTemplate
0 4 1 1 0 0 2 2 0 0 0,066882 10/10 NonOverlappingTemplate
1 0 3 1 1 2 1 0 1 0 0,534146 10/10 NonOverlappingTemplate
1 1 0 1 1 1 1 1 1 2 0,991468 10/10 NonOverlappingTemplate
2 2 2 1 0 1 0 0 1 1 0,739918 10/10 NonOverlappingTemplate
1 1 0 1 2 1 2 0 1 1 0,911413 10/10 NonOverlappingTemplate
1 1 0 0 2 1 2 2 1 0 0,739918 10/10 NonOverlappingTemplate
1 0 2 1 1 0 2 2 1 0 0,739918 10/10 NonOverlappingTemplate
3 1 1 1 0 1 1 1 1 0 0,739918 10/10 NonOverlappingTemplate
2 0 2 2 1 2 0 1 0 0 0,534146 10/10 NonOverlappingTemplate
2 1 2 1 0 1 2 0 0 1 0,739918 10/10 NonOverlappingTemplate
2 2 0 0 0 1 3 1 0 1 0,350485 10/10 NonOverlappingTemplate
1 1 1 1 2 2 1 0 1 0 0,911413 10/10 Неперекрывающийся шаблон
1 2 1 3 0 0 0 1 1 1 0,534146 10/10 NonOverlappingTemplate
0 1 1 2 0 0 2 1 2 1 0,739918 10/10 NonOverlappingTemplate
0 1 2 0 3 0 2 1 0 1 0,350485 10/10 NonOverlappingTemplate
0 2 0 3 1 0 1 2 0 1 0,350485 10/10 NonOverlappingTemplate
1 0 1 1 2 1 0 0 4 0 0,122325 9/10 NonOverlappingTemplate
2 2 1 1 0 1 0 2 1 0 0,739918 9/10 NonOverlappingTemplate
1 1 2 0 3 1 1 1 0 0 0,534146 10/10 NonOverlappingTemplate
1 1 1 0 1 2 1 0 2 1 0,911413 10/10 NonOverlappingTemplate
1 0 1 1 1 3 1 1 0 1 0,739918 9/10 NonOverlappingTemplate
0 0 0 1 0 1 3 1 0 4 0,035174 10/10 NonOverlappingTemplate
2 3 0 0 0 2 1 0 1 1 0,350485 9/10 NonOverlappingTemplate
0 0 0 0 1 3 2 2 1 1 0,350485 10/10 NonOverlappingTemplate
2 0 2 1 2 0 0 0 0 3 0,213309 10/10 NonOverlappingTemplate
0 1 1 0 2 1 1 1 1 2 0,911413 10/10 Неперекрывающийся шаблон
2 0 2 1 1 0 2 0 1 1 0,739918 10/10 NonOverlappingTemplate
0 2 0 1 0 0 0 1 2 4 0,066882 10/10 NonOverlappingTemplate
1 1 2 0 0 4 1 1 0 0 0,122325 10/10 NonOverlappingTemplate
3 1 0 1 0 1 0 3 1 0 0,213309 10/10 NonOverlappingTemplate
1 0 1 2 1 1 1 0 1 2 0,911413 10/10 NonOverlappingTemplate
3 1 2 1 1 0 2 0 0 0 0,350485 10/10 NonOverlappingTemplate
2 0 2 1 1 0 0 2 2 0 0,534146 10/10 NonOverlappingTemplate
0 3 1 2 2 0 1 0 0 1 0,350485 10/10 NonOverlappingTemplate
1 2 1 4 1 1 0 0 0 0 0,122325 10/10 NonOverlappingTemplate
1 2 1 3 0 1 0 1 0 1 0,534146 10/10 NonOverlappingTemplate
0 1 4 0 0 1 0 1 1 2 0,122325 10/10 NonOverlappingTemplate
0 2 0 0 1 1 1 3 1 1 0,534146 10/10 NonOverlappingTemplate
1 0 2 1 0 1 1 0 2 2 0,739918 10/10 NonOverlappingTemplate
1 3 2 2 1 1 0 0 0 0 0,350485 10/10 NonOverlappingTemplate
2 3 2 2 0 1 0 0 0 0 0,213309 10/10 NonOverlappingTemplate
2 1 1 0 1 3 2 0 0 0 0,350485 10/10 NonOverlappingTemplate
1 0 3 0 1 0 2 0 2 1 0,350485 9/10 NonOverlappingTemplate
1 1 1 0 4 0 1 0 0 2 0,122325 10/10 NonOverlappingTemplate
0 0 0 1 0 1 1 0 3 4 0,035174 10/10 NonOverlappingTemplate
0 4 2 0 1 0 0 1 1 1 0,122325 10/10 NonOverlappingTemplate
0 1 3 1 2 1 0 1 0 1 0,534146 10/10 NonOverlappingTemplate
1 0 2 1 1 1 2 1 1 0 0,911413 10/10 NonOverlappingTemplate
2 1 0 0 1 0 0 3 1 2 0,350485 10/10 NonOverlappingTemplate
0 1 1 1 1 1 2 1 1 1 0,991468 10/10 NonOverlappingTemplate
1 1 3 1 0 2 1 0 1 0 0,534146 10/10 NonOverlappingTemplate
2 1 1 0 2 2 0 0 0 2 0,534146 10/10 NonOverlappingTemplate
2 0 0 1 3 0 1 0 2 1 0,350485 8/10 NonOverlappingTemplate
2 1 1 0 1 1 0 1 2 1 0,911413 9/10 NonOverlappingTemplate
1 1 2 0 1 2 0 1 1 1 0,911413 10/10 NonOverlappingTemplate
0 1 3 0 1 2 1 1 1 0 0,534146 10/10 NonOverlappingTemplate
0 0 2 1 2 0 0 1 2 2 0,534146 10/10 NonOverlappingTemplate
2 0 1 1 1 1 0 3 1 0 0,534146 9/10 NonOverlappingTemplate
0 0 4 2 1 0 1 0 1 1 0,122325 10/10 NonOverlappingTemplate
3 1 0 0 3 0 1 2 0 0 0,122325 10/10 NonOverlappingTemplate
1 2 1 1 2 1 0 1 1 0 0,911413 10/10 Неперекрывающийся шаблон
2 1 1 1 2 0 0 2 0 1 0,739918 9/10 NonOverlappingTemplate
2 2 0 1 0 2 1 1 0 1 0,739918 10/10 NonOverlappingTemplate
0 2 0 0 0 2 2 1 2 1 0,534146 10/10 NonOverlappingTemplate
1 1 2 3 1 2 0 0 0 0 0,350485 10/10 NonOverlappingTemplate
0 1 1 0 2 0 1 2 1 2 0,739918 10/10 NonOverlappingTemplate
2 1 2 0 0 2 0 1 1 1 0,739918 9/10 NonOverlappingTemplate
1 1 0 1 3 2 0 1 1 0 0,534146 10/10 NonOverlappingTemplate
0 2 0 2 1 2 1 0 1 1 0,739918 10/10 NonOverlappingTemplate
2 1 0 1 0 2 1 1 2 0 0,739918 10/10 NonOverlappingTemplate
1 0 1 0 4 2 0 1 0 1 0,122325 10/10 NonOverlappingTemplate
1 2 0 0 0 4 1 0 0 2 0,066882 10/10 NonOverlappingTemplate
2 1 0 0 3 0 1 1 1 1 0,534146 9/10 NonOverlappingTemplate
3 1 0 0 2 1 0 2 0 1 0,350485 10/10 NonOverlappingTemplate
1 0 1 1 0 1 1 1 2 2 0,911413 10/10 NonOverlappingTemplate
0 2 1 0 2 0 0 0 3 2 0,213309 10/10 NonOverlappingTemplate
0 0 2 1 2 3 0 1 1 0 0,350485 10/10 NonOverlappingTemplate
1 1 0 2 2 1 2 0 0 1 0,739918 10/10 NonOverlappingTemplate
4 0 1 1 1 0 1 1 1 0 0,213309 9/10 NonOverlappingTemplate
1 0 2 0 0 2 1 3 0 1 0,350485 10/10 NonOverlappingTemplate
1 1 0 1 2 0 0 2 3 0 0,350485 10/10 NonOverlappingTemplate
1 0 2 2 0 2 1 0 1 1 0,739918 10/10 NonOverlappingTemplate
0 2 3 1 1 0 1 1 1 0 0,534146 10/10 NonOverlappingTemplate
2 0 0 0 1 3 2 1 1 0 0,350485 9/10 NonOverlappingTemplate
1 1 2 0 1 2 1 1 0 1 0,911413 10/10 Неперекрывающийся шаблон
1 1 2 3 0 3 0 0 0 0 0,122325 10/10 NonOverlappingTemplate
0 2 0 2 3 0 1 0 1 1 0,350485 10/10 NonOverlappingTemplate
1 0 2 1 2 0 2 1 0 1 0,739918 10/10 NonOverlappingTemplate
0 1 2 1 1 1 2 1 1 0 0,911413 10/10 Неперекрывающийся шаблон
1 1 1 0 0 5 0 1 1 0 0,017912 10/10 NonOverlappingTemplate
0 0 1 0 1 1 2 2 1 2 0,739918 10/10 NonOverlappingTemplate
1 4 1 2 1 0 0 1 0 0 0,122325 10/10 NonOverlappingTemplate
1 1 2 1 2 0 0 0 2 1 0,739918 10/10 NonOverlappingTemplate
0 1 1 2 1 0 0 3 1 1 0,534146 10/10 NonOverlappingTemplate
1 0 2 0 2 0 1 0 2 2 0,534146 10/10 NonOverlappingTemplate
2 1 1 1 1 0 1 0 2 1 0,911413 10/10 Неперекрывающийся шаблон
0 2 2 1 0 1 1 1 2 0 0,739918 10/10 NonOverlappingTemplate
2 0 1 0 1 0 0 2 2 2 0,534146 10/10 NonOverlappingTemplate
3 1 1 1 0 0 1 0 0 3 0,213309 10/10 NonOverlappingTemplate
0 0 2 1 0 2 1 0 2 2 0,534146 10/10 NonOverlappingTemplate
2 0 2 1 1 0 2 0 1 1 0,739918 10/10 NonOverlappingTemplate
1 1 2 1 0 1 2 2 0 0 0,739918 10/10 Шаблон перекрытия
3 0 1 0 2 0 1 3 0 0 0,122325 10/10 Универсальный
2 4 1 0 0 1 0 1 1 0 0,122325 10/10 Приблизительная энтропия
1 1 1 2 0 0 0 1 1 1 ---- 8/8 RandomExcursions
1 1 0 1 3 1 1 0 0 0 ---- 8/8 RandomExcursions
0 1 0 0 0 0 1 2 3 1 ---- 8/8 RandomExcursions
0 1 0 0 2 2 0 0 2 1 ---- 8/8 RandomExcursions
0 0 0 1 1 2 2 1 0 1 ---- 8/8 RandomExcursions
0 1 0 0 2 1 2 1 0 1 ---- 8/8 RandomExcursions
0 1 1 1 1 1 2 0 0 1 ---- 8/8 RandomExcursions
0 0 1 1 1 0 1 0 1 3 ---- 8/8 RandomExcursions
1 0 0 2 1 1 1 0 0 2 ---- 8/8 Случайные ЭкскурсииВариант
1 0 0 1 2 1 0 1 0 2 ---- 8/8 Случайные ЭкскурсииВариант
1 0 1 0 2 0 1 1 0 2 ---- 8/8 Случайные ЭкскурсииВариант
1 0 1 1 0 1 3 0 1 0 ---- 7/8 Случайные ЭкскурсииВариант
1 2 0 0 0 2 1 1 1 0 ---- 7/8 Случайные ЭкскурсииВариант
3 0 0 1 0 1 1 0 1 1 ---- 7/8 Случайные ЭкскурсииВариант
1 1 2 0 1 0 0 1 1 1 ---- 7/8 Случайные ЭкскурсииВариант
1 0 1 3 0 0 1 0 2 0 ---- 8/8 Случайные ЭкскурсииВариант
0 0 2 1 1 1 0 1 0 2 ---- 8/8 Случайные ЭкскурсииВариант
0 1 0 0 1 0 2 0 3 1 ---- 8/8 Случайные ЭкскурсииВариант
0 0 2 0 1 0 0 2 2 1 ---- 8/8 Случайные ЭкскурсииВариант
0 0 2 1 1 0 0 0 1 3 ---- 8/8 Случайные ЭкскурсииВариант
0 1 0 2 0 0 1 3 1 0 ---- 8/8 Случайные ЭкскурсииВариант
1 0 0 2 1 0 0 0 1 3 ---- 8/8 Случайные ЭкскурсииВариант
0 2 1 1 0 1 0 2 1 0 ---- 8/8 Случайные ЭкскурсииВариант
2 0 1 1 0 2 0 1 1 0 ---- 8/8 Случайные ЭкскурсииВариант
2 1 0 1 0 1 1 0 2 0 ---- 8/8 Случайные ЭкскурсииВариант
2 1 0 1 0 2 1 1 0 0 ---- 8/8 Случайные ЭкскурсииВариант
2 1 1 1 0 2 1 1 1 0 0,911413 10/10 Последовательный
0 3 3 1 0 0 2 0 1 0 0,122325 10/10 Последовательный
1 1 0 1 3 1 0 0 2 1 0,534146 10/10 LinearComplexity
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Минимальный процент прохождения для каждого статистического теста, за исключением
случайный экскурсионный (вариантный) тест примерно = 8 для
размер выборки = 10 двоичных последовательностей.
Минимальный процент прохождения теста случайного отклонения (варианта)
составляет приблизительно = 7 для размера выборки = 8 двоичных последовательностей.
Для получения дополнительных указаний создайте таблицу вероятностей, используя программу MAPLE.
в разделе дополнений к документации.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Однако, если вы проверите все биты как ./оценить 8000000
умножить на 10 битовых потоков, тест NIST не проходит файл с
8 0 1 0 1 0 0 0 0 0 0,000000 * 7/10 * Прогонов
Интересная статистическая аномалия, не так ли? Вероятно, что-то связано с побитовым способом создания образцов и довольно плохим моделированием NIST, о котором хорошо известно. Четко $\чи^2$ варьируется в зависимости от размера окна выборки, т. е. 1 бит, 8 бит и т. д. И эта случайность не является точной наукой. Я понял, что это больше зависит от того, как вы относитесь к своему TRNG.
Итак, в заключение, я не полностью ответил на ваш вопрос, а скорее добавил к нему...