Вернуться   Биткоин Форум > Разработка и Техническое Обсуждение
7 июня 2011, 2:40:35 AM   # 1
 
 
Сообщения: 210
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API

Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome"
Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE
Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e
подробнее...


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Здравствуйте, я пытаюсь понять, подробности о функции getwork и что она возвращается. Когда я звоню getwork, это пример того, что я получаю от моего Bitcoin Deamon.

Код:
./ Bitcoind getwork
{
    "Midstate" : "34c2cc4192d802888d2204188e80df8133ddbb17fd0db5ea1382096916f35369",
    "данные" : "000000013cb5d00bd73e716c2d3c558a52b8c79fe8532b12307a7d91000008ba0000000007b7757adedda569a66c17a870bce5135faa2b3e5f46d22bed6e15d79296178f4ded6d461a1d932f00000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000",
    "hash1" : "00000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000010000",
    "цель" : "00000000000000000000000000000000000000000000002f931d000000000000"
}

Я понимаю, как это сделать хеширования, так как я только что закончил основной гр реализации ++. То, что я не понимаю, Midstate, данные и hash1. Почему Midstate поставляется? Разве это не работа шахтера для вычисления хэша. Если да, то почему же Deamon цикл отходов вычисления хэша для первой половины данных?

Данные. Является ли это уже чучела и предварительно вычислены для хеширования? Кажется, что я должен делать SHA256 (sha256 (данные)). Я не уверен, если данные были приложены 1 в конце, то нули, наряду с длиной сообщения.

Что такое hash1 и что я могу использовать это?
ahtremblay сейчас офлайн Пожаловаться на ahtremblay   Ответить с цитированием Мультицитирование сообщения от ahtremblay Быстрый ответ на сообщение ahtremblay


Как заработать Биткоины?
Без вложений. Не майнинг.


7 июня 2011, 3:50:10 AM   # 2
 
 
Сообщений: 10
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API

Получил 1806 Биткоинов
Реальная история.





scanhash_c в https://github.com/jgarzik/cpuminer/blob/master/sha256_generic.c показывает, используется Midstate и hash1.

В основном, есть 3 ломти, что функция sha256_transform в этом файле вызывается для за "данное время" стоимость. [Вот определение заголовка из https://en.bitcoin.it/wiki/Block_hashing_algorithm:]

поле
Raistlan сейчас офлайн Пожаловаться на Raistlan   Ответить с цитированием Мультицитирование сообщения от Raistlan Быстрый ответ на сообщение Raistlan

7 июня 2011, 5:55:42 AM   # 3
 
 
Сообщения: 210
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API

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


поле
ahtremblay сейчас офлайн Пожаловаться на ahtremblay   Ответить с цитированием Мультицитирование сообщения от ahtremblay Быстрый ответ на сообщение ahtremblay

7 июня 2011, 6:20:40 AM   # 4
 
 
Сообщений: 10
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API

Значение:
Код:
Данные = 000000013cb5d00bd73e716c2d3c558a52b8c79fe8532b12307a7d91000008ba0000000007b7757adedda569a66c17a870bce5135faa2b3e5f46d22bed6e15d79296178f4ded6d461a1d932f00000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000

Литл-Endian, я считаю, так что последние 4 байта фактически 0x 00 00 02 80 = 640.

Ведущего 1, а затем обивка 0s части расширения SHA-256 до 64 байт:
Код:
80000000000000000000000000000000000000000000000000000000000000000000000000
Raistlan сейчас офлайн Пожаловаться на Raistlan   Ответить с цитированием Мультицитирование сообщения от Raistlan Быстрый ответ на сообщение Raistlan

7 июня 2011, 7:32:10 PM   # 5
 
 
Сообщения: 210
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API


Ведущего 1, а затем обивка 0s части расширения SHA-256 до 64 байт:
Код:
80000000000000000000000000000000000000000000000000000000000000000000000000

После подсчета бит, я понял, что ведущий 1 с последующим обивкой 0 на самом деле выходит:
Код:
0000008000000000000000000000000000000000000000000000000000000000000000000000000000000000

Таким образом, оказывается, что это заполнение выполняется в небольшой Endian, а также. Преобразование его, я получаю:

00000080 (маленький обратный порядок байт)
80000000 (большой обратный порядок байт)

Это где источник моего замешательства в этот момент. Я не уверен, что если перед выполнением расчета SHA256, я должен преобразовать все сообщение в большой Endian, только раздел отступа, или вообще ничего.
ahtremblay сейчас офлайн Пожаловаться на ahtremblay   Ответить с цитированием Мультицитирование сообщения от ahtremblay Быстрый ответ на сообщение ahtremblay

18 июня 2011, 10:37:38 AM   # 6
 
 
Сообщения: 1988
Цитировать по имени
цитировать ответ
по умолчанию Re: Попытка понять функцию getwork API

У меня есть более фундаментальный вопрос для понимания этого. Я не работал с шестнадцатеричных чисел, так что я не знаю, как разделить данные.

У меня уже есть getwork-ответ от testnet. Данная часть является один нужен хэшем. Его 256 знаков долго и шестнадцатеричный я думаю. Что означает число от 0 до F, что означает 16 возможностей для каждого знака. Но теперь я не имею понятия, как использовать это. В соответствии с https://en.bitcoin.it/w/index.php?title=Getwork данные-часть является частью для хэширования. А вот это, кажется синоним Блок-заголовок: https://en.bitcoin.it/wiki/Block_hashing_algorithm. Таким образом, когда 256 знаков длиной данных частью является блок-заголовок и заголовок блока в таблице содержит 4 + 32 + 32 + 4 + 4 + 4 байт, как это преобразуется? Я имею в виду, я должен иметь 80Bytes, как блок-заголовок в соответствии с https://en.bitcoin.it/wiki/Block_hashing_algorithm но иметь 256 знаков с 16 штатами каждых. Я не понимаю, как превратить это ...

Его, вероятно, реальный noobquestion, но до сих пор я не должен беспокоиться шестнадцатеричных мышления-структур ...
SebastianJu сейчас офлайн Пожаловаться на SebastianJu   Ответить с цитированием Мультицитирование сообщения от SebastianJu Быстрый ответ на сообщение SebastianJu



Как заработать Биткоины?

Bitcoin Wallet * Portefeuille Bitcoin * Monedero Bitcoin * Carteira Bitcoin * Portafoglio Bitcoin * Bitcoin Cüzdan * 比特币钱包

bitcoin-zarabotat.ru
Почта для связи: bitcoin-zarabotat.ru@yandex.ru

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW