У меня есть небольшая путаница с именами в биткойнах.
Выкупить скрипт — это условия, которые будут удовлетворены. Например P2PKH внутри P2SH
OP_DUP OP_HASH160 <PubKHash> OP_EQUALVERIFY OP_CHECKSIG == redeem script
В P2SH-P2WPKH сценарий погашения :
RedeemScript P2SH всегда имеет размер 22 байта. Он начинается с OP_0, за которым следует каноническая отправка хэша ключа (т. е. 0x0014{20-байтовый хэш ключа}).
Иногда он вызывает хэш скрипта, и во время транзакции мне нужно вставить скрипт выкупа в свидетельСкрипт."witnessScript": "hex", (string) (required for P2WSH or P2SH-P2WSH) witness script
Тогда сценарий погашения в среде segwit называется сценарием погашения, хэшем сценария или сценарием-свидетелем?
scriptPubKey (или redeemScript, как определено в BIP16/P2SH), который состоит из 1-байтового кода операции push (от 0 до 16), за которым следует push данных от 2 до 40 байт, получает новое особое значение.
Свидетель программы зависит от скрипта может быть scriptPubkey или redeem script?
OP_HASH160 <Hash160(redeemScript)> OP_EQUAL
.Hash160(pubkey)
и для P2WPKH, и Hash256(witness_script)
для P2WPKH. Для нативных выходных данных SegWit scriptPubKey равен OP_0 <witness_program>
; для выводов segwit с оболочкой P2SH redeemScript OP_0 <witness_program>
(и, следовательно, scriptPubKey — это OP_HASH160 <Hash160(OP_0 <witness_script>)> OP_EQUAL
.
обезьянаПользователь
OP_0 <witness_program>
где OP_0 версия свидетеля?Питер Уилле
обезьянаПользователь
The witness program is Hash160(pubkey) for P2WPKH, and Hash256(witness_script) for P2WPKH
может быть, я думаю, что вы имеете в видуThe witness program is Hash160(pubkey) for P2WPKH, and Hash256(witness_script) for P2WSH
?Питер Уилле
Сэм