Кажется, что в документации по GMP перечислены только следующие алгоритмы. для генерации случайных чисел:
gmp_randinit_mt
, Мерсенн Твистер;gmp_randinit_lc_2exp
иgmp_randinit_lc_2exp_size
, линейные конгруэнтные.
Также есть gmp_randinit_default
, но он указывает на gmp_randinit_mt
.
Ни Mersenne Twister, ни линейные конгруэнтные генераторы не должны использоваться для криптографии. Что же тогда обычно делают люди, когда хотят использовать GMP для создания некоторого криптографического кода?
(Использование криптографического API для шифрования / дешифрования и т.д. не помогает, потому что я бы фактически реализовал новый алгоритм, которого нет в криптографических библиотеках).