Author

Topic: Криптомеханика (Read 1689 times)

hero member
Activity: 994
Merit: 502
August 27, 2014, 01:30:56 PM
#11
Здесь примерно описано http://btcsec.com/bitcoin-address-theory/

Ссылка классная... Почитал про этот ужас. Господи, зачем так было мудрить? Неужели нельзя было просто вычмслить один хеш приватного ключа, да префикс сети добавить?
Xtc
legendary
Activity: 1973
Merit: 1028
;u
August 21, 2014, 09:03:41 PM
#10
Здесь примерно описано http://btcsec.com/bitcoin-address-theory/
hero member
Activity: 994
Merit: 502
August 21, 2014, 01:37:05 PM
#9
Следующая партия вопросов. биткоин-адреса.
Что понятно: есть приватный ключ - длиннющий набор циферок и буковок. Есть публичный ключ, он же адрес кошелька.
Публичный ключ есть хеш приватного ключа.
Остальное непонятно:
Какой именно хеш? Дважды ша-2? Или другой?
Оба ключа вроде бы являются числами. Сколькиричными? Судя по набору букв, там даже 16-ричные рядом не валялись.
В начале любого адреса повторяющийся набор букв. Типа для каждого форка свой.
Каким способом достигается такой результат? Перебором как в Vanitygen? Или просто конкатенацией к основной строке?
hero member
Activity: 994
Merit: 502
August 20, 2014, 01:23:52 PM
#8
Quote
Инициирующий транзакцию кошель широковещательно рассылает информацию о транзакции
Кошелек обычно подключен к 8 случайным узлам, он передает им транзакцию, а они передают дальше по цепочкам.
Да, это верное уточнение. Ноды обычно добавляют либо вручную, либо разработчики вносят в конфиг, либо как в битке - через централизованный сервер.

Quote
Простые кошели, которые не майнят, вообще могут не заморачиваться на контроле незапечатанных транзакций.
Они их проверяют, и если транзакция невалидна дальше не пересылают.
Хм. Попробуем сообразить...
В кеше висят еще не попавшие в блок транзы (а куда им еще деваться). Есть еще невалидные блоки, которые в дальнейшем отбраковываются сетью и из них тоже надо выковырнуть все транзы и проверить на двойную трату. Все это надо шерстить.
То бишь любой кошель должен проверять на валидность
-все словленные им транзы
-каждый новый добытый блок
и пересылать их дальше участникам или не пересылать. Если учесть, сколько сейчас транз в секунду проходит через сеть биткойн, довольно приличная нагрузка...

Quote
Факт получения денег обычный кошель осознает после получения блока с этой транзакцией...
Если bitcoin-qt подключен к сети он видит входящую транзакцию моментально, еще до того как она будет включена в блок.
Ну вот это уже лажа насчет моментальности. Сеть работает не моментально. Если все пересылается через ограниченное число узлов, фактически, канал, пусть даже широкий, это уже тормоз. Хотя насчет "до включения в блок" спорить не буду. Хотя, где-то в этом есть какая-то фундаментальная уязвимость... после блока было бы как-то надежнее.
Xtc
legendary
Activity: 1973
Merit: 1028
;u
August 20, 2014, 11:58:56 AM
#7
Quote
Инициирующий транзакцию кошель широковещательно рассылает информацию о транзакции
Кошелек обычно подключен к 8 случайным узлам, он передает им транзакцию, а они передают дальше по цепочкам.

Quote
Простые кошели, которые не майнят, вообще могут не заморачиваться на контроле незапечатанных транзакций.
Они их проверяют, и если транзакция невалидна дальше не пересылают.

Quote
Факт получения денег обычный кошель осознает после получения блока с этой транзакцией...
Если bitcoin-qt подключен к сети он видит входящую транзакцию моментально, еще до того как она будет включена в блок.
hero member
Activity: 994
Merit: 502
August 19, 2014, 12:19:47 PM
#6
Короче, без всяких гитхабов нарыл инфу.
Значится, по поводу обмена информацией между узлами сети:
Инициирующий транзакцию кошель широковещательно рассылает информацию о транзакции, в которой содержится все, что нужно для ее достоверности. Входы (от одного до кучи), выходы (от одного до двух)... хотя, можно и больше выходов прикрутить..., и еще служебная инфа, скриптсиги всякие. С этим все понятно и много где про это пишут.
Далее инфа о транзакции передается по принципу торрентов в идеале всем участникам сети. Но это в идеале. на самом деле для того, чтобы транза попала в блок и стала легитимной, достаточно, чтобы она дошла до того узла, который найдет следующий блок. Даже если это будет ближайший узел и все остальные транзу даже не успеют увидеть до момента выработки блока.
Предсказать, какой именно узел выработает следующий блок, невозможно. Это фундаментальное свойство системы, без которого стали бы возможны мошенничества. Поэтому для более быстрого заключения транзы в блок желательно, чтобы она разослалась максимальному числу узлов. Если не успеет дойти до того, кому повезет выработать блок, транза в блок не попадет и будет "висеть" ждать следующего....
Вот как она "висит" в ожидании не совсем понятно. Остальные узлы ничего не выработали, им нужно знать, попала ли транза в последний блок или нет... Это обязывает сеть рассылать выработанные блоки по ВСЕМ участникам, занимающимся майнингом...
Затем ВСЕМ этим участникам необходимо шерстить всю кучу попавшихся к ним транзакций на предмет - попали ли они в последний блок, или их надо запечатать в следующий (если повезет его выработать)?
Из этого также следует и другой вывод - не все узлы сети равнозначны. Простые кошели, которые не майнят, вообще могут не заморачиваться на контроле незапечатанных транзакций. Им достаточно "смотреть" только на блоки и... все, больше им ничего не надо. Факт получения денег обычный кошель осознает после получения блока с этой транзакцией...
У кого есть что возразить или чем поправить?
hero member
Activity: 994
Merit: 502
August 19, 2014, 12:38:23 AM
#5
Качаете с гитхаб исходники и изучаете.
Также wireshark в помощь - к битку всё есть.

Это называется "Идите нафиг с такими вопросами, их до вас никто не выяснял, а если выяснял, то тут рассказывать не будет".
Не все пользователи криптовалют являются программистами. И, кстати, в интересах тех же программистов, имеющих в загашнике пару десятков битков, сделать так, чтобы еще больше непрограммистов стали пользователями криптовалют. Только вот перевести информацию с программистского на человеческий никто не чешется.
Вспоминается известный бородатый анекдот про русский форум и программистов.
Надо подтягивать инглиш и лезть в англоязычную часть форума. Там больше вероятности, что ответят.
legendary
Activity: 1064
Merit: 1023
habr
August 18, 2014, 04:38:08 PM
#4
Качаете с гитхаб исходники и изучаете.
Также wireshark в помощь - к битку всё есть.
newbie
Activity: 19
Merit: 0
August 18, 2014, 04:22:07 PM
#3
интересно было бы почитать... Cool
full member
Activity: 121
Merit: 100
Bitcoin - сила
August 18, 2014, 12:39:45 PM
#2
Тема бородатая, но внятных ответов на многие вопросы, связанные с криптомеханикой, я на этом форуме не нашел.
Начнем с азов.
Значится, юзер из Урюпинска имеет на кошельке монетки и организует отправку ентих монет своему другу в Гондурасе.
Вводит адрес, жмет кнопку отправить и его кошель широковещательно орет через соответствующий порт всем остальным кошелькам "Я отправил полбитка по этому адресу"...
То есть, происходит все, конечно, по другому, но как именно?
Что за информация содержится в рассылаемой информации?
Кто находится на том конце "провода"? ВСЕ остальные кошельки? Или их часть?
С появлением пулов вообще возникли свои навороты. В пулах там такие же кошельки на приеме? Или что-то модифицированное?
И это еще одна сотая из всех вопросов по криптомеханике.
Раньше спрашивал тут на подобные темы, но мало кто отвечал. В основном народ забивал на просвещение новичков. Вот интересно, кто-нибудь откликнется и ответит на эти вопросы?

мда вопрос интересные раньше даже и не задумывался об этом!
Поддержу ТС и просим знатоков розяснить нам
hero member
Activity: 994
Merit: 502
August 18, 2014, 12:32:01 PM
#1
Тема бородатая, но внятных ответов на многие вопросы, связанные с криптомеханикой, я на этом форуме не нашел.
Начнем с азов.
Значится, юзер из Урюпинска имеет на кошельке монетки и организует отправку ентих монет своему другу в Гондурасе.
Вводит адрес, жмет кнопку отправить и его кошель широковещательно орет через соответствующий порт всем остальным кошелькам "Я отправил полбитка по этому адресу"...
То есть, происходит все, конечно, по другому, но как именно?
Что за информация содержится в рассылаемой информации?
Кто находится на том конце "провода"? ВСЕ остальные кошельки? Или их часть?
С появлением пулов вообще возникли свои навороты. В пулах там такие же кошельки на приеме? Или что-то модифицированное?
И это еще одна сотая из всех вопросов по криптомеханике.
Раньше спрашивал тут на подобные темы, но мало кто отвечал. В основном народ забивал на просвещение новичков. Вот интересно, кто-нибудь откликнется и ответит на эти вопросы?
Jump to: