Я заинтересован в генерации псевдослучайных чисел для криптографии. Помимо главы 5 Менезес / Oorschot / Vanstone ; Глава 8 Стинсона ; и глава 3 Goldreich , где еще я могу найти больше? Меня интересуют общие принципы проектирования PRNG (желательные свойства, тесты и т. Д.).
15
Ответы:
Вы можете проверить
источник
Если вы думаете о реализации ваших идей, есть стандартная серия тестов, которые дают реализации PRNG. Эти тесты (DIEHARD и преемник DIEHARDER) могут быть загружены с его архивированной веб-страницы и http://www.phy.duke.edu/~rgb/General/dieharder.php соответственно.
источник
Вы заинтересованы во внедрении PRNG? Если это так, то лучше всего не создавать самому, а просто использовать стандартный. / dev / urandom - правильный ответ на большинстве платформ. Если / dev / urandom не существует, генерирование случайного ключа AES с / dev / random и затем запуск режима AES-CTR для генерации множества псевдослучайных чисел является другим разумным подходом.
Я рекомендую вам ознакомиться с Криптографической инженерией Фергюсона, Шнайера и Коно. Это отличная книга. Он многому научит вас, как проектировать и создавать настоящие криптосистемы.
Если вам действительно нужно создать систему, которая будет развернута на практике, я рекомендую вам руководствоваться не теоретическим сообществом CS, а сообществом практиков и практиков-исследователей. Большая часть теоретической работы CS не будет иметь большого значения или даже может вводить в заблуждение для практической реализации безопасного PRNG. Я также призываю вас взглянуть на обмен стеками IT Security для подобных вопросов.
источник