Как вы, наверное, знаете, генерировать энтропию на виртуальной машине не так просто, как на «обычном» ПК. Генерация gpg-ключа на виртуальной машине может занять некоторое время, даже с правильными инструментами.
Существует множество других криптографических функций, которые не настолько энтропийны, как gpg.
Можно ли сказать, что криптография менее безопасна на виртуальной машине?
Ответы:
Прежде всего, позвольте мне сказать, что я совсем не эксперт по безопасности.
Поскольку для создания ключей gpg используется
/dev/random
генератор случайных чисел, он так же безопасен на виртуальной машине, как и на реальной машине./dev/random
является блокирующим устройством и перестанет доставлять случайность сверх доступной суммы. Вы можете проверить доступную случайность поcat /proc/sys/kernel/random/entropy_avail
(должно быть около 2000 )На виртуальной машине доступная случайность действительно ниже, чем на реальной машине, из-за отсутствия доступа к оборудованию.
Вы можете увеличить энтропию, например, применяя энтропийные ключи и / или переключаясь на не виртуализированный компьютер.
Есть хорошая статья о энтропии на виртуальных машинах. К сожалению, обе части статьи доступны только в кэше Google прямо сейчас.
Энтропия оказывает дальнейшее влияние на любое шифрование ssl / tls. Таким образом, использование
/dev/urandom
или любой не совсем случайный источник действительно влияет на безопасность ваших приложений.С точки зрения надежности
/dev/urandom
по сравнению с истинной случайностью;я не могу дать вам достойный ответ, извините.
Для получения дополнительной информации по этой теме вы можете перейти на http://security.stackexchange.com и / или прочитать, например. эта почта
источник
/dev/urandom
использует криптографически безопасный PRNG (засеянный тем же пулом, что и/dev/random
), поэтому проблем не должно быть, если в этом пуле достаточно начальной энтропии. Там может быть смысл посеять его из пула энтропии родительского компьютера.Да, в большинстве случаев криптография менее безопасна на виртуальной машине, чем на «реальном» сервере.
Последний может по крайней мере собрать энтропию от некоторого фактического оборудования. Фактически, работа части HW - в большинстве случаев - связана с каким-то физическим явлением, которое всегда подвержено небольшим изменениям, случайным по всем показателям. Поскольку серверы обычно работают очень долго без сброса, результирующий энтропийный пул в конечном итоге будет достаточно качественным.
Виртуальные машины страдают от трех проблем.
Лучшее решение состоит в том, чтобы заставить виртуальную машину просто сдаться и понять, что HW видит плохой источник энтропии. Затем организуйте локальную сетевую службу для распространения высококачественной энтропии (см. Entropy Broker ). «Энтропийный сервер» может извлекать случайность из общего HW (в этом случае он должен работать в течение достаточного времени, и у него должна быть достойная ОС) или из конкретного крипто-HW (чип TPM, чип VIA Padlock и т. Д.).
Виртуальная машина, использующая такой сервис, может быть даже более безопасной (криптографически), чем «реальный» сервер, который только что загрузился.
источник