Tengo un poco de confusión sobre los nombres en Bitcoin.
Canjear script son las condiciones que se cumplirán. Por ejemplo P2PKH dentro de P2SH
OP_DUP OP_HASH160 <PubKHash> OP_EQUALVERIFY OP_CHECKSIG == redeem script
En P2SH-P2WPKH, el script de canje es:
El P2SH redimeScript siempre tiene 22 bytes. Comienza con un OP_0, seguido de una inserción canónica del keyhash (es decir, 0x0014{keyhash de 20 bytes}).
En algún momento llama al hash del script, y durante la transacción necesito insertar el script de canje en el script de testigo."witnessScript": "hex", (string) (required for P2WSH or P2SH-P2WSH) witness script
Entonces, el script de canje en el entorno segwit se llama script de canje, hash de script o script testigo.
Una clave de scriptPubKey (o redimirScript como se define en BIP16/P2SH) que consta de un código de operación de inserción de 1 byte (de 0 a 16) seguido de una inserción de datos entre 2 y 40 bytes adquiere un nuevo significado especial.
El programa testigo depende del guión, ¿podría ser scriptPubkey o canjear guión?
OP_HASH160 <Hash160(redeemScript)> OP_EQUAL
.Hash160(pubkey)
para P2WPKH y Hash256(witness_script)
para P2WPKH. Para salidas nativas de segwit, scriptPubKey es OP_0 <witness_program>
; para las salidas de segwit envueltas en P2SH, el script de redimir es OP_0 <witness_program>
(y, por lo tanto, el scriptPubKey es OP_HASH160 <Hash160(OP_0 <witness_script>)> OP_EQUAL
.
monoUsuario
OP_0 <witness_program>
donde OP_0 es la versión testigo?pieter wuille
monoUsuario
The witness program is Hash160(pubkey) for P2WPKH, and Hash256(witness_script) for P2WPKH
tal vez creo que te refieresThe witness program is Hash160(pubkey) for P2WPKH, and Hash256(witness_script) for P2WSH
?pieter wuille
Sam