Но если хард будет из того, что есть (выше приводились идеи), то будет все же лучше.
Даже с той точки зрения, что новый хард вставлять в сервер дело не безопасное...кто знает как он работает? Не будет ли проблем с системой? Вообще ко всему, что относится к апгрейду серверов обычно подходят очень аккуратно.
Здравствуйте, Smarty, Вы писали:
S>А не складывается ли ощущение(у меня лично складывается, но может это так... на горячую голову...) что при СЕРЬЕЗНОМ подходе солюшн данной проблемы ТОЧНО не должен быть soft-only. А должен быть hard+soft. Т.е. втыкается нечто флеше-подобное в USB и начинает гнать постоянно и непредсказуемо меняющуюся картинку(как это реализовать — вопрос большой, отдельный и скажем прямо — центральный для всего солюшена, но мы пока архитектуру ваяем, верно?). Ну дальше понятно — софт анализирует это нечто "постоянно меняющееся" -> поток битов -> ... Думается, что при должной реализации подобная связка будет востребована юзерами(а это очень специфические юзеры, далеко не всем это надо) на ура.
Гарантировано, 100%, это будет hard/soft решение. Прямо вот в этом топике обсуждается какой именно hard может порождать необходимую "случайность".
Архитектуру тоже можно обсудить. Я здесь картинку накидал, но она не является полной или обязательной.
Если есть конкретные предложения по архитектуре — рассказывай, будем обсуждать (лучше отдельный топик для этого открой).
Несколько вещей:
1. sln находится в директории Solution
2. app.config — содержит конфигурацию. secondsToListen установлен в 60 — лучше поставить поменьше 5 будет в самый раз.
3. lineInNoise.wav — временный файл, в который пишет шум. Откройте "Volume Control" и убедитесь в том, что recording не выключен, установите громкость на максимум. Выберите откуда будете записывать. LineIn — шумит не достаточно хорошо. Я слушаю нечто под названием Wave Out Mix. После работы программы запустите wav-файл и убедитесь, что шум действительно есть.
4. В test.cs замените 1024*1024 на столько байтов сколько вам нужно. Учтите, что скорость работы программы примерно 12Kб/мин.
5. Поместите утилиту ent.exe туда же где находится и главный exe (то бишь скорее всего в Solution/bin/DEBUG).
6. Полученные случайные числа пишутся в entropy.dat
6. Запускайте программу
Если что не работает — пишите, будем разбираться.
P.S. Пока что таким методом я смог получить 0.5Mb чисел с энтропией 7.999 на 8 бит, что приятно
Здравствуйте, valmond, Вы писали:
V>Но если хард будет из того, что есть (выше приводились идеи), то будет все же лучше.
V>Даже с той точки зрения, что новый хард вставлять в сервер дело не безопасное...кто знает как он работает? Не будет ли проблем с системой? Вообще ко всему, что относится к апгрейду серверов обычно подходят очень аккуратно.
Резонно. Но зато здесь встает вопрос: а можно ли подвести все разношерстное "серверо-железо" под некий общий знаменатель, да еще так, что бы знаменатель этот был более-менее вменяемым источником энтропии? Не исключено, но далеко не факт. А в случае "как-бы-флеш-на-USB" у нас есть надежный источник. Совместимость с системой... Да, вопрос большой. Но выпускают же теже флешки, которые без проблем втыкаются хошь в десктопы, хошь в сервера, а то и в ноуты. Так что — решаемо, не без головной боли, конечно, но — решаемо.
Здравствуйте, Mishka, Вы писали:
M>Гарантировано, 100%, это будет hard/soft решение.
Значит угадал.
M> Прямо вот в этом топике обсуждается какой именно hard может порождать необходимую "случайность". M>Архитектуру тоже можно обсудить. Я здесь картинку накидал, но она не является полной или обязательной. M>Если есть конкретные предложения по архитектуре — рассказывай, будем обсуждать (лучше отдельный топик для этого открой).
Мне думается архитектура будет сильнейшим образом закорочена на хард. Представим предельный случай: наш источник гарантированно, постоянно и в неограниченных объемах выдает поток реально-случайных бит. Тогда софту просто нечего делать — сесть на поток и транслировать его клиету — тут даже какие-то схемки-диаграммки смешно рисовать. И совсем другое дело если источник таков, что выдает как-бы случайную картинку, но ее еще надо отловить, усилить, выделить реально-случайную состовляющую, конвертнуть ее, проверить... Вот тут да — софту будет где развернутся. Ну и за схемками дело не станет, будут и они. А резюме простое: определяется хардовая составляющая проекта И ПОД НЕЕ чертится(если вообще это надо) архитектура. Такие мысли...
P.S. И кстати говоря, прежде чем приниматься пахать ниву...
Выше был задан резонный вопрос — а так ли оно надо(вообще, исходная идея) как может показаться? Т.е. то, что
Наличие истинно-случайных чисел позволит улучшить результаты экспериментов и как следствие улучшить точность оценки финансовых инструментов...
не вызывает никаких сомнений. Улучшит. Будет ближе к жизни. НО! Если это самое улучшение составит 0.000000001% от применения псевдо-случайных генераторов, то... сами понимаете. Так не будут ли мудрым шагом сначала прикинуть(очень грубо, +/- километр) обещаемое улучшение от внедрения идеи? Более того, интересно даже просто методика такой оценки. Ведь многие потенциальные проги-клиенты этого солюшена могут начать выдавать худшие результаты именно потому, что на вход им начнет поступать более жизненная информация. Не думали об этом?
C>>Ну или веб камера?
M>Особенно если она в интернете, тогда можно получить постоянный поток данных. Две вещи: где найти хорошую, постоянно меняющуюся картинку, как её обработать, чтобы убрать вещи, повторяющиеся из кадра в кадр?
почитал вот я комментарии и обратил внимание, что крайне слабо (на данный момент, конечно) с точки зрения теории вероятности, и, главное, математической статистики
я не выпускник кафедры ТВиМС, но кое-что помню из института
имхо, вот еще над чем стоит подумать:
1)что значит "истинно случайные числа"? как правило, в моделировании нужен генератор чисел, распределенных по определенному закону (как правило, гауссовскому или равномерному; помнится, "белый шум" мы моделировали как раз равномерным распределением)
2)по поводу "усиления энтропии" вспоминается Центральная Предельная Теорема (кажется, так), но это для гауссовского распределения
3)оценивать качество источников и качество самого алгоритма надо, ессно, методами МС (всякие там несмещенные оценки и т.д.)
4)считается, что в природе все случайности описываются как раз гауссовским законом
Здравствуйте, RikkiTikkiTavi, Вы писали:
RTT>почитал вот я комментарии и обратил внимание, что крайне слабо (на данный момент, конечно) с точки зрения теории вероятности, и, главное, математической статистики RTT>я не выпускник кафедры ТВиМС, но кое-что помню из института
Я тоже, по обоим пунктам
RTT>имхо, вот еще над чем стоит подумать:
RTT>1)что значит "истинно случайные числа"? как правило, в моделировании нужен генератор чисел, распределенных по определенному закону (как правило, гауссовскому или равномерному; помнится, "белый шум" мы моделировали как раз равномерным распределением)
На основе равномерного можно сделать любой другой. Поэтому, имхо, лучше всего генерировать равномерное.
RTT>2)по поводу "усиления энтропии" вспоминается Центральная Предельная Теорема (кажется, так), но это для гауссовского распределения
Причём тут она? Насколько я помню, Центральная Предельная Теорема это о том, что если сложить с десяток различных распределений, получится Гауссовское.
RTT>3)оценивать качество источников и качество самого алгоритма надо, ессно, методами МС (всякие там несмещенные оценки и т.д.)
В соседней ветке есть ссылка на эту тему.
RTT>4)считается, что в природе все случайности описываются как раз гауссовским законом
Не заню, может быть.. Но у моделирования могут быть какие-то свои цели.
Здравствуйте, Mishka, Вы писали:
M>Лучше спросить у криптографов, поскольку они основные потребители истинно-случайных чисел.
Конечно, лучше!
У них и решений готовых хватает.
Насколько я помню — самое популярное (конечно, после платы со спец. девайсом) — это шум младших бит аналогового входа звуковой карты. Причем 2-3 самых крайних бита шумят даже у самых навороченных карт. И даже независимо от наличия или отсутствия сигнала на входе. Как, впрочем, и любой другой АЦП шумит (особенно если битов у него много).
Если вырезать больше бит — уже либо пойдут 50 герц или какие другие синусоиды, а может, и совсем ничего.
Конечно, про неты и диезы речи не идет, однако и продукт не совсем для желающих строить кучки по песочницам.
Зы. Вообще, по показанному уровню впечатление возникает такое, что автор проекта желает в большей степени изобрести очередной велосипед в малознакомой (ему) области, чем создать нечто реально популярное.
...А отсюда наливаем, когда рецепт написан совсем неразборчиво...
Здравствуйте, SergH, Вы писали:
RTT>>2)по поводу "усиления энтропии" вспоминается Центральная Предельная Теорема (кажется, так), но это для гауссовского распределения SH>Причём тут она? Насколько я помню, Центральная Предельная Теорема это о том, что если сложить с десяток различных распределений, получится Гауссовское.
Получится нормальное распределение, чем оно и знаменито.
Здравствуйте, Михаил, Вы писали:
М>Насколько я помню — самое популярное (конечно, после платы со спец. девайсом) — это шум младших бит аналогового входа звуковой карты. Причем 2-3 самых крайних бита шумят даже у самых навороченных карт. И даже независимо от наличия или отсутствия сигнала на входе. Как, впрочем, и любой другой АЦП шумит (особенно если битов у него много). М>Если вырезать больше бит — уже либо пойдут 50 герц или какие другие синусоиды, а может, и совсем ничего.
Я выше запостил ссылку на код, там как раз это всё и реализовано. Бесплатно и без дополнительных девайсов.
М>Зы. Вообще, по показанному уровню впечатление возникает такое, что автор проекта желает в большей степени изобрести очередной велосипед в малознакомой (ему) области, чем создать нечто реально популярное.
Реально популярное? Это было бы здорово, но чую, что одному мне не потянуть
На самом деле, получение истинно-случайных чисел, не есть конечная цель для меня. Я хочу написать библиотеку для оценки финансовых инструментов и их рисков. И начинаю я с самого начала — случайных чисел, которые используются почти во всех современных алгоритмах.
Если какую-то часть проекта смогут использовать люди, например, занимающиеся криптографией, то это просто замечательно. Но это не значит, что я буду искать оправдание реализции генератора для других целей, нежели моих собственных.
Здравствуйте, Mishka, Вы писали:
SH>>Причём тут она? Насколько я помню, Центральная Предельная Теорема это о том, что если сложить с десяток различных распределений, получится Гауссовское.
M>Получится нормальное распределение, чем оно и знаменито.
Мне казалось, что Гауссовское это и есть нормальное..
Делай что должно, и будь что будет
Re: Проект “Entropy”
От:
Аноним
Дата:
01.05.05 00:08
Оценка:
А чем не подходят реализации генераторов случайных чисел криптографического качества от MS? Хотя бы та же CryptGenRandom ? Реализована в полном соответствии с американскими стандартами.
Здравствуйте, Аноним, Вы писали:
А>А чем не подходят реализации генераторов случайных чисел криптографического качества от MS? Хотя бы та же CryptGenRandom ? Реализована в полном соответствии с американскими стандартами.
Это псевдослучайные числа. Они специально создаются, чтобы пройти все тесты. Но в них нет никакой случайности, одна закономерность, предписаная алгоритмом.
Не знаю читали это или нет, но все же выложу думаю ничего плохого не выйдет. Автор Bruce Schneier, пишет о проблеме сущ пседво генераторов, и прилагает свое решение проблемы. http://www.schneier.com/yarrow.html
Здравствуйте, Smarty, Вы писали:
S>Здравствуйте, Mishka, Вы писали:
Ведь многие потенциальные проги-клиенты этого солюшена могут начать выдавать худшие результаты именно потому, что на вход им начнет поступать более жизненная информация. Не думали об этом?
Скорее, не выдадут вообще никаких результатов. Не успеют — за время жизни юзера
...А отсюда наливаем, когда рецепт написан совсем неразборчиво...
Источник радиоактивного распада — идеальный генератор случайных чисел во все времена, вы в эту сторону не смотрели? Может так статься, что безвредный K-40 и крохотный счетчит Гейгера подойдут для генерации истиннно случайных чисел более всего. Массовое промышленное изготовление подобных девайсов для "дома и семьи" ограничено многочисленными ограничениями ТБ, но для солидных контор такое устройство вполне приемлемо. Может быть я велосипед предлагаю и такие устройства уже есть?