Author

Topic: NovaCoin (scrypt PoW + PoS hybrid) [self-mod] - page 227. (Read 744451 times)

legendary
Activity: 3108
Merit: 1359
на счет "гарантированно надежного потока случайных байтов от радиоактивого распада" - так это до той поры, пока мы считаем распад ядра случайным процессом и не можем им управлять. Завтра налетит Земля на небесную ось, войдет в какой-нибудь новый рукав Галактики и будут ядра делиться не случайным образом, а с дивной периодичностью.
Квантовой механике по барабану на галактики и небесную ось. Управлять можно, в некоторых случаях можно ускорить/замедлить распад, но менее случайным он от этого не станет потому как каждое ядро представляет собой независимую квантовомеханическую систему.

Единственный недостаток тут - производительность и масштабируемость. Будет либо маленькая разрядность и быстро, либо большая разрядность и медленно... Если пытаться скомбинировать, то размеры генератора становятся большими.

К примеру, если использовать для генерации числа матрицу из 32 детекторов, смотрящую на покрытую слоем изотопа пластину, считая что наличие частицы в детекторе - это 1, а отсутствие - это 0, то в каждый произвольный момент времени мы на ней имеем 32 случайных бита или одно 32-разрядное число... При условии, что детектор обладает временем реакции, меньшим чем интервалы между снятием значений. Для генерации же ключей 32 бит как-то маловато, надо хотя бы 256... И тут либо проводить 8 измерений, что медленнее намного, либо делать матрицу из 256 детекторов...

Или же пойти по другому пути - один детектор и вычислять бит, как функцию от среднего интервал между распадами для последних трех-четырех распадов. Так компактнее, но нужен источник с большей активностью. Roll Eyes

P.S. Насколько я знаю, народ собирал такие генераторы с производительностью до 200 байт/с, просто из спортивного интереса. Громоздко и не очень быстро, но зато не псевдослучайно, а вполне по-настоящему. Smiley

https://www.fourmilab.ch/hotbits/hardware.html

Но покупать готовое - это не то, паранойя не успокоится. Smiley
legendary
Activity: 3108
Merit: 1359
Да всё верно, из-за всё той же проблемы в новом скрипте сборки ARMv7 билды были скомпонованы динамически, что сделало невозможным их запуск без соответствующих библиотек. Пока во всём этом разобрались, новые сборки уже успели выгрузиться по sftp.  Roll Eyes

ARMv7 билды будут в ближайшее время перелинкованы и заменены, а пока можно использовать ARMv6l сборку. Она будет работать нормально, но чуть-чуть медленнее ARMv7l (около 5-8% проигрыша в производительности).
ARMv7 билды перелинкованы статически и перезалиты.
legendary
Activity: 1260
Merit: 1019
Quote
В таком случае случайное раскрытие одного ключа делает уязвимыми остальные подписи.
Ну да. Но надо тогда сделать чтобы ключ не мог выйти за пределы девайса ни до, ни после использования.
Как это сделать - меня не спрашивайте. Все что один человек придумал - другой всегда разломать сумеет.
Можно ли создать сейф, который никто не сможет открыть никаким образом - это "парадокс всемогущества"
Но в быту ответ прост: "На всякую хитрую жопу найдется хуй с винтом"

Quote
2) Считаем гамма-кванты от распадающихся ядер сцинтилляционным детектором на йодиде натрия, преобразуем поток импульсов в нужный формат и гарантировано надежный генератор потока случайных байтов готов.
Кузьмич, да это ж цитата из Штирлица! Это ж шутка юмора. А на счет "гарантированно надежного потока случайных байтов от радиоактивого распада" - так это до той поры, пока мы считаем распад ядра случайным процессом и не можем им управлять. Завтра налетит Земля на небесную ось, войдет в какой-нибудь новый рукав Галактики и будут ядра делиться не случайным образом, а с дивной периодичностью.


http://dilbert.com/strip/2001-10-25
legendary
Activity: 3108
Merit: 1359
Нуу... Можно же сделать keyn = sha256 (keyn-1) или что-нибудь подобное.
В таком случае случайное раскрытие одного ключа делает уязвимыми остальные подписи. Roll Eyes

