Источник энтропии
Источники энтропии используются для накопления энтропии с последующим получением из неё начального значения (англ. initial value, seed, random seed), необходимого для работы генераторов истинно случайных чисел (ГСЧ). Источники энтропии значительно различаются в зависимости от своей реализации, например, тепловой шум (или шум Джонсона), источник радиоактивного распада, Генератор гармонических колебаний. Также источниками могут служить:
ПрименениеЭнтропия — это среднее количество информации, приходящееся на одно элементарное сообщение источника.[1] При накоплении достаточного количества энтропии, она может быть использована как начальное значение (seed) для создания необходимой величины криптографически стойкой хаотичности. В отличие от генератора псевдослучайных чисел (ГПСЧ), который использует одно фиксированное начальное значение (seed), ГСЧ всегда формирует случайные числа, опираясь на случайную величину, предоставленную различными высококачественными источниками энтропии. Накопленная энтропия служит основой для генераторов истинно случайных чисел, которые широко применяются в криптографии. Такие случайные числа необходимы для создания криптографических ключей, паролей и других элементов, обеспечивающих безопасность данных. Необходимый объём энтропииЭто минимальное количество случайных данных (измеряемое в битах), требуемое для конкретной криптографической или технической задачи. Недостаток энтропии делает систему уязвимой. Например, в AES (Advanced Encryption Standard) стандартная длина ключа составляет 128 бит, хотя поддерживаются варианты на 192 и 256 бит.[2] В высокозащищённых системах обычно используют ключи длиной 256 бит. При необходимости создания набора ключей применяют криптографически стойкие алгоритмы, требующие качественного случайного начального значения (seed). Нескольких сотен случайных бит, получаемых при однократном запуске компьютера, бывает достаточно для безопасной работы таких алгоритмов. Аппаратные источники энтропии"Аппаратные источники энтропии используют физические процессы, такие как тепловой шум, дробовой шум в полупроводниках, джиттер тактовых генераторов или радиоактивный распад, для генерации случайных чисел." Такие источники генерируют случайные числа на основе непредсказуемых физических явлений. Они считаются более надежными, поскольку их выходные данные невозможно предсказать или воспроизвести программно, однако их скорость может быть недостаточной для высоконагруженных систем. Видео- и аудиовходыМногие компьютерные системы оснащены входами для оцифровки аналоговых сигналов, как звук из микрофона или видео с камеры. Качество энтропии, получаемой таким способом, существенно зависит от аппаратной реализации устройства. Например:
Дисковые накопителиДисковые накопители (жёсткие диски) демонстрируют незначительные случайные колебания скорости вращения обусловленные турбулентностью воздушного потока внутри корпуса и механическими колебаниями компонентов. Измерение времени поиска данных (seek time) усиливает энтропийную составляющую. Данные, полученные таким образом, как правило, сильно взаимозависимы, поэтому необходима значительная обработка. В 1990-х годах даже на медленных системах достигалась генерация примерно 100 бит/мин (после обработки). В середине 2000-х годов на современном (на тот момент) оборудовании генерация составляла свыше 10 000 бит/с. Метод применяется в системных RNG (например, в Linux через Кеширование не создаёт проблем, так как операции чтения выполняются за очень короткое время. Неаппаратные источники"Программные источники энтропии полагаются на события, которые трудно предсказать, но не являются истинно случайными, такие как временные метки, ввод пользователя или системные прерывания." (RFC 4086 "Randomness Requirements for Security") Такие источники генерируют случайные данные на основе непредсказуемых, но нефизических событий, таких как время нажатия клавиш, движение мыши или сетевые пакеты. Они менее надежны, чем аппаратные. Часы и серийные номераКомпьютерные часы и связанные с ними временные метки часто предоставляют меньше энтропии, чем предполагает их техническая спецификация. Исследования[4] выявили следующие проблемы:
Использование идентификаторов (MAC-адреса, серийные номера SSD) также ограничено из-за структурированности данных: MAC-адреса содержат OUI-префикс производителя (3 байта), что снижает энтропию. Так, Dell использует несколько известных префиксов (включая Эти ограничения делают часы и серийные номера ненадёжными источниками энтропии без дополнительной обработки. Время и сетевой трафикСистемы могут собирать энтропию из:
Проблемы:
Методы, использующие данные источники энтропии, эффективны против удаленных атак, но напрямую зависят от качества измерений случайных величин. Примечания
Ссылки
|
Portal di Ensiklopedia Dunia