|
26 февраля 2012, 3:13:19 AM | # 1 |
Сообщения: 442
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Взлом Биткоин адресов.
500 Биткоинов взломаны в "мозговом кошельке" с паролем "bitcoin is awesome" Адрес кошелька: 14NWDXkQwcGN1Pd9fboL8npVynD5SfyJAE Приватный ключ: 5J64pq77XjeacCezwmAr2V1s7snvvJkuAz8sENxw7xCkikceV6e подробнее... Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru Как есть пара endiannesses, используемые Bitcoin, что такое правильный способ для кодирования "данные" Ответ на getmemorypool JSON API вызова?
|
29 февраля 2012, 2:04:54 AM | # 2 |
Сообщения: 2282
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Получил 1806 Биткоинов
Реальная история. https://en.bitcoin.it/wiki/BIP_DRAFT:_getmemorypool не совсем еще сделано, и нуждается в двойной проверке.
|
29 февраля 2012, 3:26:56 AM | # 3 |
Сообщения: 442
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Это хороший проект, но это на самом деле не определяет, как кодировать блок. Даже порядок байт "previousblockhash" в getmemorypool отличается от той, которую мы можем смотреть закодированной в getwork "данные", Так что это может быть довольно запутанным.
|
29 февраля 2012, 3:48:04 AM | # 4 |
Сообщения: 2282
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Это хороший проект, но это на самом деле не определяет, как кодировать блок. Это уже часть основной спецификации протокола Bitcoin.Даже порядок байт "previousblockhash" в getmemorypool отличается от той, которую мы можем смотреть закодированной в getwork "данные", Так что это может быть довольно запутанным. Это потому, что getwork "данные" является частью SHA256 Midstate, который интерпретирует данные прямого порядка байт, как обратный порядок байты ... так эффективно инвертирует каждый 32 бит. |
6 марта 2012, 1:53:54 AM | # 5 |
Сообщения: 442
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Так что давайте посмотрим, если я получаю эту вызывающую getmemorypool:
Код: { 'Previousblockhash': '0000000016375af4a21b4ce2b2ce64b5a5b27b5eab4c15e97db66208c7938ef8', '' сделки: [], 'версии': 1, 'coinbasevalue': +5000000000, 'время': 1330998016, 'биты': ''} 1c2336a4 Я могу представить его шахтер, правильный ответ от шахтера бы это:Код: "00000001c7938ef87db66208ab4c15e9a5b27b5eb2ce64b5a21b4ce216375af400000000e23686456c488b08b45a4d813a8aba9add29e9e36c8008a9051927300c6b39f24f556b001c2336a4c6c3fe55000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000" И собственно вызов bitcoind через getmemorypool бы это: Код: "010000000000000016375AF4A21B4CE2B2CE64B5A5B27B5EAB4C15E97DB66208C7938EF80C6B39F2051927306C8008A9DD29E9E33A8ABA9AB45A4D816C488B08E2368645006B554FA436231C55FEC3C60101000000010000000000000000000000000000000000000000000000000000000000000000FFFFFFFF0A5468655069616368750BFFFFFFFF0100F2052A01000000434104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC00000000" Или затормозить его вверх: Код: 01000000 - версия 0000000016375AF4A21B4CE2B2CE64B5A5B27B5EAB4C15E97DB66208C7938EF8 - предыдущая хэш 0C6B39F2051927306C8008A9DD29E9E33A8ABA9AB45A4D816C488B08E2368645 - Merkle корень 006B554F - метка времени A436231C - биты 55FEC3C6 - нонс 01 - номер транзакции 01000000 - версия 01 - входы 0000000000000000000000000000000000000000000000000000000000000000FFFFFFFF - вход 0A - длина сценария 5468655069616368750B - скрипт FFFFFFFF - последовательность 01 - выходы 00F2052A01000000 - значение 43 - длина сценария 4104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC - скрипт 00000000 - Locktime Я все еще получаю "Ложь" в ответ на это. Где я делаю ошибку? |
6 марта 2012, 2:19:09 AM | # 6 |
Сообщения: 2282
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Код: 01000000 - версия 0000000016375AF4A21B4CE2B2CE64B5A5B27B5EAB4C15E97DB66208C7938EF8 - предыдущая хэш 0C6B39F2051927306C8008A9DD29E9E33A8ABA9AB45A4D816C488B08E2368645 - Merkle корень 006B554F - метка времени A436231C - биты 55FEC3C6 - нонс 01 - номер транзакции 01000000 - версия 01 - входы 0000000000000000000000000000000000000000000000000000000000000000FFFFFFFF - вход 0A - длина сценария 5468655069616368750B - скрипт FFFFFFFF - последовательность 01 - выходы 00F2052A01000000 - значение 43 - длина сценария 4104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC - скрипт 00000000 - Locktime Я все еще получаю "Ложь" в ответ на это. Где я делаю ошибку? Код: 01000000 - версия НЕПРАВИЛЬНО: 0000000016375AF4A21B4CE2B2CE64B5A5B27B5EAB4C15E97DB66208C7938EF8 - предыдущая хэш ИСПРАВЛЕНО: f88e93c70862b67de9154cab5e7bb2a5b564ceb2e24c1ba2f45a371600000000 - предыдущая хэш НЕПРАВИЛЬНО: 0C6B39F2051927306C8008A9DD29E9E33A8ABA9AB45A4D816C488B08E2368645 - Merkle корень FIXED: 458636e2088b486c814d5ab49aba8a3ae3e929dda908806c30271905f2396b0c - Merkle корень 006B554F - метка времени A436231C - биты 55FEC3C6 - нонс 01 - номер транзакции 01000000 - версия 01 - входы 0000000000000000000000000000000000000000000000000000000000000000FFFFFFFF - вход 0A - длина сценария 5468655069616368750B - скрипт FFFFFFFF - последовательность 01 - выходы 00F2052A01000000 - значение 43 - длина сценария 4104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC - скрипт 00000000 - Locktime |
17 марта 2012, 10:28:02 PM | # 7 |
Сообщения: 442
цитировать ответ |
Re: Getmemorypool данные правильный ответ?
Хм, попытались отправки исправленной версии приложения для Bitcoin в режиме сервера, и получил ложный результат. Пробовали то же самое с другим изменением сообщений, а также получили ложные с.
Это данные Getmemorypool я получил (игнорируя все операции): Код: { 'Previousblockhash': '0000000020bcc87b08b88b6ccf1f79022bb2404b26e8fcec398fe323e93f2bc1', '' сделки: [], 'версии': 1, 'coinbasevalue': 5005350000, 'время': 1332022461, 'биты': ''} 1c2336a4 Таким образом, получили этот ответ Getwork: Код: 00000001e93f2bc1398fe32326e8fcec2bb2404bcf1f790208b88b6c20bcc87b00000000b0bdf352aa835722693225753422bea517f9143755c2c705fad08617be75d1de4f65086e1c2336a462295f9f000000800000000000000000000000000000000000000000000000000000000000000000000000000000000080020000 И пытался называть getmemorypool Bitcoin со следующими параметрами: Код: 010000000000000020BCC87B08B88B6CCF1F79022BB2404B26E8FCEC398FE323E93F2BC1BE75D1DEFAD0861755C2C70517F914373422BEA569322575AA835722B0BDF3526E08654FA436231C9F5F29620101000000010000000000000000000000000000000000000000000000000000000000000000FFFFFFFF1D546865506961636875277E427B80F359164A5BC11171D7ED423A35EC7EFFFFFFFF0100F2052A01000000434104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC00000000 Код: 01000000C12B3FE923E38F39ECFCE8264B40B22B02791FCF6C8BB8087BC8BC2000000000BE75D1DEFAD0861755C2C70517F914373422BEA569322575AA835722B0BDF3526E08654FA436231C9F5F29620101000000010000000000000000000000000000000000000000000000000000000000000000FFFFFFFF1D546865506961636875277E427B80F359164A5BC11171D7ED423A35EC7EFFFFFFFF0100F2052A01000000434104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC00000000 Код: 010000000000000020BCC87B08B88B6CCF1F79022BB2404B26E8FCEC398FE323E93F2BC152F3BDB0225783AA75253269A5BE22343714F91705C7C2551786D0FADED175BE6E08654FA436231C9F5F29620101000000010000000000000000000000000000000000000000000000000000000000000000FFFFFFFF1D546865506961636875277E427B80F359164A5BC11171D7ED423A35EC7EFFFFFFFF0100F2052A01000000434104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC00000000 Код: 01000000C12B3FE923E38F39ECFCE8264B40B22B02791FCF6C8BB8087BC8BC200000000052F3BDB0225783AA75253269A5BE22343714F91705C7C2551786D0FADED175BE6E08654FA436231C9F5F29620101000000010000000000000000000000000000000000000000000000000000000000000000FFFFFFFF1D546865506961636875277E427B80F359164A5BC11171D7ED423A35EC7EFFFFFFFF0100F2052A01000000434104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC00000000 И все они вернулись ложь. Из того, что я понимаю, собственно brakedown должен быть таким: Код: 01000000 C12B3FE923E38F39ECFCE8264B40B22B02791FCF6C8BB8087BC8BC2000000000 52F3BDB0225783AA75253269A5BE22343714F91705C7C2551786D0FADED175BE 6E08654F A436231C 9F5F2962 01 01000000 01 0000000000000000000000000000000000000000000000000000000000000000FFFFFFFF 1D 546865506961636875277E427B80F359164A5BC11171D7ED423A35EC7E FFFFFFFF 01 00F2052A01000000 43 4104475876434DAB12C149E7DC68AA4AEF44B7DAD9BC9B90CB1C6751EAD47DE7BA3AC7AA10C6BCDEB6DC42C85BB7588BC114C6E47072E0264FB1C33B6FBD69E040F2AC 00000000 Так что я пытался каждый вариант предыдущего хэша и Merkle корня байт. То, что я предполагаю, что проблема может быть это: -Клиент Bitcoin не любит обработки getmemorypool -Я сделал ошибку вычисления в Merkle корня -Установка временного значения неправильно -Существует что-то не так с coinbase сделки |