А доверять вообще никому нельзя. Даже самому себе.
Вовсе нет. У параноиков всегда есть возможность собрать аппаратный ГСЧ, в котором гарантированно не может быть каких-либо хаков.

1) Покупаем образец радиоактивного изотопа. На ибее и молотке полным-полно с самой разной активностью, особо параноидальные личности могут поехать в Желтые Воды и самостоятельно выкопать на заброшенном руднике кусок урановой руды. Или же купить антикварную тарелку вроде этой: https://www.youtube.com/watch?v=Bt5fB3iJqpI, старенький объектив из торированного стекла http://www.youtube.com/watch?v=1p68s8BBf7U и т.п.

2) Фиксируем гамма-кванты от распадающихся ядер сцинтилляционным детектором на йодиде натрия, преобразуем поток импульсов в нужный формат и гарантировано надежный генератор потока случайных байтов готов.
legendary
Activity: 1260
Merit: 1019
Quote
Deterministic ECDSA нисколько не отменяет нужду в генераторе случайных чисел, которому придется доверять.
Потому как хоть для подписывания и не нужен надежный источник энтропии, он всё равно нужен для создания самих ключей

Нуу... Можно же сделать keyn = sha256 (keyn-1) или что-нибудь подобное.
А доверять вообще никому нельзя. Даже самому себе.
legendary
Activity: 3108
Merit: 1359
Deterministic ECDSA нисколько не отменяет нужду в генераторе случайных чисел, которому придется доверять.

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

К примеру, во всяких смарт-картах может не быть надежного ГСЧ, и там это пригодится для создания подписей с использованием заранее сгенерированных и сохраненных туда юзером или вендором ключей. В остальных же случаях хоть и реализовать особой проблемы не представляет, едва ли будет доказуемо надежнее классического ECDSA с ГСЧ.
legendary
Activity: 1260
Merit: 1019
Quote
но и проверить как подписываются транзакции...
А это вообще говоря невозможно.
В подписывальщик может быть вставлена хитро-выебанная функция, генерирующая якобы случайное число.
С точки зрения всех людей на земле это случайное число.
Только автор реализации знает как восстановить это число, пусть даже ему придется напрячься.
Так что с аппаратным рандомом вы вообще ничего сделать не сможете.

Решение есть, конечно. rfc6979 позволяет обойтись без рандома. И это решает туеву хучу проблем.
Но не у всех это реализовано. И не все смогут реализовать правильно. И не все кто будут реализовывать смогут реализовать правильно.
И не все кто будет проверять сможет проверить правильно.

И доказать, что девайс работает правильно вы не сможете.
Допустим, в девайсе зашито, что до 1 января 2016 года подписываем правильно, а потом меняем алгоритм.
Или подписываем 100 раз правильно, а потом начинаем читерить.
Вы пару раз проверите, а потом начнете доверять девайсу.
И через год ваше бабло спиздят.

Против этого опять же есть противодействие - не используйте адреса дважды. То есть если тратите что-то с адреса - выводите на новый адрес всю сдачу и в дальнейшем это будет ваш колд-сторадж. Но это уже совсем другая история.
legendary
Activity: 3108
Merit: 1359
Да ну... Глупости.
Вот тут
https://bitcointalksearch.org/topic/m.10175129
уже написали примерно следующее:
"если хакер может установить свой софт на ваш комп где ваш колд-сторадж - то он конечно и ваши деньги спереть может"

Мораль: подписывайте транзакции только теми тулзами, которым доверяете. Иначе никак.
Дело не в этом, а в том что некоторые гуру изобретают генераторы случайных чисел самостоятельно, считая себя умнее всех, результат понятен. Недавно у гугла обнаружилась подобная проблема, из-за чего куче людей пришлось пересоздавать ключи.
legendary
Activity: 1400
Merit: 1000
Да ну... Глупости.
Вот тут
https://bitcointalksearch.org/topic/m.10175129
уже написали примерно следующее:
"если хакер может установить свой софт на ваш комп где ваш колд-сторадж - то он конечно и ваши деньги спереть может"

