Я только что обновил свой длинный пост с большим количеством описаний, я нашел DER документов для декодирования тайны байт в подписи. Они являются частью ASN.1 потока контейнера, который описывает кодирование двух целых чисел.
Я нашел что-то интересное -
Bitcoin также тянет тот же адрес из воздуха для этой транзакции; он набирает на два байта в конце как опкод:
gettxout 9740e7d646f5278603c04706a366716e5e87212c57395e0d24761c0ae784b2c6 0
{
"bestblock" : "000000000000000099630b3f60c04edf89931160a381ca0a5e3bc35d1195272d",
"подтверждения" : 136428,
"стоимость" : 0.00100000,
"scriptPubKey" : {
"как м" : "4c554b452d4a522049532041205045444f5048494c4521204f682c20616e6420676f642069736e2 774207265616c2c207375636b612e2053746f7020706f6c6c7574696e672074686520626c6f636b 636861696e207769746820796f7572206e6f6e73656e73652e OP_CHECKSIG",
"наговор" : "4c684c554b452d4a522049532041205045444f5048494c4521204f682c20616e6420676f6420697 36e2774207265616c2c207375636b612e2053746f7020706f6c6c7574696e672074686520626c6f 636b636861696e207769746820796f7572206e6f6e73656e73652eac",
"reqSigs" : 1,
"тип" : "Публичных",
"адреса" : [
"1Address"
]
},
"версия" : 1,
"coinbase" : ложный
}
Это означает, что если вы хотите узнать, где blockchain.info получает этот адрес, у вас есть исходный код. Там в scriptpubkey, с "checksig" на конце в версии ASM. Я думаю, что Bitcoin должен видеть некоторые данные там, на то, что он нашел, как Публичные х и у, это адрес. Если это также случай, когда он использует то же Публичное и пробует checksig, если кто-то пытается провести его, вам потребуется privkey для этого Публичного.
Сценарий на самом деле не делает ничего другого, кроме хранить целую кучу данных в стек. Последние байты, который выглядит как опкод
также появляется толкнул в стек, если я полагаюсь байты правильно на этот раз. Вектор байт является Варлен, он не равен нулю, и, следовательно, стек должен быть оставлен "Правда" с большим числом.
Я просто была интересная идея - может ли "ЛУКА-JR IS" TXOUT тратиться? Я думаю, что это может быть, если сценарий был интерпретирован правильно:
Сделка действительна, если ничего в комбинированном сценарии не вызывает сбой, и верхний элемент стека истинно (не равно нулю). Я пытался провести его.
ОШИБКА: CTxMemPool :: принять (): нестандартный ввод транзакций
Похоже, не весело сейчас, хотя:
// Проверка на нестандартную оплату за скрипт-хэш в входах
если (Params (). NETWORKID () == CChainParams :: ГЛАВНАЯ && ! AreInputsStandard (ТХ, вид))
возвращать ошибку ("AcceptToMemoryPool:: нестандартные входные транзакции");
Это было бы сделка провести его:
0100000001c6b284e70a1c76240d5e39572c21875e6e7166a30647c0038627f546d6e7409700000 0008c493046022100b35acef5d3f5b42ce2e72b60a2e4a52570ce5d28735a561ee48707b0806101 6902210089b752641772b17db3d7e92cef66949513fec42711fadc32b787228e1cc0b399014104e 0ba531dc5d2ad13e2178196ade1a23989088cfbeddc7886528412087f4bff2ebc19ce739f25a630 56b6026a269987fcf5383131440501b583bab70a7254b09effffffff01905f0100000000001976a 914da6475289c7f49bcd9ede6ab7203b304ffb265f288ac00000000Я собираюсь выяснить это, рядом остановку, testnet. Это, вероятно, ошибка, если нет hash160 и сделка не выглядит как старый SKOOL платить в Публичных.