Re[3]: Случайные случайные числа
От: ДимДимыч Украина http://klug.org.ua
Дата: 13.07.10 12:17
Оценка: 6 (1)
Здравствуйте, McSeem2, Вы писали:

MS>Меня вообще удивляет — чего может быть проще встроить в проц один-единственный стабилитрон и снимать с него шум?!


Да есть такое: http://cateee.net/lkddb/web-lkddb/HW_RANDOM.html.
Обязательно бахнем! И не раз. Весь мир в труху! Но потом. (ДМБ)
Re[5]: Случайные случайные числа
От: andy1618 Россия  
Дата: 14.07.10 12:27
Оценка:
Здравствуйте, netch80, Вы писали:

A>>Кстати, написать реализацию вычисления случайных чисел по времени задержки нажатия на клавиши — задачка не такая простая как кажется.

A>>Главная засада там — что стандартный опрос клавиш идёт по системному таймеру с фиксированным(!) интервалом.

N>Ну вообще-то, если речь о клавиатуре типичного современного PC, там нет никакого "опроса клавиш по таймеру" (это Вы в лучшем случае начитались Jourdain'а).


Да, согласен, не совсем точно выразился. Имелось ввиду, что, по результатам анализа, события keydown приходят
в приложение СТРОГО в моменты времени вида t = t0 + k*T, где k — целое, а T — довольно большой фиксированный период (например, на
компьютере, с которого я сейчас пишу, T=15.6 миллисекунд).
С чем именно это связано — с таймером внутри клавиатуры, с обработкой прерываний, с планировщиком задач или ещё с чем-либо — по сути не важно. Главное — что эти числа очень далеки от случайных и "выковыривать" из них энтропию надо очень аккуратно
Re[3]: Случайные случайные числа
От: rblaze  
Дата: 21.07.10 14:01
Оценка:
Здравствуйте, EmmGold, Вы писали:

EG>существуют тесты AES, NIST и т.д. В эллиптической криптографии генератор случайных чисел должен выдать числа случайным образом, но при этом равномерно распределённые по заданной зоне.


Это всего лишь вопрос вероятностей. Если генератор выдал последовательность из 100 единиц подряд, и мы ее обозвали негодной, то с вероятностью 1/(2^100) мы отбросили хороший генератор, а с вероятностью 1 — 1/(2^100) забраковали сбойнувшую аппаратуру или глючную программу. При таких перекосах лучше ошибиться в безопасную сторону.
Re[6]: Случайные случайные числа
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 05.09.10 05:58
Оценка:
Здравствуйте, andy1618, Вы писали:

A>>>Кстати, написать реализацию вычисления случайных чисел по времени задержки нажатия на клавиши — задачка не такая простая как кажется.

A>>>Главная засада там — что стандартный опрос клавиш идёт по системному таймеру с фиксированным(!) интервалом.
N>>Ну вообще-то, если речь о клавиатуре типичного современного PC, там нет никакого "опроса клавиш по таймеру" (это Вы в лучшем случае начитались Jourdain'а).

A>Да, согласен, не совсем точно выразился. Имелось ввиду, что, по результатам анализа, события keydown приходят

A>в приложение СТРОГО в моменты времени вида t = t0 + k*T, где k — целое, а T — довольно большой фиксированный период (например, на
A>компьютере, с которого я сейчас пишу, T=15.6 миллисекунд).
A>С чем именно это связано — с таймером внутри клавиатуры, с обработкой прерываний, с планировщиком задач или ещё с чем-либо — по сути не важно. Главное — что эти числа очень далеки от случайных и "выковыривать" из них энтропию надо очень аккуратно :)

Это скорее всего таки длительность цикла опроса в самой клавиатуре (а не в компьютере). У него действительно цикл опроса, и от этого никуда не деться. (В предыдущем замечании я был не совсем корректен в формулировках — отсутствие опроса факт именно PC, а не внешней стороны.)

Другой вопрос — насколько точно вы меряете момент вхождения в обработчик прерывания. Если это точность до миллисекунд или даже десятков микросекунд, там значения могут соответствовать данной формуле. Если снимаются с большей точностью (например, через счётчик TSR), то там начинают влиять, например, задержки чтения обработчика в кэш, а это вносит существенное шатание в младшие биты и позволяет получать из них прикидку на случайность. Осталось эту случайность правильно применить.
The God is real, unless declared integer.
Re[4]: Случайные случайные числа
От: Mr.Cat  
Дата: 05.09.10 10:41
Оценка:
Здравствуйте, ДимДимыч, Вы писали:
MS>>Меня вообще удивляет — чего может быть проще встроить в проц один-единственный стабилитрон и снимать с него шум?!
ДД>Да есть такое: http://cateee.net/lkddb/web-lkddb/HW_RANDOM.html.
Из текста не совсем понял — оно при наличии используется, например, в /dev/(u)random? Или надо самому что-то делать/настраивать?
Re[5]: Случайные случайные числа
От: dilmah США  
Дата: 05.09.10 11:01
Оценка: 6 (1)
MC>Из текста не совсем понял — оно при наличии используется, например, в /dev/(u)random? Или надо самому что-то делать/настраивать?

скажем, в ядре нетбсд в пул энтропии /dev/*random автоматически подмешиваются данные из разных источников -- сеть, диски, и при наличии хардварный генератор. Плюс с помощью rndctl можно более тоноко управлять источниками случайности.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.