В настоящее время я тестирую gpg --genkey
на Linux VM. К сожалению, это программное обеспечение, похоже, полагается на /dev/random
сбор энтропии и вежливо просит пользователя вручную вводить экраны после экранов криптографически случайного ввода, так что в конечном итоге оно может закончиться генерацией ключа, и я не нашел параметров командной строки, чтобы сообщить это использовать другой файл в качестве источника энтропии (парень на этом видео сталкивается с той же самой проблемой ...).
Тем не менее, пользователь должен быть свободен в выборе, /dev/urandom
так как в этом нет ничего плохого . Это в основном как воспоминание о старых алгоритмах PRNG, которые были более слабыми с криптографической точки зрения. Например, хотя на странице руководства NetBSD это различие может быть полезным на очень ранней стадии загрузки, оно описывает такое различие, как «фольклор» и «мнимая теория, которая защищает только от фантазийных моделей угроз» . Никто не согласен ни с количеством энтропии, требуемой этой командой, ни с тем фактом, что энтропия - это то, что фактически потребляется, как указано в man-странице GPG («ПОЖАЛУЙСТА, не используйте эту команду, если вы не знаете, что делаете, она может удалить драгоценную энтропию из системы!» ).
Я читал о людях, устанавливающих rngd
демон и настраивающих его для использования в /dev/urandom
качестве источника энтропии для подачи /dev/random
, но я нахожу такую практику сильно грязной.
Я попытался обойти проблему FreeBSD, удалив /dev/random
и связав ее с /dev/urandom
:
rm /dev/random
ln -s /dev/urandom /dev/random
Я вижу это как параметр, говорящий «Я верю /dev/urandom
как источник энтропии» .
Я боялся, что столкнусь с какой-нибудь ошибкой, но, похоже, это дает ожидаемый результат, поскольку команда теперь успешно возвращается немедленно.
Мой вопрос: есть ли какой-либо известный, практический и неправильный побочный эффект соединения /dev/random
с /dev/urandom
системами Linux, как это делается по умолчанию в системах FreeBSD? Или можно предусмотреть постоянную установку (например, в сценарии в конце процесса загрузки) в случае повторяющихся проблем, связанных с /dev/random
блокировкой какого-либо сервиса?