Bitcoin Forum
May 21, 2024, 03:21:59 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 6 7 »  All
  Print  
Author Topic: Истинный ГСЧ (True RNG, TRNG)  (Read 14798 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 29, 2015, 07:36:50 AM
Last edit: January 29, 2015, 07:51:55 AM by Balthazar
 #41

Я смотрел, в принципе более-менее... То есть, поводов заменять твой быдлокод своим пока не нашел. Cheesy

Во всяком случае, беглый взгляд говорит о том, что с одним детектором он странностей демонстрировать не должен...

Что же до выборки, мне просто поведение этой конфигурации само по себе не понравилось. Потому как один из счетчиков имеет среднюю скорость хода примерно на 3-5% выше, по результатам больших выборок, что может быть существенной разницей для режима "2 кванта на бит" при наличии каких-либо сопутствующих дефектов реализации. Для некратного же количества квантов какое-либо влияние данной разницы будет исключено, поэтому оно пока предпочтительнее. С более быстрыми всегда можно разобраться позднее... Cool
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 29, 2015, 03:54:54 PM
Last edit: January 29, 2015, 04:28:27 PM by Balthazar
 #42

По итогам ~24000 тиков на счетчиках:

Code:
pi@raspberrypi ~/random $ ./ent out.bin
Entropy = 7.810806 bits per byte.

Optimum compression would reduce the size
of this 1050 byte file by 2 percent.

Chi square distribution for 1050 samples is 253.41, and randomly
would exceed this value 51.64 percent of the times.

Arithmetic mean value of data bytes is 127.9886 (127.5 = random).
Monte Carlo value for Pi is 3.154285714 (error 0.40 percent).
Serial correlation coefficient is -0.027979 (totally uncorrelated = 0.0).
pi@raspberrypi ~/random $

Продолжаем набирать данные.
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 29, 2015, 06:17:13 PM
 #43

~30000 тиков:

Code:
Entropy = 7.841481 bits per byte.

Optimum compression would reduce the size
of this 1233 byte file by 1 percent.

Chi square distribution for 1233 samples is 254.21, and randomly
would exceed this value 50.22 percent of the times.

Arithmetic mean value of data bytes is 127.8045 (127.5 = random).
Monte Carlo value for Pi is 3.063414634 (error 2.49 percent).
Serial correlation coefficient is -0.016041 (totally uncorrelated = 0.0).

Чтд, с ростом длины последовательности отклонение Chi2 приближается к 50%, а энтропия растет...
t309
Legendary
*
Offline Offline

Activity: 1946
Merit: 1000


View Profile
January 29, 2015, 11:56:10 PM
 #44

ви ето бету у капсул с тритием измерять не думали? тоже законно и поток посерезней фонового
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 30, 2015, 12:31:47 AM
Last edit: January 30, 2015, 12:57:00 AM by Balthazar
 #45

Да, активность у трития в трубках очень высока, потому как порой закачивают туда этак 60 гигабеккерелей. Но толку от этих 60 миллиардов распадов в секунду никакого нет, потому что бета с энергией 18 кэВ полностью поглощается стеклом. Всё, что остается - это 8-15 мкР/ч тормозного ренгеновского излучения с низкой энергией, которое обнаружить можно только сняв со счетчика экран. Roll Eyes Даже если разбить содержащую тритий трубку, что было бы не очень умно, далеко не всякий счетчик её поймает т.к. 18 кэВ бета поглощается даже бумагой, а не то что стенками счетчика.

P.S. Вернее, толк есть - из таких трубок получаются отличные светящиеся брелки. Smiley
t309
Legendary
*
Offline Offline

Activity: 1946
Merit: 1000


View Profile
January 30, 2015, 01:09:26 PM
 #46

а если снять с щетчика екран поместить все ето в герметичную емкость и уже внутри емкости разбить трубку с тритием, хотя проблемма больше в датчике, он под екраном стекляний (((
а бета от трития сможет непосредственно влиять на фото матрицу от какого нить фотика? ну или использовать чтото такое http://detector.org.ua/pinphotodiodes.html
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 30, 2015, 01:38:00 PM
Last edit: January 30, 2015, 01:50:01 PM by Balthazar
 #47

Зачем, если это будет заведомо хуже и многократно дороже, чем гамма/бета/альфа счетчик за 300-2000 рублей + HIS-7 или калильная сетка? Не говоря уж о том, что это откровенно небезопасно.

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

Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 30, 2015, 02:46:14 PM
 #48

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

P.S. Получил калильные сетки только что, чуть позже бегло потестирую и завтра уже буду пробовать в деле.
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 30, 2015, 03:42:45 PM
Last edit: January 30, 2015, 10:30:23 PM by Balthazar
 #49

Получил калильные сетки только что, чуть позже бегло потестирую
Собственно, вот:

http://www.youtube.com/watch?v=pnmDMhGWK8Y

Четыре сетки:

http://www.youtube.com/watch?v=bV6cImGrzoQ

Как видим, на расстоянии 10-20 см счетчику уже практически безразлично их присутствие.

Ну и бонус, проверка эффективности HTC One, клавиатуры, кардридера и хрустальной посуды в качестве экрана:

http://www.youtube.com/watch?v=B5etgmkPCDw
http://www.youtube.com/watch?v=MLgsUloSWAU

 Roll Eyes

И никакого трития в битых колбах, отравляющего воздух в комнате, вовсе не нужно. Smiley

Завтра будут интересные результаты, сдается мне, когда оба счетчика смогу нормально запустить. Примерно 40-60 бит/с, что уже похоже на более-менее оперативную генерацию.

P.S. Стоит это счастье на ибее по 4 доллара за штучку, думаю у китайцев можно и дешевле найти.
Webcelerator
Copper Member
Legendary
*
Offline Offline

Activity: 1288
Merit: 1010



View Profile
January 31, 2015, 02:56:40 PM
 #50

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

P.S. Получил калильные сетки только что, чуть позже бегло потестирую и завтра уже буду пробовать в деле.
Казалось бы - при чем тут наркотики и Чуйская Долина....
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 31, 2015, 09:27:09 PM
Last edit: February 02, 2015, 06:16:40 PM by Balthazar
 #51

Стартанул. Smiley



Полный размер: http://s017.radikal.ru/i418/1501/c9/f4b22dda1297.jpg

http://youtu.be/6lN1rKzJg9o

Пара конвертеров DC-DC для раздельного питания и пара КТ3102ЕМ, запитывающих двухканальный оптрон АОТ101АС. Вот как-то так. Smiley

Пока отдает 20-40 бит в секунду, позже будем подкручивать.

Казалось бы - при чем тут наркотики и Чуйская Долина....
Ну, вам виднее. Smiley
becool
Legendary
*
Offline Offline

Activity: 1442
Merit: 1016


View Profile
January 31, 2015, 09:44:44 PM
 #52

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

P.S. Получил калильные сетки только что, чуть позже бегло потестирую и завтра уже буду пробовать в деле.
Казалось бы - при чем тут наркотики и Чуйская Долина....

Торчин продукт, следущая остановка "Ботанический сад".
Где-то между двумя этими остановками и обсуждаются такие вопросы. Между общагой и лекцией.

Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
January 31, 2015, 10:26:48 PM
Last edit: January 31, 2015, 11:44:07 PM by Balthazar
 #53

Первые результаты:

Code:
pi@raspberrypi ~/random $ ./ent out.bin
Entropy = 7.988813 bits per byte.

Optimum compression would reduce the size
of this 16272 byte file by 0 percent.

Chi square distribution for 16272 samples is 252.08, and randomly
would exceed this value 53.99 percent of the times.

Arithmetic mean value of data bytes is 127.1610 (127.5 = random).
Monte Carlo value for Pi is 3.176991150 (error 1.13 percent).
Serial correlation coefficient is 0.001272 (totally uncorrelated = 0.0).
pi@raspberrypi ~/random $

Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
February 02, 2015, 04:33:26 AM
 #54

Code:
pi@raspberrypi ~/random $ ent out.bin
Entropy = 7.999409 bits per byte.

Optimum compression would reduce the size
of this 305755 byte file by 0 percent.

Chi square distribution for 305755 samples is 251.43, and randomly
would exceed this value 50.00 percent of the times.

Arithmetic mean value of data bytes is 127.6658 (127.5 = random).
Monte Carlo value for Pi is 3.137659687 (error 0.13 percent).
Serial correlation coefficient is -0.001450 (totally uncorrelated = 0.0).
pi@raspberrypi ~/random $
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
February 03, 2015, 11:27:44 PM
Last edit: February 04, 2015, 12:07:50 AM by Balthazar
 #55

Сгенерировал небольшую выборку в 65536 байт:

Code:
Entropy = 7.996925 bits per byte.

Optimum compression would reduce the size
of this 65536 byte file by 0 percent.

Chi square distribution for 65536 samples is 279.30, and randomly
would exceed this value 25.00 percent of the times.

Arithmetic mean value of data bytes is 127.5949 (127.5 = random).
Monte Carlo value for Pi is 3.117377770 (error 0.77 percent).
Serial correlation coefficient is 0.002464 (totally uncorrelated = 0.0).

И сконвертировал её в картинку:

Code:
pi@raspberrypi ~/bmp $ dd if=out.bin bs=1024 count=64 of=random.bin
64+0 records in
64+0 records out
65536 bytes (66 kB) copied, 0.0039159 s, 16.7 MB/s
pi@raspberrypi ~/bmp $ cat random.bin | convert -depth 8 -size 320x200+0 gray:- out.png
convert.im6: unexpected end-of-file `-': No such file or directory @ error/gray.c/ReadGRAYImage/207.
pi@raspberrypi ~/bmp $

Ругается, но результат выплевывает:

Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
February 04, 2015, 09:22:58 PM
Last edit: February 04, 2015, 11:00:56 PM by Balthazar
 #56

В виду того, что дефолтное ядро не позволяет мерить время с достаточной точностью, подправил чуть-чуть под себя:

https://github.com/CryptoManiac/rng/blob/master/rng.c

Оно понятно, что броадкомовскому таймеру в общем случае доверять мы не можем, но для тестов без пересборки ядра вполне пригодно.

P.S. Хотя, провести аудит таймера намного проще, чем ГСЧ... В случае таймера достаточно сравнения результатов для двух разных железок, с ГСЧ такой прием невозможен.
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
February 05, 2015, 08:21:35 PM
 #57

велосипедисты, про  /dev/random не слышали?
смешно, шутку оценил  Smiley
Шутка была бы смешной, если бы не была грустной:

Quote
$ dd if=/dev/urandom bs=1 count=100000 | ent
Entropy = 7.998566 bits per byte.

Optimum compression would reduce the size
of this 100000 byte file by 0 percent.

Chi square distribution for 100000 samples is 198.79, and randomly
would exceed this value 99.50 percent of the times.

Arithmetic mean value of data bytes is 127.5079 (127.5 = random).
Monte Carlo value for Pi is 3.134045362 (error 0.24 percent).
Serial correlation coefficient is 0.005217 (totally uncorrelated = 0.0).
100000+0 records in
100000+0 records out
100000 bytes (100 kB) copied, 7.71541 s, 13.0 kB/s
$
$ dd if=/dev/urandom bs=1 count=100000 | ent
Entropy = 7.998009 bits per byte.

Optimum compression would reduce the size
of this 100000 byte file by 0 percent.

Chi square distribution for 100000 samples is 275.81, and randomly
would exceed this value 25.00 percent of the times.

Arithmetic mean value of data bytes is 127.2780 (127.5 = random).
Monte Carlo value for Pi is 3.146525861 (error 0.16 percent).
Serial correlation coefficient is 0.001174 (totally uncorrelated = 0.0).
100000+0 records in
100000+0 records out
100000 bytes (100 kB) copied, 7.73171 s, 12.9 kB/s
$
$ dd if=/dev/urandom bs=1 count=100000 | ent
Entropy = 7.998428 bits per byte.

Optimum compression would reduce the size
of this 100000 byte file by 0 percent.

Chi square distribution for 100000 samples is 216.93, and randomly
would exceed this value 95.00 percent of the times.

Arithmetic mean value of data bytes is 127.2716 (127.5 = random).
Monte Carlo value for Pi is 3.133085323 (error 0.27 percent).
Serial correlation coefficient is -0.000920 (totally uncorrelated = 0.0).
100000+0 records in
100000+0 records out
100000 bytes (100 kB) copied, 7.81786 s, 12.8 kB/s

Просто 4 запуска подряд, и лишь в один из них получился приличный результат по Chi2:

Quote
Entropy = 7.998072 bits per byte.

Optimum compression would reduce the size
of this 100000 byte file by 0 percent.

Chi square distribution for 100000 samples is 268.13, and randomly
would exceed this value 50.00 percent of the times.

Arithmetic mean value of data bytes is 127.2684 (127.5 = random).
Monte Carlo value for Pi is 3.134525381 (error 0.22 percent).
Serial correlation coefficient is 0.000859 (totally uncorrelated = 0.0).
100000+0 records in
100000+0 records out
100000 bytes (100 kB) copied, 7.86818 s, 12.7 kB/s

 Roll Eyes
Pivo
Legendary
*
Offline Offline

Activity: 1876
Merit: 1000



View Profile
February 05, 2015, 09:14:58 PM
 #58


ГСЧ с помощью зомбоящика без антенны.

needbmw (OP)
Legendary
*
Offline Offline

Activity: 1302
Merit: 1008



View Profile
February 05, 2015, 09:36:11 PM
 #59


ГСЧ с помощью зомбоящика без антенны.


...будет похож на ГСЧ пока сосед сверлить рядом не начнет  Wink


NO PSAKING!
Balthazar
Legendary
*
Offline Offline

Activity: 3108
Merit: 1358



View Profile
February 08, 2015, 03:32:35 PM
Last edit: February 08, 2015, 03:43:22 PM by Balthazar
 #60

Небольшой апдейт:



Все-таки, крокодилы и разъемы смотрятся эргономичнее. Cheesy Ну а КП501А, благодаря охрененному входному сопротивлению, позволил выкинуть входные резисторы.

Проверка после апдейта:



Вроде все более чем прилично, однако тест проваливаем:

Code:
Entropy = 7.999279 bits per byte.

Optimum compression would reduce the size
of this 410000 byte file by 0 percent.

Chi square distribution for 410000 samples is 410.47, and randomly
would exceed this value 0.01 percent of the times.

Arithmetic mean value of data bytes is 128.4058 (127.5 = random).
Monte Carlo value for Pi is 3.121829863 (error 0.63 percent).
Serial correlation coefficient is 0.000703 (totally uncorrelated = 0.0).

Исходный набор байтов: https://docs.google.com/file/d/0B4cZ4tPn0KAtNmxzd2VuNkVOeUU/edit

На осциллографе всё в порядке, никаких неожиданностей:



Будем разбираться, ну и в процессе делаю демон для сброса генерируемой энтропии в общесистемный пул. Smiley

Между тем, следующий этап - сгенерировать картинку с разрешением 1280х1280.
Pages: « 1 2 [3] 4 5 6 7 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!