Алгоритм М

Это название дано Кнутом. Алгоритм представляет собой способ объединить несколько псевдослучайных потоков, увеличивая их безопасность. Выход одного генератора используется для выбора отстающего выхода другого генератора. На языке С:

Смысл состоит в том, что если prngA - действительно случайно, невозможно ничего узнать о prngB (и, следовательно, невозможно выполнить криптоанализ). Если prngA имеет такой вид, что его криптоанализ может быть выполнен только, если его выход доступен в свою очередь (т.е., только если сначала был выполнен криптоанализ prngB), а в противном случае оно по сути действительно случайно, то эта комбинация должна быть безопасной.