Мораль: подписывайте транзакции только теми тулзами, которым доверяете. Иначе никак.
На этом форуме продаются всякие железные cold storage кошельки. По сути статья является напоминанием на то, что нужно обращать внимание при проверке ПО у такого cold storage не только на то пытается кошелёк соединиться с кем-то из вне(для передачи ключей), но и проверить как подписываются транзакции...
legendary
Activity: 1260
Merit: 1019
Да ну... Глупости.
Вот тут
https://bitcointalksearch.org/topic/m.10175129
уже написали примерно следующее:
"если хакер может установить свой софт на ваш комп где ваш колд-сторадж - то он конечно и ваши деньги спереть может"

Мораль: подписывайте транзакции только теми тулзами, которым доверяете. Иначе никак.
legendary
Activity: 3108
Merit: 1359
Тут ничего особенного, всё следует из спецификаций ECDSA.

http://www.nilsschneider.net/2013/01/28/recovering-bitcoin-private-keys.html

Можно даже написать скрипт для мониторинга блокчейна и налету выцеплять монетки с машин, использующих корявый генератор случайных чисел.
legendary
Activity: 1400
Merit: 1000
legendary
Activity: 3108
Merit: 1359
Да всё верно, из-за всё той же проблемы в новом скрипте сборки ARMv7 билды были скомпонованы динамически, что сделало невозможным их запуск без соответствующих библиотек. Пока во всём этом разобрались, новые сборки уже успели выгрузиться по sftp.  Roll Eyes

ARMv7 билды будут в ближайшее время перелинкованы и заменены, а пока можно использовать ARMv6l сборку. Она будет работать нормально, но чуть-чуть медленнее ARMv7l (около 5-8% проигрыша в производительности).
sr. member
Activity: 461
Merit: 252
http://downloads.sourceforge.net/project/novacoin/novacoin-0.5.1/novacoin-0.5.1-bdb-debian-armv7l.tar.bz2

мне сказал novacoind: error while loading shared libraries: libboost_system.so.1.49.0: cannot open shared object file: No such file or directory

С 0,5,0 такого не было. Что-то поменялось в сборке?

Моя система
/usr/lib/arm-linux-gnueabihf$ ls | grep libboost_system
libboost_system.a
libboost_system.so
libboost_system.so.1.54.0
sr. member
Activity: 463
Merit: 252
Foxcool
Эти билды убраны, на их место положены собранные компилятором из крайнего LTS. Так что попробуй скачать заново, должно быть нормально.

Да, заработало, спасибо.
legendary
Activity: 3108
Merit: 1359
Foxcool
Эти билды убраны, на их место положены собранные компилятором из крайнего LTS. Так что попробуй скачать заново, должно быть нормально.
sr. member
Activity: 463
Merit: 252

novacoin-0.5.1-debian-amd64/novacoin-qt: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by .../novacoin-0.5.1-debian-amd64/novacoin-qt)
novacoin-0.5.1-debian-amd64/novacoin-qt: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by .../novacoin-0.5.1-debian-amd64/novacoin-qt)



novacoin-0.5.1-bdb-debian-amd64/novacoin-qt: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ...novacoin-0.5.1-bdb-debian-amd64/novacoin-qt)

на федоре перестал запускаться с обеими базами
legendary
Activity: 3108
Merit: 1359
Для гентушников и бсдшников появился новый тег, nvc-v0.5.1. Для них в том смысле, что бинарных сборок пока не сделано.
Выложены билды для основных платформ:

https://sourceforge.net/projects/novacoin/files/novacoin-0.5.1/
legendary
Activity: 3108
Merit: 1359
Зашел сейчас с работы по IPv6 адресу:

Code:
alex@raspberrypi ~ $ uname -a
Linux raspberrypi 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l GNU/Linux
alex@raspberrypi ~ $

Лежит черт знает где, найдется во время уборки очередной, но по сети доступно всегда. Cheesy

Хотя CubieBoard или CubieTruck несказанно лучше.
legendary
Activity: 3108
Merit: 1359
От старых асиков метабанка и прочих пооставалась у народа куча распиков, так что купить их можно по цене ведра с мусором.
Jump to: