В C++26 появился Philox: генератор случайных чисел для масштабно параллельных симуляций

Everything should be a random number generator

Справочник cppreference разбирает библиотеку случайных чисел C++: uniform random bit generators, движки вроде Mersenne twister и linear congruential, а также распределения от нормального до Пуассона. Отдельно отмечено, что ни один из этих движков не является криптостойким — для безопасности нужна отдельная библиотека вроде OpenSSL. В C++26 добавлен Philox: счётчиковый генератор с малым состоянием и периодом не менее 2^130, рассчитанный на Monte-Carlo симуляции и легко векторизуемый на GPU.

Ни один из этих движков случайных чисел не является криптостойким. Как и для любой защищённой операции, для этой цели следует использовать криптографическую библиотеку (например, OpenSSL RAND_bytes).

Ещё за этот день

2026-11-08