Вернуться   Биткоин Форум > - Помощь начинающим
9 мая 2013, 11:47:30 PM   # 1
 
 
Сообщений: 11
Цитировать по имени
цитировать ответ
по умолчанию Re: Как выполнить SHA-256 хеширования на открытый ключ?

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


Всем кто хочет заработать Биткоины без вложений - рекомендую сайт http://bitcoin-zarabotat.ru
Я пытаюсь понять Bitcoin лучше, пытаясь вещи в Ruby. Я знаю, что некоторые аспекты Bitcoin уже были реализованы в Ruby, но я стараюсь, чтобы избежать "мошенничество" изучая их.

Я прочитал вики о скрипты так же как адреса и я запутался, как конвертировать между открытым ключом и адрес Bitcoin.

ScriptPubKey о выходе сделки, как правило, выглядит следующим образом: OP_DUP OP_HASH160
OP_EQUALVERIFY OP_CHECKSIG. Если я правильно это понимаю является результатом декодирования Base58 адреса Bitcoin.

В рубине, что может быть сделано, как это ("шаг 9" Из результатов адрес страницы в "шаг 8"):
Код:
требуется «base58_gmp»
Base58GMP.decode ("16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM", "Bitcoin") .to_s (16)

До сих пор так хорошо (хотя это заняло много времени, чтобы понять Bitcoin использует нестандартную форму Base58).

ScriptSig от входа сделки выглядит это так: <сиг> <Публичных>, Если я правильно понимаю <Публичных> вот, что показано на шаге 1: "04508 ... 82BA6",

Теперь по странице скриптов, OP_HASH (<Публичных>) Должно приводить к , Но я с трудом достичь этого. OP_HASH является предполагается, только выполнить SHA256 хэш, за которым следует RMB160 хэш. Это выглядит как шаг 2 и шаг 3, но не включает в себя этап 4 через 8 (добавление информации сети и контрольной суммы). Я думаю, что мне нужно следовать этим шагам, когда я вижу OP_HASH.

К сожалению, я уже застрял на шаге 2. Если я пытаюсь воспроизвести пример в рубин, я получаю разные результаты для SHA256 хэш.
Код:
требуют «переваривать / SHA2»
Публичный = "0450863A .... 582BA6"
step_2 = (Digest :: SHA2.new << Публичный) .to_s
Это приводит к "32511e82d56 ...."  вместо "600FFE422 ..." как говорится в вики. Оба 64 символа.

Что я делаю не так?


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


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


10 мая 2013, 10:10:21 AM   # 2
 
 
Сообщений: 11
Цитировать по имени
цитировать ответ
по умолчанию Re: Как выполнить SHA-256 хеширования на открытый ключ?

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





Хорошо, я должен был обмануть здесь и взглянуть на Bitcoin-рубина. Мне нужно заменить:

Код:
step_2 = (Digest :: SHA2.new << Публичный) .to_s

При этом, путем добавления упаковка ("ЧАС*"):

Код:
step_2 = (Digest :: SHA2.new << [Публичный] .pack ("ЧАС*")). To_s

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

4 июля 2013, 2:01:11 PM   # 3
 
 
Сообщения: 1
Цитировать по имени
цитировать ответ
по умолчанию Re: Как выполнить SHA-256 хеширования на открытый ключ?

Что я могу сделать?

Startseite
Графики
Statistiken
рынки
Entwickler
Бумажник
 

Unverbrauchten Ausgдnge 1Bv82xxr341Uf7hZfWPy9RiNUkG4hx3CMf
Итого: 1,33 BTC
a31ee8dc42faf6f06ee609a8fa25b69c3eab2768ff3bc455879ee2f45087e0d12013-07-02 14:13:34
OP_DUP OP_HASH160 77bd2ce6db4564c6a640fccd133da6371f89fd96 OP_EQUALVERIFY OP_CHECKSIG (1Bv82xxr341Uf7hZfWPy9RiNUkG4hx3CMf)
344 Bestдtigungen 0,6 BTC
242ed4f0f7986ecc13f27ce01d294e22935288ee0c6018e05763813d34b076882013-06-30 13:55:34
OP_DUP OP_HASH160 77bd2ce6db4564c6a640fccd133da6371f89fd96 OP_EQUALVERIFY OP_CHECKSIG (1Bv82xxr341Uf7hZfWPy9RiNUkG4hx3CMf)
653 Bestдtigungen 0,33 BTC
2addf8699726fd7def844e9cec615d610a4ff3eb50b0cdd47ce882a910c46c9c2013-06-27 10:26:36
OP_DUP OP_HASH160 77bd2ce6db4564c6a640fccd133da6371f89fd96 OP_EQUALVERIFY OP_CHECKSIG (1Bv82xxr341Uf7hZfWPy9RiNUkG4hx3CMf)
1 184 Bestдtigungen 0,4 BTC
Ьber унс & Kontakt: Ьber UNS - Статус: Ok (566 Knoten verbunden) - Erweitert: Aktivieren - Wдhrung:
Vergil77 сейчас офлайн Пожаловаться на Vergil77   Ответить с цитированием Мультицитирование сообщения от Vergil77 Быстрый ответ на сообщение Vergil77



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

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

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

3HmAQ9FkRFk6HZGuwExYxL62y7C1B9MwPW