Я пытаюсь выяснить отношения между адресом базы 58, ключевой хэш общественности, и scriptPubKey на стандартный вывод транзакции.
Я знаю, что базовый адрес 58 в основном 25-байтовая обертка для 20-байтового двойного хэша открытого ключа (с версией префиксом и проверить суффикс суммы), кодируется по адресу в 17 байт. Я знаю, что хэш-ключ общественности также является частью scriptPubKey, но вот где возникают мои вопросы.
В качестве примера, на testnet (блок 487805), я имел Bitcoins, посланный на базу 58 адреса mjj4MR1aeTjWSRqHuixfoCGRDRwabbK3zv
Сырец сделка
010000000105287a343ffb315b10c03574975535badbe801cf6ffdf73c79ac22da215d095b01000 0006a4730440220670ef406032cc1c20c284da8ccc2a40d5b135776dac672ce04e8cbb9036fec15 022011e6f589e5ca946f974b3ff69523497d06262a7e75be38ae99a85e493940ea8401210278072 1cc016aaf0434878f95bce130147ccdc4bd88478222bcba2018294e99d4ffffffff02c09e0a0000 0000001976a9142e2a8d353ea825de6bc2b081324f412764e53e5788ac85351931100000001976a914c73c92961d27fb399e1d408c94f1dade2860394588ac00000000
Если жирный шрифт проступает, вы можете увидеть эти байты, которые я считаю, являются scriptPubKey:
76a9142e2a8d353ea825de6bc2b081324f412764e53e5788ac
Когда я расшифровывать сделку я вижу этот вывод:
{
"стоимость" : 0.00696000,
"N" : 0,
"scriptPubKey" : {
"как м" : "OP_DUP OP_HASH160 2e2a8d353ea825de6bc2b081324f412764e53e57 OP_EQUALVERIFY OP_CHECKSIG",
"наговор" : "76a9142e2a8d353ea825de6bc2b081324f412764e53e5788ac",
"reqSigs" : 1,
"тип" : "pubkeyhash",
"адреса" : [
"mjj4MR1aeTjWSRqHuixfoCGRDRwabbK3zv"
]
}
},
Там в базовый адрес 58 раз, вместе со сценарием в шестнадцатеричном формате. Поскольку базовый адрес 58 не является частью сырой сделки, и так как шестнадцатеричное сценарий 25 байт, я предположил, что если я закодирован сценарий, я бы получить адрес базы 58, и если я декодируюсь базовый адрес 58, Я хотел бы получить сценарий. Но это не работает (по крайней мере, с использованием класса Base58 из bitcoinj).
Так что отношения между сценарием и базовый адресом 58? Как сеть даже знать об адресе базы 58, когда она не является частью сырой сделки? А что такое значение ASM, которая выглядит как фактический сценарий, но с еще одним набором байтов?