Каково самое безопасное семя для генерации случайных чисел?

Каковы самые безопасные источники энтропии для отбора генератора случайных чисел? Этот вопрос является языком и независимый от платформы и относится к любой машине в сети. Идеально я ищу источники, доступные машине в облачной среде или серверу, обеспеченному хостинговой компанией.

Существует два важных слабых мест для учета. Использование времени для отправки генератора случайных чисел является нарушением CWE-337. Использование маленького пространства семени было бы нарушением CWE-339.

62
задан 9 August 2010 в 13:09

10 ответов

(((PI X идентификаторов текущего потока) X идентификаторов текущего процесса) / отмечают количество), x пи

0
ответ дан 31 October 2019 в 13:16

ЭТО - ПРЕДПОЛОЖЕНИЕ! Фанаты Crypto исправьте, если у меня есть он неправильно

, официальный алгоритм для UUID/GUID в этой точке возвращает результат, который выполняется через криптографическую хеш-функцию - это берет известную информацию, такую как время, Mac addr, и в противоречии с формой UUID/GUID и затем выполняет это через криптографический хеш, чтобы гарантировать, что MAC-адрес не может быть извлечен.

я полагаю, что Вы можете XOR это вниз к числу битов, которых Вы требуете для семени с довольно хорошей гарантией, что результирующее значение одинаково распределяется по пространству числа, определенному Вашим желаемым числом битов. Обратите внимание, что я не утверждаю, что это безопасно, только что это действие должно произвести значение, которое распределяет равномерно через разрядное пространство со временем.

0
ответ дан 31 October 2019 в 13:16

Можно заработать случайные числа, сгенерированные радиоактивным распадом. Звуки, немного странные сначала, но Вы вытаскиваете реальные случайные числа из этого.

Радиоактивный распад

Другая Статья

1
ответ дан 31 October 2019 в 13:16

С Linux ответ является/dev/random (в Windows I, думают, что эквивалент называют CryptGenRand).

Однако в облачной среде/dev/random может быть сильно истощен и не мог бы иметь достаточной энтропии, чтобы ответить, что Вы запрашиваете.

Для решения той проблемы наша компания разрабатывает истинное устройство генератора случайных чисел, которое может обеспечить хорошие случайные числа (квантового источника) к тысячам серверов и VM одновременно. Если бы устройство установлено в LAN Вашего облачного центра обработки данных, все, в чем Вы нуждались бы, наш deamon, работающий в Вашей машине. Этот deamon контролирует/dev/random энтропийный уровень и когда энтропия необходима, выполняет запрос к устройству (по сети) и помещает полученные случайные данные в энтропийный пул ядра.

, Если Вы хотите знать больше о нашем решении, посетите наш веб-сайт (www.sqrtech.com) или свяжитесь с нами по info@sqrtech.com.

Julien

1
ответ дан 31 October 2019 в 13:16

Используйте random.org , они утверждают, что предложили истинные случайные числа любому в Интернете , и у них также есть API HTTP, который можно использовать. Они предлагают и бесплатные и заплаченные услуги.

правовая оговорка: я ни в коем случае не аффилирован с random.org

1
ответ дан 31 October 2019 в 13:16

Сначала необходимо ли определить фактическое использование/цель генератора случайных чисел и почему Вы думаете в, должен передать так стандарт высокой безопасности? Причина, которую я спрашиваю, состоит в том, что Вы упомянули, что выбрали его от можения - при использовании его действительно в целях безопасности, затем защищающих источник и канал для отправки, это вокруг намного более важно, чем чей-либо академический выбор вязания.

113-секундный элемент является размером фактических случайных чисел, в которых Вы нуждаетесь - большое семя хорошо, но только если сгенерированное число является также большим - иначе Вы будете просто читать небольшую часть сгенерированного числа, и это увеличит Ваш риск.

Изучают реконфигурируемые шифры, а не вещи как SHA или AES. Вот 2 научно-исследовательских работы, если Вы хотите считать и проверить, как и почему они работают:

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.97.6594&rep=rep1&type=pdf http://www.springerlink.com/index/q29t6v1p45515186.pdf

Или захват любой реконфигурируемый исходный код шифра ГОСТа Вы находите в сети и затем Вас любой канал это просто любое основное семя (как связанный "тикер" плюс идентификатор узла веб-сервера (если это находится в веб-ферме) плюс часть ответа на любом интернет-новостном сайте, который изменяет главные новости все время, или можно питаться, это высоко управляло начальным семенем (который можно сделать самостоятельно), и используйте легкую псевдослучайную последовательность для выбора дальнейших конфигураций шифра. Даже NSA не может повредить тот :-) Так как это всегда - другой шифр. В фактических crypto целях фактически нужно использовать очень управляемое начальное семя только, чтобы смочь копировать последовательность для проверки. Это - то, куда мы возвращаемся к первому объекту - обеспечение источника и распределения.

1
ответ дан 31 October 2019 в 13:16

Ваши самые безопасные методы прибудут из природы. То есть что-то, что происходит за пределами Вашей компьютерной системы и вне нашей способности предсказать, что это - шаблоны.

, Например, многие исследователи в Криптографически безопасный PRNGs будет использовать радиоактивный распад в качестве модели, другие могли бы изучить фракталы и т.д. Существуют существующие средства создающий истинный RNGs

, который Один из моих любимых способов реализовать PRNG от взаимодействия с пользователем с компьютером. Например, это сообщение не было чем-то, что могло быть предопределено прямой разработкой от моего прошлого ряда сообщений. Где я уехал, моя мышь на моем экране очень случайна, след, который это сделало, также случаен. Наблюдение от взаимодействия с пользователем. Злоупотребление от средств обеспечения определенного входа, таким образом, что определенные числа сгенерированы, могло быть смягчено при помощи 'роя' вводов данных пользователем и вычисления, это - 'вектор', пока у Вас нет каждого пользователя в Вашей системе как Канун, необходимо быть в порядке. Это не подходит для многих приложений, поскольку Ваше объединение чисел прямо пропорционально к вводу данных пользователем. Реализация этого может иметь свои собственные проблемы.

Люди, заинтересованные RNG, уже сделали вещи, такие как:

  1. Использование веб-камера, независимо от того, что случайные вспышки на экране долго обсуждают к, когда тот грузовик проходит мимо, это - все случайные данные.
  2. , Как упомянуто уже, излучение
  3. Атмосфера
  4. Взаимодействие с пользователем (как упомянуто)
  5. , Что продолжается в системе EDG.

Безопасные семена прибывают из природы.

редактирование: На основе того, что Вы смотрите на выполнение, я мог бы предложить использовать агрегирование EDG Вашего облачного сервера.

1
ответ дан 31 October 2019 в 13:16

Поскольку согласие является криптографически сильными случайными числами, должен полученные аппаратные средства формы. Некоторые процессоры имеют эту функциональность (процессоры Intel amonst другие). Также звуковые карты могут использоваться для этого путем измерения колебаний младшего бита a-d преобразователя.

, Но из-за аппаратных средств нуждается ни в какого языка и независимого от платформы ответа. В значительной степени любая большая ОС будет иметь поддержку безопасных случайных чисел. Это также хитро для реализации хорошего генератора случайных чисел с хорошим выводом, так как необходимо будет отследить остающуюся энтропию в пуле.

, Таким образом, первый шаг должен определить, какой язык (языки) Вы будете использовать. У некоторых действительно есть сильная поддержка случайного числа - если дело обстоит не так необходимо было бы абстрагировать поколение для вызова зависимых от платформы случайных источников.

В зависимости от Ваших потребностей безопасности быть утомленным от источников "онлайн" начиная с man-the midde может быть серьезной угрозой неаутентифицируемым источникам онлайн.

1
ответ дан 31 October 2019 в 13:16

4 - выбранный очень случайным броском костей. :-)

2
ответ дан 31 October 2019 в 13:16

Random.org предложения истинный генератор случайных чисел веб-сервис , "отобранный" атмосферными помехами.

Вы получаете 200 000 случайных битов бесплатно каждый день, до 1 миллиона случайных ограничений битов после этого необходимо пополнить учетную запись, это становится столь же дешевым как 4 миллиона битов за доллар.

2
ответ дан 31 October 2019 в 13:16

Другие вопросы по тегам:

Похожие вопросы: