Аппаратный генератор случайных чисел
Много читаю об использовании, например, звуковой карты для генерации случайных чисел. Ну вот есть у меня звуковая карта, микрофон и ненастроенный телевизор. А дальше что? Программы бы какуй-нибудь, чтобы эти числа показыавала на экран или еще каким-либо образом использовала такой генератор.
комментариев: 83 документов: 4 редакций: 4
ЗЫ. Мусирование вопроса о "не совсем случайности" мало связано в практикой. Какая разница, Имеет ключ AES 256 или 200 случайных бит, если он все равно передается при помощи DH/ElGamal со стойкостью порядка 2128. Аналогично если запихнуть тысячебитовую строку в SHA-1 или что-то из семейства SHA-2. Никакие малые закономерности взломщику не помогут.
По, про шахты не знаю, а по горизонтали показания коррелируют у приборов на одном меридиане. Насчёт продуктов распада – вряд ли найдётся способ регистрации с нужной точностью.
это не ответ на последний вопрос :)
С криптографической, вероятно, да. ( Правда некоторых тут ещё интересует и теория :) А вот написать программу, которая по шумам звуковой карты определяет время суток (или даже делает астрологический прогноз на основе корреляций формы гистограм с расположением планет) может быть и стоило бы попробовать.
Трудности тут могут возникнуть при попытке написания алгоритма для кластеризации гистограмм без участия человека.
PS
А польза для криптографической (стеганографической) практики, как тут уже отмечалось, может состоять в аргументированном ответе на вопрос "оппонента" о причинах наличия у вас на диске больших массивов случайных данных. ;)
комментариев: 271 документов: 13 редакций: 4
Можно изготовить наручные часы, которые определяют время, сезон и фазу луны по шумам микрофона. На индикаторе будет показана гистограмма, дальше владелец сам. :)
Или солнечные часы всё-таки лучше?
Global Correlations in Random Data
комментариев: 9796 документов: 488 редакций: 5664
Есть реализации, где случайные данные из звуковых процесов подкачиваются в пул энтропии Linux /dev/random.
http://www.vanheusden.com/aed/
http://www.linuxfromscratch.or.....ds/files/entropy.txt
А в общем случае схема может быть такой:
1) Померить разность фаз между стереоканалами и накопить первичный буфер наименьший значащий разряд.
2) Тестировать блоки из первичного буфера быстрыми стат. тестами (например на сжатие). Отбросить блоки, не прошедшие тест. Если слишком много блоков не прошло тест – выдать сигнал аварийного завершения (звуковвая карта сгорела, модуль драйвера не загрулился после перезагрузки и т.д.)
3) Сделать первичную фильтрацию: отбросить пары одинаковых битов (00, 11), заменить пары различающихся битов (01->0 10->1). Это позволит убрать простейшую парную корреляцию.
4) Сделать дистилляцию случайности: хэшировать большие блоки данных из пункта 3, получая на выходе блоки меньших данных.
Есть более сложные методы (например пункт 3 не даёт постоянный битрэйт, а иногда это требуется в сетевом/потоковом шифровании)
Есть масса исследований на тему "Randomness extraction"
Если это запись выступления ансамбля, то обычно исполнители не бегают по сцене, и разность фаз не будет случайной (а даже если и бегают, то с конечной скоростью). Может лучше просто последний разряд?
комментариев: 9796 документов: 488 редакций: 5664
Разность в младших разрядах двух каналов.
Запись выступления ансабля не подойдёт. На вход карты лучше подать шумы диодов или воткнуть микрофон, подвешенный над вентилятором кулера системного блока
комментариев: 271 документов: 13 редакций: 4
Спасибо. Примерно это и нужно. Осталось установить Linux. :)
комментариев: 9796 документов: 488 редакций: 5664
Ну или платите разработчикам или пользуйтесь шароварами:
http://leo.yuriev.ru/113