Как плательщик биткоина составляет блокирующий скрипт без открытого ключа?

Поясню суть вопроса. Рассмотрим, к примеру, следующую транзакцию:
Плательщику был предоставлен адрес для перевода 1nT8wyJjV7LBhuv993qoQ2R2k6HvpPFwg
Он его взял и составил блокирующий скрипт:
OP_DUP
OP_HASH160
0898894fdd1b1bfde9bfa4a73f24c1ff995b0232
OP_EQUALVERIFY
OP_CHECKSIG

Где 0898894fdd1b1bfde9bfa4a73f24c1ff995b0232 - это HASH160 от моего публичного ключа. Как он его получил о_О?
На хабре проникся статьей, где запомнил данное утверждение:
3ff4e5f939a847b2aa40bfe4701f4bd9.png
: Ссылка на статью
Из рисунка видно, что получить открытый ключ из адреса нельзя. А что же HASH160 от него можно? Не понятно. Если я соберусь кому то перевести, то вынужден буду просить открытый ключ, а мне дадут только адрес.

Итак как из 1nT8wyJjV7LBhuv993qoQ2R2k6HvpPFwg получить 0898894fdd1b1bfde9bfa4a73f24c1ff995b0232?
  • Вопрос задан
  • 132 просмотра
Решения вопроса 1
@sunnmas Автор вопроса
Ruby
О, я все понял, было же все просто адрес это хеш от публичного ключа в формате base58, только с контрольной суммой. Т. Е. Нужно обратное преобразование из base 58 в шестнадцаьеричную форму и отбрасывает контрольную сумму, ну и ещё первый байт 00.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы