Технический форум по робототехнике.
contr » 22 окт 2009, 12:43
к чему такие сложности? Диод уже источник шумов. Его на вход АЦП и вешаем. А генераторы нужны когда МК АЦП не имеет.
Master » 22 окт 2009, 12:49
ну епта пособие как бороться с шумами. Типа если знаешь как сделать шум, то и будешь знать как с ним бороться.
avr123.nm.ru » 22 окт 2009, 12:52
contr писал(а):к чему такие сложности? Диод уже источник шумов. Его на вход АЦП и вешаем. А генераторы нужны когда МК АЦП не имеет.
Я ж предложил вообще ничего не подключать ко входу АЦП - к нему ведь и так 2 диода внутри подключены и еще куча полупроводников.
boez » 22 окт 2009, 13:42
Да, а насчет ноги кварца - нужно только не забывать, что АЦП тактируется от него же, поэтому значение будет не таким уж случайным - но младшие биты конечно случайными будут.
contr » 22 окт 2009, 13:46
Встроенные защитные диоды как источник шумов использоваться не могут. Не зря же изготовитель снижает шумы АЦП, чтобы они не влияли на точность преобразования.
Нужен внешний "пинок", которым может быть как шина питания, так и диод в прямом включении – это классика.
avr123.nm.ru » 22 окт 2009, 13:56
Бредятина.
Ku6opr » 23 окт 2009, 02:17
А если усложнить задачу: чтоб конечный пользователь не мог влиять не генерацию случайных чисел
Например, в этой статье рассказано об атаках через электропитание
http://dxdt.ru/2009/09/19/2635/
-= Александр =- » 23 окт 2009, 03:45
Просьба в моей теме не флудить и глупости всякие не придумывать.
Я думаю лучше всего разработать способ с минимумом внешних деталей, а лучше вообще без них.
Кто силен в теории статистики? Как я понимаю - генератор должен давать нам белый шум, без всяких перекосов и корреляций...
А единственная возможная атака по электросети - это 380 Вольт в розетку...
boez » 23 окт 2009, 10:39
Генератор должен быть случайным. Хоть чуть-чуть. Остальное можно из него вытащить программно, взяв много измерений. Совсем без деталей - тут высказали интересную идею с ватчдогом - замерить точное время ресета, младшие биты этого времени могут быть вполне случайными из-за нестабильности генератора.
SSG » 23 окт 2009, 12:18
Ну так чем программная реализация не устраивает?
http://www.racal.ru/rsp/lfsr.htm
blindman » 23 окт 2009, 12:24
Тем, что при каждом запуске одну и ту же последовательность выдаёт. Вопрос-то не в том, ка сделать генератор, а как его инициализировать.
contr » 23 окт 2009, 13:03
единственное преимущество WDT - вывод МК не занимаем, но за это в программе расплачиваться придется. Частоту считать, WDT сбрасывать ...
Michael_K » 23 окт 2009, 15:38
boez писал(а):...тут высказали интересную идею с ватчдогом - замерить точное время ресета, младшие биты этого времени могут быть вполне случайными из-за нестабильности генератора...
Это я "высказал"
Они действительно хорошо шумят. Более того, поскольку время вотчдога настраивается -
можно получить хорошее распределение в нескольких битах сразу.
Делал очень просто:
Запускал вотчдог, и крутился в коротком цикле инкрементируя какую-то ячейку памяти.
Когда происходил ресет, смотрел от чего он произошел, если от вотчдога, то считывал байтик
(случайный) из этой ячейки и шел дальше.
Естественно, это делается один раз при включении - дальше псевдослучайные генераторы неплохо справляются.
Это было нужно для случайного номера сетевого пакета - иначе сетки некоторые плохо работают.
Последний раз редактировалось
Michael_K 23 окт 2009, 15:46, всего редактировалось 1 раз.
SSG » 23 окт 2009, 15:40
Можно же при первом включении питания инициализировать программный генератор рандомом, а затем сохранять состояние генератора и при последующем запуске инициализировать сохраненными значениями.
В некоторых случаях для получения белого шума используют простейшие приемники не настроенные на какую-либо станцию. Деталей нужно минимум.
Michael_K » 23 окт 2009, 15:42
инициализировать программный генератор рандомом
Вопрос в том, где его взять... этот рандом