• Программирование
  • C++
  • Веб-сервисы, защищенные посредством промежуточного программного обеспечения, ориентированного на обработку сообщений

Генераторы псевдослучайных чисел с применением 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 (криптостойкие генераторы псевдослучайных чисел)
•    Плохие генераторы