P2PKH
Pay To Public Key Hash — el script legado estándar para enviar bitcoins
P2PKH (Pay To Public Key Hash — Pagar Para Hash de Clave Pública) es un patrón de script legado usado para "enviar" bitcoins a alguien.
Fue el script más común para bloquear una salida a la clave pública de alguien.
P2PKH es funcionalmente parecido a P2PK, pero un bloqueo P2PKH contiene un hash de la clave pública en vez de una clave pública cruda.
Script legado. Aún se usa ocasionalmente, pero P2WPKH es ahora la opción preferida (funciona igual).
Uso
¿Cómo funciona P2PKH?
ScriptPubKey (bloqueo)
El estándar P2PKH contiene un hash de clave pública rodeado por los siguientes opcodes:
OP_DUP OP_HASH160 <hash de la clave pública> OP_EQUALVERIFY OP_CHECKSIG ScriptSig (desbloqueo)
Para resolver este script, el dueño de la clave pública hasheada necesita proporcionar la clave pública original, junto con una firma válida:
<firma> <clave pública> La clave pública proporcionada en el ScriptSig puede ser comprimida (33 bytes) o no comprimida (65 bytes), siempre que uses el mismo formato usado para crear el hash de la clave pública en el ScriptPubKey (si no, no hasheará al mismo valor).
Ejecución
- La clave pública original se duplica (
OP_DUP) y se hashea (OP_HASH160). - Ese valor se compara con el hash de la clave pública en el ScriptPubKey (
OP_EQUALVERIFY). - Si coincide,
OP_CHECKSIGverifica la firma contra la clave pública.
Herramientas
El hash de la clave pública es el HASH160 (RIPEMD-160 ∘ SHA-256) de la clave pública. La dirección P2PKH es una codificación Base58Check de ese hash con el prefijo de versión 0x00:
Clave Pública
HASH160
Dirección (Base58)
Checksum
Base58
Ejemplos
P2PKH fue el script estándar usado por las carteras para "enviar" bitcoins hasta alrededor de 2016, así que lo encuentras en la mayoría de los bloques hasta entonces (y todavía hoy).