Рейтинг:2

Hotbits, Random.org и что-то еще?

флаг jp

Я искал случайное начальное число для использования с генератором псевдослучайных чисел (не пытаясь ничего зашифровать). Я посетил следующие веб-сайты:

https://www.fourmilab.ch/hotbits/secure_generate.html

https://www.random.org/

Похоже, у Random.org солидный история и не испытывает проблем с DDoS-атаками, поскольку для них не требуется ключ API. Я, очевидно, не хотел бы использовать что-либо с любого из этих сайтов в качестве ключа шифрования, но кто-нибудь знает, являются ли результаты использования Random.org более или менее действительно случайными, чем то, что я мог бы получить от HotBits с моим собственным ключом API?

В основном я пытаюсь убедиться, что сам мой ключ API не используется в процессе генерации.Кроме этого, у меня нет серьезных идей, почему я должен избегать HotBits, за исключением неудобств, связанных с заказ мой собственный ключ API.

kelalaka avatar
флаг in
что случилось с /dev/urandom?
SAI Peregrinus avatar
флаг si
В компьютеры уже много лет встроены ГСЧ. /dev/urandom в Linux, getrandom() в Linux или BSD, CryptGenRandom в Windows и т. д.
Рейтинг:-1
флаг cn

В большинстве случаев случайное число должно быть секретным. Это должно быть что-то, что никто другой не знает. Получить случайное число с какого-то сайта по своей конструкции невозможно: сайт его тоже знает.

Каждый современный компьютер имеет генератор случайных чисел. Еще больше и больше встроенных устройств имеют его. Просто используйте это. Он доступен через вашу операционную систему, вам не нужно делать ничего особенного. Просто позвони получитьслучайный() на линуксе, BCryptGenRandom в Windows, /dev/*случайный в Unix-подобных операционных системах, ¦

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

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

Gilles 'SO- stop being evil' avatar
флаг cn
@PaulUszak Они не предоставляют «псевдо-семян». Псевдо-семя будет детерминистически сгенерировано из какого-то другого семени. Они обеспечивают условный результат непредсказуемого физического явления. Фактический TRNG был бы _необусловленным_ результатом непредсказуемого физического явления и, следовательно, слишком предвзятым, чтобы быть непосредственно полезным.
Paul Uszak avatar
флаг cn
Эээ, вы путаете TRNG с его восходящим источником энтропии? TRNG в значительной степени беспристрастны по определению. И разве ваши 3 примера не являются псевдо-семянами, поскольку они генерируются генераторами псевдослучайных чисел, такими как (ChaCha + state)?
Gilles 'SO- stop being evil' avatar
флаг cn
@PaulUszak Это обычное определение TRNG: физический источник перед обработкой. Конечно, это слово часто используется метонимически для обозначения физического объекта, который содержит как TRNG, так и обусловливающую схему.Как бы вы это ни называли, здесь есть два понятия: источник энтропии, который дает непредсказуемые результаты, но не создает _равномерно_ случайных битов, и весь пакет источника энтропии плюс обусловливание, который производит равномерно случайные биты. Вывод всего пакета не является _pseudo_random: он не выводится детерминистически.
Рейтинг:-2
флаг cn

Я предполагаю, что вас интересуют действительно случайные начальные числа, сгенерированные физически как часть классического TRNG ($H_{вход} > H_{выход}$), и мой ответ адаптирован соответственно.

Я бы избегал random.org из-за того, что они не публикуют, как именно генерируются числа. «Атмосферный шум» сама по себе не является методом генерации и извлечения случайных чисел. Секретность $\ne$ случайность. Насколько нам известно, они могут использовать какие-то линейные конгруэнтные генераторы и лгать об этом. Хотя я должен признать, что их числа кажутся статистически неотличимыми от случайных.

Я бы также почти исключил встроенные CSPRNG в ядрах современных компьютеров. Поскольку почтенный /dev/случайный/ был саботирован (Cui bono?), у вас остались только псевдослучайные генераторы, а не классические колмогоровские TRNG.

Итак, осталось два новичка. есть Оззи АНУ QRNG используя энергию нулевой точки вакуума, и, конечно же, шахту в ru.reallyrandom.com используя (в настоящее время) веб-камеру.

Поскольку вы подвергаете сомнению случайность этих источников, вы поняли, что существуют разные уровни случайности в TRNG в зависимости от их окончательного смещения энтропии вывода, $\эпсилон$. Национальный институт стандартов и технологий рекомендует $\эпсилон < 2^{-64}$. У меня нет значений смещения для других TRNG, приведенных выше, но смещение вывода reallyrandom.com оценивается как смехотворное. $\приблизительно 2^{-10,000}$. Это просто из-за входных выходных чисел в экстракторе случайности в соответствии с леммой об оставшемся хеше. Я просто трачу много энтропии.


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

Ответить или комментировать

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