Я не могу говорить за ваш генератор, так как я его не видел. Является ли он криптографически безопасным (поскольку это немного сложно написать, и только потому, что вы не можете восстановить начальное число, ни на один момент не означает, что другие не могут).
Меня совсем не удивляет, что PractRand не обнаруживает петлю при >275 ГБ (см. примечания). У меня нет непосредственного опыта работы с PractRand, но, несмотря на его низкую родословную, все «стандартные» тесты имеют проблемы. STS NIST имеет очень узкий набор внутренней статистики, что сильно ограничивает допустимые размеры выборки.У несгибаемого есть печально известный тест сумм и другие слабые тесты. Недавно было обнаружено, что у твердолобых есть погрешности теста Колмогорова-Смирнова (~ 8 выборок ТБ). И это ограничено ~ 250 ГБ данных. ent полностью отсутствует несколько значений p. FIPS 140 довольно слабый. Тест U01 должен выполняться с параметрами, которые можно настроить (почему?). PractRand ничем не отличается, особенно если учесть, что над ним работает ограниченное количество разработчиков.
Таким образом, ни один из доступных наборов тестов не идеален, а случайность раздражает. Хотя это то, что мы имеем на данный момент. Я бы предложил использовать другой набор тестов для образцов <275 ГБ и сравнить. Рекомендуется лучший из трех запусков. 275 ГБ ключевого материала, растянутого из одного начального числа, в любом случае должно быть достаточно для большинства случаев использования.
Примечания:
Для тестирования тестов PractRand просто сгенерируйте 100 ГБ из /dev/urandom, скопируйте их и объедините, чтобы сформировать пролонгацию. Посмотрите, что произойдет для вас.
Я только что закрепил объединенный файл размером 2 x 10 ГБ из /dev/urandom, и он прошел с двумя WEAK: -
sts_serial| 6| 100000| 100|0,99995833| СЛАБЫЙ
несгибаемая_дна| 0| 2097152| 100|0,99637872| СЛАБЫЙ
Такова жизнь.