Intérprete de Bitcoin Script
Bitcoin Script es el lenguaje de programación de pila que define las condiciones bajo las que se pueden gastar los fondos de cada output. No es Turing-completo por diseño, es intencionalmente limitado para garantizar que la ejecución siempre termina y es predecible. Esta herramienta interpreta y ejecuta fragmentos de Bitcoin Script paso a paso: introduce un scriptPubKey (la condición de gasto) y un scriptSig o witness (los datos que satisfacen la condición) y observa cómo se ejecuta la pila operación por operación. Soporta los tipos de script más comunes: P2PKH, P2SH, P2WPKH, P2WSH y P2TR. Esencial para entender cómo funciona realmente el smart contracting nativo de Bitcoin.
Script
Escribe opcodes en mayúsculas y datos hex entre < >. Ejemplo: <02> <03> OP_ADD <05> OP_EQUAL
Referencia de opcodes soportados
| Opcode | Descripción |
|---|---|
OP_0 - OP_16 | Push números 0-16 |
OP_1NEGATE | Push -1 |
OP_DUP | Duplica el top |
OP_DROP | Elimina el top |
OP_SWAP | Intercambia los 2 superiores |
OP_OVER | Copia el segundo al top |
OP_ROT | Rota los 3 superiores |
OP_2DUP | Duplica los 2 superiores |
OP_ADD | Suma los 2 superiores |
OP_SUB | Resta: segundo - primero |
OP_1ADD | Suma 1 al top |
OP_1SUB | Resta 1 al top |
OP_NEGATE | Invierte signo |
OP_ABS | Valor absoluto |
OP_EQUAL | ¿Iguales? → 1 o 0 |
OP_EQUALVERIFY | EQUAL + falla si falso |
OP_VERIFY | Falla si top es falso |
OP_NOT | NOT lógico |
OP_SHA256 | SHA-256 del top |
OP_HASH160 | RIPEMD160(SHA256(top)) |
OP_HASH256 | SHA256(SHA256(top)) |
OP_CHECKSIG | Verifica firma (simulado: siempre OK) |
OP_CHECKMULTISIG | Multisig (simulado) |
OP_IF/ELSE/ENDIF | Control de flujo |
OP_RETURN | Script inválido inmediatamente |