|
![]() |
# 1 |
Сообщения: 155
цитировать ответ |
![]()
Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome" Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e подробнее... Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru Я пытаюсь написать парсер для blockchain, но я не могу найти письменную спецификацию формата. Существует ли такая вещь? Я действительно не фантазии обратной инженерии из данных или исходного кода другого парсера, но я предполагаю, что я должен буду, если это не указано.
|
![]() ![]() |
![]() ![]() ![]() |
![]() |
# 2 |
Сообщения: 2044
цитировать ответ |
![]() |
![]() ![]() |
![]() ![]() ![]() |
![]() |
# 3 |
Сообщения: 1988
цитировать ответ |
![]() 0) Там нет "blockchain формат" для файла на рабочем диске.
1) blkNNNN.dat файлы простой конкатенации блоков, как показано на сетевом проводе. 2) из-за выше, и возможности клиента Satoshi Биткойна сбоя в середине Append, существует возможность того, что эти файлы содержат частично написанные блоки. Там будет заголовок и по меньшей мере часть сделки части написано, но не весь путь до конца. 3) blkindex.dat только индекс, больше ничего. В настоящее время он находится в BerkeleyDB но есть запланированный переход на LevelDB. Все это не имеет значения для синтаксического анализа, так как фактический блок цепь будет оставаться храниться в описанном выше простом формате. 4) Если вы пытаетесь написать свой парсер C ++ Я предлагаю первый глядя в парсер написан пользователем znort987. |
![]() ![]() |
![]() ![]() ![]() |
![]() |
# 4 |
Сообщения: 905
цитировать ответ |
![]() |
![]() ![]() |
![]() ![]() ![]() |
![]() |
# 5 |
Сообщения: 1428
цитировать ответ |
![]() Более конкретно, каждый новый блок добавляется к файлам blkXXXX.dat, как они получены. Их формат довольно прост:
котировка Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN ... |
![]() ![]() |
![]() ![]() ![]() |
![]() |
# 6 |
Сообщения: 155
цитировать ответ |
![]() Более конкретно, каждый новый блок добавляется к файлам blkXXXX.dat, как они получены. Их формат довольно прост: котировка Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN Волшебные байт (4 байта) BlockSize ж / заголовок (4 байта) Сырое Header (80 байт) Количество Tx N (VAR_INT) сырье Прд1 сырье Tx2 ... сырье TxN ... Это то, что я был после того, как, спасибо. на основании https://en.bitcoin.it/wiki/Protocol_specification#block Я мог видеть, что это было почти конкатенация структур блока данных. Но первые 8 байт до каждого блока в файле были для меня загадкой, и я был отбрасывая их. Волшебное байт плюс размер_блока теперь приходится за это. |
![]() ![]() |
![]() ![]() ![]() |