Visión general
Pay-to-Witness-Public-Key-Hash (P2WPKH) es el equivalente SegWit nativo de P2PKH. Funciona de manera idéntica en términos de seguridad — bloqueando fondos a un hash de clave pública — pero reestructura dónde se almacenan los datos de firma en la transacción. Al mover las firmas a la sección de testigo segregado, las transacciones P2WPKH se benefician del descuento de testigo, resultando en comisiones significativamente más bajas.
Cómo funciona P2WPKH
A diferencia de P2PKH, una salida P2WPKH tiene un scriptSig vacío. La firma y la clave pública se colocan en el campo de testigo en su lugar.
Transacción P2PKH: Transacción P2WPKH:
┌───────────────────┐ ┌───────────────────┐
│ scriptSig: │ │ scriptSig: │
│ <firma> <pubkey> │ │ (vacío) │
├───────────────────┤ ├───────────────────┤
│ scriptPubKey: │ │ scriptPubKey: │
│ OP_DUP │ │ OP_0 │
│ OP_HASH160 │ │ <hash 20 bytes> │
│ <hash> │ ├───────────────────┤
│ OP_EQUALVERIFY │ │ testigo: │
│ OP_CHECKSIG │ │ <firma> <pubkey> │
└───────────────────┘ └───────────────────┘
Cuenta completamente en el Los datos de testigo
peso del bloque tienen 75% de descuento
Ahorro en comisiones
El descuento de testigo cuenta los bytes de testigo a un cuarto del peso de los bytes no-testigo. Para una transacción típica de una entrada y dos salidas, P2WPKH ahorra aproximadamente un 38% en comisiones comparado con P2PKH. Este descuento fue introducido para incentivar la adopción de SegWit sin requerir un hard fork para aumentar el tamaño del bloque.
Formato de dirección
Las direcciones P2WPKH usan codificación Bech32 y comienzan con bc1q en mainnet. Las direcciones Bech32 son insensibles a mayúsculas, usan solo caracteres alfanuméricos en minúsculas (sin 1, b, i, o o para evitar confusión visual) e incluyen un checksum de detección de errores incorporado.
Compatibilidad
La mayoría de las billeteras y exchanges Bitcoin modernos soportan el envío a direcciones P2WPKH (bc1q). Para casos donde la billetera del remitente no soporta Bech32, el SegWit anidado (P2SH-P2WPKH) envuelve el script SegWit dentro de una salida P2SH, produciendo una dirección con prefijo 3 a la que cualquier billetera puede enviar, mientras aún proporciona ahorro parcial en comisiones al gastador.
Cuándo usar P2WPKH vs P2TR
Aunque P2WPKH sigue siendo ampliamente utilizado, el formato más nuevo P2TR ofrece beneficios adicionales de privacidad y una eficiencia ligeramente mejor para gastos por ruta de clave. Las nuevas billeteras están usando por defecto cada vez más las direcciones Taproot, aunque P2WPKH continúa siendo totalmente compatible y seguro.