Генераторы псевдослучайных чисел с применением Crypto++
ОГЛАВЛЕНИЕ
Данная статья изучает применение генераторов псевдослучайных чисел.
Загрузки
• Скачать исходники - пример 1 - Win32 API CryptGenRandom - 4.2 Кб
• Скачать исходники - пример 2 – Линейный конгруэнтный генератор Crypto++ - 2.9 Кб
• Скачать исходники - пример 3 - Crypto++ RandomPool - 4.3 Кб
• Скачать исходники - пример 4 - Crypto++ AutoSeededRandomPool - 4.6 Кб
• Скачать исходники - пример 5 - Crypto++ AutoSeededX917RNG - 4.5 Кб
• Скачать документацию - FIPS 140-2 - 801 Кб
• Скачать документацию – Комплект проверки правильности RNG от NIST - 68 Кб
Случайные числа являются простейшим элементов не только для специалистов по криптографии, но и для специалистов в области теории вычислительных машин и систем и программистов. Требуется метод, быстро генерирующий псевдослучайный поток криптографически стойких чисел. Однако цели прямо противоположны - псевдослучайные последовательности могут генерироваться быстро, либо могут генерироваться стойко; но обычно не быстро со свойствами, не поддающимися криптоанализу.
В статье рассматриваются следующие вопросы:
• Польза случайных чисел
• Классы генераторов случайных чисел
• Типы генераторов
• Источники случайных чисел
• Тестирование последовательностей
• Выбор начального числа
• Функция выработки ключа
• Стандартный C++ rand( )
• Линейный конгруэнтный генератор
• Минимальный стандартный генератор
• Нелинейные конгруэнтные генераторы
• Win32 API CryptGenRandom( )
• Компиляция и внедрение Crypto++
• Генераторы случайных чисел Crypto++
• Таблица применений
• Дополнительные CSPRNG (криптостойкие генераторы псевдослучайных чисел)
• Плохие генераторы