Какова правильная доступная энтропия в системах UNIX?

12

У меня есть три вопроса, связанных с энтропией в системах UNIX:

  1. Я проверяю энтропии на Linux с помощью: cat /proc/sys/kernel/random/entropy_avail. Это стандартное место с информацией о доступной энтропии, определенной в POSIX?
  2. Какой правильный доступ я должен ожидать? Я слышал, что энтропия должна быть равна или больше 100, и что может возникнуть проблема, если энтропия постоянно ниже 100.
  3. Используется ли эта энтропия /dev/randomили она также имеет какое-либо отношение /dev/urandom?
синтагма
источник

Ответы:

9

/dev/randomне стандартизирован. POSIX не предоставляет никакого способа генерирования криптографически безопасных случайных данных и не имеет понятия энтропии.

Расчет энтропии ядра Linux соответствует теоретико-информационной модели энтропии, которая не имеет отношения к практическому использованию. Единственный случай, когда это уместно, - это новое устройство, у которого никогда не было времени накапливать энтропию (это включает в себя живые дистрибутивы; установленные системы сохраняют свою энтропию от одной загрузки к другой). Помимо этой ситуации, энтропии всегда достаточно, потому что энтропия не истощается. Поскольку Linux /dev/randomблокирует, когда считает, что энтропии не хватает, используйте /dev/urandom, что никогда не блокирует. Использование /dev/urandomполезно для всего, включая генерацию криптографических ключей (за исключением, как уже упоминалось выше, для только что созданного устройства).

В итоге:

  1. Нет, это не стандартно.
  2. Вам все равно.
  3. Использование/dev/urandom .

Многие, но не все Unix-системы имеют /dev/urandomи /dev/random. Смотрите страницу Википедии для более подробного обсуждения.

Жиль "ТАК - перестань быть злым"
источник