Пришлось разрабатывать программу, которая использует aes256cbc для шифрования данных. Используется libtomcrypt. С++11.
Нужно проинициализировать генератор случайных чисел. В C++ вижу random, в libtomcrypt - rng_make_prng(). В качестве PRNG будет использоваться fortuna из libtomcrypt.
Вопрос:
- как корректно добавить энтропии фортуне? Откуда ее брать? C++ random? За примеры кода буду благодарен, с примерами скудно.
- какой критерий, что энтропия достаточна. Есть функция у фортуны entropy(), которая вернет значение. Какое значение считается приемлемым?
- надо ли следить за уровнем энтропии в процессе работы системы, и «подкачивать» новой, если уменьшается?
Спасибо.