Запутывания последовательностиЗаметим, что некоторые "запутывания" последовательностей
псевдослучайных чисел лишь ухудшают их статистические свойства.
Далеко не всегда сложность формирования рада порождает
случайность распределения. Например, генератор случайных чисел из
игровой программы неизвестного происхождения для программируемого
калькулятора использовал в качестве случайных чисел первые цифры
последовательности {83**K}. Легко доказывается, что такой
генератор будет на 14% чаще давать цифру 7, чем 8. В литературе
приводится громадное количество формул для генерации случайных
рядов, и автору довелось испытать их не один десяток, но, не то
чтобы хорошей, а даже удовлетворительной по статистическим
свойствам найти не удалось. Сдается, что часть подобных способов
генерации случайных рядов предложена в качестве шутки
криптографами, желающими упростить себе работу. Однако в системах
программирования обычно используют все же конгруэнтные генераторы
по алгоритму, предложенному Национальным бюро стандартов США,
который, имея длину периода 2**24, обеспечивает очень неплохие
статистические свойства. К сожалению, длина его периода для
криптографии слишком мала и, кроме того, было доказано, что
последовательности, генерируемые конгруэнтными генераторами, не
являются криптографически стойкими. Если дана часть такой
последовательности достаточной длины, то ее параметры могут быть
восстановлены.
|