|
23 ноября 2015, 9:09:14 PM | # 1 |
Сообщения: 4
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome" Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e подробнее... Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru Итак, я прочитал статьи, и это интересный материал. Я тем не менее есть некоторые технические вопросы. Как и где вы получаете заголовок блока? Я не ищу для "из бассейна" ответ, но более технический "подключения к bla.bla.bla BlaBla порт и отправить форматированный пакет Джейсона, как это определено протоколом бла бла бла и анализировать ответ, как определить по протоколу бла-бла-бла.", Вы знаете, технический материал?
|
23 ноября 2015, 9:18:22 PM | # 2 |
Сообщения: 428
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Получил 1806 Биткоинов
Реальная история. "getwork"
JSON-RPC через HTTP без параметра данных дает блок заголовок, который вы ищете. https://en.bitcoin.it/wiki/Getwork https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list Edit: Woops, я getblocktemplate вытесняет этот метод (ниже), это то, что я получаю за скользя по информации .. https://en.bitcoin.it/wiki/Getblocktemplate |
23 ноября 2015, 9:19:48 PM | # 3 |
Сообщения: 1246
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Два наиболее часто используемые горнодобывающие протоколы горизонты и getblocktemplate. Они используют JSON отформатированные запросы, представленные на сервер через HTTP запроса Post. Вы можете прочитать спецификации слоевой в https://mining.bitcoin.cz/help/#!/ Ручные / прослойка протоколов и спецификации getblocktemplate на https://github.com/bitcoin/bips/blob/master/bip-0022.mediawiki
|
23 ноября 2015, 9:23:06 PM | # 4 |
Сообщения: 4
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Спасибо, это именно то, что я искал.
|
23 ноября 2015, 9:34:49 PM | # 5 |
Сообщения: 2002
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Итак, я прочитал статьи, и это интересный материал. Я тем не менее есть некоторые технические вопросы. Как и где вы получаете заголовок блока? Я не ищу для "из бассейна" ответ, но более технический "подключения к bla.bla.bla BlaBla порт и отправить форматированный пакет Джейсона, как это определено протоколом бла бла бла и анализировать ответ, как определить по протоколу бла-бла-бла.", Вы знаете, технический материал? Технический материал? ОК... Edit: Хорошо, так что, возможно, я зашел слишком далеко? Я полагаю, что это не уровень технических деталей, что искали? Начните с создания программного обеспечения, которое подключается к аналогам по сети. Вам необходимо реализовать свою собственную систему обнаружения сверстников. По умолчанию порт, что большинство сверстников слушать это порт 8333. Реализация протокола Bitcoins связи запрашивать блоки из ваших подключенных сверстников. Проверьте все содержимое каждого блока, так как блок генеза, чтобы убедиться, что вы находитесь на правильной цепи. После того, как вы загрузили и проверили всю blockchain, вам необходимо принять к сведению sha256d хэш совсем недавно решенной блока. Приобретите набор допустимых операций, которые вы намерены подтвердить (не забудьте включить операцию генерации монет, которые будут платить вам вознаграждение блока). Организация этих операций и построить Merkle дерева. Обратите внимание на корень Merkle. Теперь вы готовы создать свой собственный заголовок блока. Первые 4 байта будет блок номер версии представлен в виде целого числа. Следующие 32 байта 32 байта shad256d результат самого последнего блока решена. Следующие 32 байта являются Merkle корень вычисляется из списка транзакций. Следующие 4 байта представляют собой целое число без знака временная метка представлена в виде количества секунд, прошедших с 1970-01-01T00: 00: UTC Следующие 4 байта представление текущей цели сложности Последние 4 байта доступны для использования в качестве временного значения в вашем алгоритме хеширования Sha256d хэш этого заголовка, и если полученное значение меньше, чем текущая цель сложности, а затем транслировать блок для всех подключенных сверстников. Если полученное значение не ниже текущей цели сложности, то вам необходимо изменить одно из значений и повторите попытку. Простейшие значения быстро изменить это временное значение. Если вы использовали все доступные значения Нонс и до сих пор не нашли решения, то вы можете изменить метку времени. Если вы бежите из допустимых значений временных меток, и вы до сих пор не нашли решение, то вам необходимо изменить список транзакций и повторно рассчитать корень Merkle. Вы можете найти больше ресурсов здесь: https://en.bitcoin.it/wiki/Block_hashing_algorithm https://en.bitcoin.it/wiki/Protocol_documentation https://en.bitcoin.it/wiki/Difficulty |
24 ноября 2015, 2:00:21 AM | # 6 |
Сообщения: 4
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Мой ответ не был саркастическим, это было точно, как это, я действительно оценил вы нашли время, чтобы ответить на вопрос недоносков. Еще раз со смиренным сердцем, спасибо.
Дополнительные сведения полезны и он указывает, что я не могу иметь полное представление о том, как это работает. Могу ли я подключиться к существующему серверу и получить заголовок блока, не будучи частью пула? Если бы я начать свой собственный бассейн с бесплатной (с только я в нем) он будет знать, как получить блок заголовков и мое приложение просто посылает запрос JSON на сервер пула на той же машине? Я просто пытаюсь написать код в свободное время, чтобы сохранить свои навыки Java остры. Я инженер по оборудованию и большую часть моего кода встроенного микропрограммного обеспечения. Я не писал никакого кода JSON, так как я закончил свой мастер. Моя цель состоит в том, чтобы написать шахтер в Java (да, вы можете начать смеяться сейчас) только для технической задачи. Я уверен, что все эти ребята ASIC дрожащих в сапогах. Все это трудно, когда вы не знаете, как это сделать. |
24 ноября 2015, 2:18:04 AM | # 7 |
Сообщения: 1246
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Мой ответ не был саркастическим, это было точно, как это, я действительно оценил вы нашли время, чтобы ответить на вопрос недоносков. Еще раз со смиренным сердцем, спасибо. Вы можете получить все данные, необходимые для сдачи вместе заголовок, запустив локальный Bitcoind и затем отправить его getblocktemplate запросы через сервер JSON-RPC управляет Bitcoind. Она возвращает всю информацию, вам нужно для того, чтобы создать блок.Дополнительные сведения полезны и он указывает, что я не могу иметь полное представление о том, как это работает. Могу ли я подключиться к существующему серверу и получить заголовок блока, не будучи частью пула? Если бы я начать свой собственный бассейн с бесплатной (с только я в нем) он будет знать, как получить блок заголовков и мое приложение просто посылает запрос JSON на сервер пула на той же машине? Я просто пытаюсь написать код в свободное время, чтобы сохранить свои навыки Java остры. Я инженер по оборудованию и большую часть моего кода встроенного микропрограммного обеспечения. Я не писал никакого кода JSON, так как я закончил свой мастер. Моя цель состоит в том, чтобы написать шахтер в Java (да, вы можете начать смеяться сейчас) только для технической задачи. Я уверен, что все эти ребята ASIC дрожащих в сапогах. Все это трудно, когда вы не знаете, как это сделать. |
24 ноября 2015, 2:56:17 AM | # 8 |
Сообщения: 2002
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Могу ли я подключиться к существующему серверу и получить заголовок блока, не будучи частью пула? Биткойн работает как сеть равноправных узлов ЛВС. Там нет "клиенты" а также "серверы", Конечно, кто-то работает "вглядываться" может создать службу для использования других. Они могли бы создать свою собственную "сервер" и позволить другим подключаться к серверу, чтобы приобрести то, что информация, которую они хотели бы предоставить. Это то, что веб-сайт blockchain.info сделал. Они работают много коллег, которые работают в сети. Эти сверстники собирают информацию о том, что происходит в сети Bitcoin, и эта информация сохраняется в базе данных. Затем они обеспечивают API, которые люди могут использовать, если они хотят доверять blockchain.info предоставить достоверную информацию. Таким образом, вы можете создать программное обеспечение, которое генерирует свои собственные заголовки блоков, или вы можете использовать существующие программы, такие как Bitcoin Ядро для создания заголовков, или вы можете найти услугу (или пул), который предоставит вам прекомпилированные заголовки. |
25 ноября 2015, 12:31:09 AM | # 9 |
Сообщения: 4
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Я учусь, как я иду ....
Blockchain предоставляет список неподтвержденных операций (https://blockchain.info/unconfirmed-transactions?format=json). Поэтому я добавляю сделку поколения монет (до сих пор потеряли о том, как это сделать) в верхней части списка и создать Merkle дерево из этого списка. Это, как я получаю корень Меркла для моего Новоиспеченного заголовка. Теперь я выполняю SHA256 (SHA256 (Block_Header)). Теперь в моем кодирования колдовства я нахожу хэш с соответствующим числом ведущих нулей, в первом туре (да, я что хорошо, повезло или что-то ....). Любая идея о том, как отправить этот выигрышный заголовок коллективу? Я не могу видеть (или не знаю, где искать) документацию по этому вопросу от Blockchain. Еще раз, спасибо всем за помощь. |
25 ноября 2015, 12:52:47 AM | # 10 |
Сообщения: 1246
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
Я учусь, как я иду .... Blockchain.info, вероятно, не имеет информации об этом. Для получения более подробной информации о вещах протокола Bitcoin, вы должны прочитать документацию на https://bitcoin.org/en/developer-documentation. Руководство и ссылки объяснить вещи очень хорошо.Blockchain предоставляет список неподтвержденных операций (https://blockchain.info/unconfirmed-transactions?format=json). Поэтому я добавляю сделку поколения монет (до сих пор потеряли о том, как это сделать) в верхней части списка и создать Merkle дерево из этого списка. Это, как я получаю корень Меркла для моего Новоиспеченного заголовка. Теперь я выполняю SHA256 (SHA256 (Block_Header)). Теперь в моем кодирования колдовства я нахожу хэш с соответствующим числом ведущих нулей, в первом туре (да, я что хорошо, повезло или что-то ....). Любая идея о том, как отправить этот выигрышный заголовок коллективу? Я не могу видеть (или не знаю, где искать) документацию по этому вопросу от Blockchain. Еще раз, спасибо всем за помощь. Все, что вы хотите сделать, это поддерживается Bitcoin Core. Bitcoin Ядро имеет консольную команду, которая позволит вам представить блок к сети. Он метко назвал submitBlock. Полная документация находится на https://bitcoin.org/en/developer-reference#submitblock. Для того, чтобы использовать его, запустите Bitcoin Сердечник и откройте консоль в справке > Debug Window, а затем на вкладке консоли. Тогда просто напечатайте Код: submitblock <блок шестигранной> где <блок шестигранной> это шестнадцатеричная строка данных блока. Он представит блок, если нажать кнопку ввода. |
25 ноября 2015, 4:01:49 AM | # 11 |
Сообщений: 64
цитировать ответ |
Re: Технический вопрос (где и как получить заголовок блока хэш)
... Поэтому я добавляю сделку поколения монет (все еще потеряно на том, как это сделать) ... Поколение монет ("coinbase") Сделка является сделкой с нулевой вход - вход, который появляется, чтобы провести выходной 0xffffffff (максимальное количество вывода) сделки 0000000000000000000000000000000000000000000000000000000000000000. Каждый блок разрешено иметь только один. Сделка платит Икс монеты к вам, где Икс это награда блока. Что отличает его от любого другого сделки является то, что те, Икс монеты на самом деле не тратятся, они генерируются. |