Blockchain/Nivel IV · El protocolo a fondo/4.1 Script/Lección 6
Estándar y política
La diferencia entre lo que la red acepta y lo que tu nodo retransmite
MaterialesCódigo fuente de Bitcoin Core (policy/policy.cpp)La serie ‘Esperando confirmación’ de Bitcoin OptechUn explorador de bloques que muestra scripts en bruto
Curiosidad
- ¿Por qué una transacción válida a veces es rechazada por una billetera antes de llegar siquiera a un minero?
- ¿Qué sucede si una contraparte utiliza un software diferente al tuyo, pero ambos son “correctos”?
- ¿Cómo puede evitar que los códigos de operación no utilizados estén en el camino del relé proteger las futuras actualizaciones?
Explorar
- Las reglas de consenso definen la validez; determinan qué puede aparecer en un bloque y ser aceptado por cada nodo. El estándar es una política local separada que dicta qué transacciones un nodo específico retransmite a sus pares y mantiene en su mempool. Una transacción puede ser perfectamente válida según el consenso, pero no estándar según las políticas de retransmisión predeterminadas. Cuando un usuario transmite tal transacción, su propio nodo podría descartarla inmediatamente, aunque técnicamente los mineros podrían incluirla.
- Los tipos de salida estándar están estrictamente limitados para proteger los nodos de ataques de denegación de servicio y agotamiento de recursos. Estos incluyen P2PKH, P2SH, P2WPKH, P2WSH, P2TR, scripts multisig simples (hasta tres claves) y salidas de datos OP_RETURN de un tamaño específico. Por defecto, no se retransmiten los scripts que utilizan opcodes reservados o desconocidos, o que exceden los límites de tamaño. Este filtrado asegura que el mempool permanezca manejable y evita que actores malintencionados inunden la red con basura compleja y costosa desde el punto de vista computacional.
- La política no es estática; evoluciona según la implementación de cada nodo. En 2025, los desarrolladores de Bitcoin Core decidieron relajar el límite de tamaño por defecto para las salidas de datos OP_RETURN. Este cambio generó debate entre los operadores de nodos, algunos de los cuales se opusieron a esta ampliación y pasaron a utilizar software alternativo como Bitcoin Knots para mantener límites más estrictos. Esta divergencia ilustra que el estándar es un ajuste local: dos nodos que ejecutan versiones o forks diferentes pueden retransmitir subconjuntos distintos de transacciones válidas sin violar el consenso.
- Una transacción no estándar pero válida aún puede ser confirmada si evita por completo la red de retransmisión predeterminada. Los mineros han ofrecido servicios de envío directo, lo que permite a los usuarios enviar transacciones directamente a sus bloques, independientemente de las políticas de los nodos. Si una billetera depende del rechazo de lo no estándar como medida de seguridad —suponiendo que un script con apariencia inválida nunca se propagará—, enfrenta un riesgo: una contraparte que utilice el acceso directo a los mineros podría confirmar esa transacción. Esto genera un fork en el comportamiento, no en la verdad, lo que podría llevar a movimientos o pérdidas inesperadas de fondos.
- El estándar funciona como una válvula de seguridad para futuras actualizaciones tipo soft fork. Al imponer reglas más estrictas ahora —como tratar los opcodes NOP reservados para actualizaciones como no estándar durante la retransmisión—, el protocolo garantiza una transición fluida cuando una actualización endurezca las reglas de consenso. Dado que las transacciones que utilizan esos opcodes reservados no se retransmiten ni se minan por defecto, existen pocas o ninguna cuando un soft fork les da significado; por lo tanto, las nuevas reglas no invalidan nada en lo que la gente confiaba, y es poco probable que los mineros sin actualizar minen un bloque rechazado por las nuevas reglas.
- Lea usted mismo las verificaciones de política: en el código fuente de Bitcoin Core, policy/policy.cpp contiene IsStandard e IsStandardTx, que enumeran los tipos de salida aceptados y los límites de tamaño; la serie “Waiting for confirmation” de Bitcoin Optech explica el razonamiento detrás de ellos. Compárelas con las reglas de consenso en el código de validación, y observe cuán más estrictas son las reglas de retransmisión.
Datos clave
- Las reglas de consenso definen la validez; el estándar define el comportamiento de retransmisión.
- Los tipos de salida estándar incluyen P2PKH, P2SH, P2WPKH, P2WSH, P2TR y multisig simple pequeño.
- La política protege los nodos de ataques de denegación de servicio al filtrar scripts complejos o grandes.
- Las transacciones no estándar pueden confirmarse a través de servicios de presentación directa al minero.
- Bitcoin Core relajó los límites de tamaño de OP_RETURN en 2025, lo que llevó a algunos usuarios a cambiar de software.
- El estándar filtra opcodes reservados para facilitar futuras actualizaciones por soft fork.
Ejercicio nueve, seis, tres, uno
9ReunirEnumera 9 tipos o formatos diferentes de scripts de salida utilizados en la historia de Bitcoin. Para cada uno, indica si actualmente se considera estándar según las políticas por defecto de los nodos.
6AgruparAgrupa los 9 en 6 categorías según su complejidad estructural: hash de claves simples, scripts envueltos, testigo nativo, multiparte complejo, incrustación de datos y legado/experimental.
3DestilarReduce los 6 grupos a 3 razones principales por las cuales los nodos imponen límites de estandarización en estas estructuras específicas.
1CristalizarEscribe una oración que explique cómo la divergencia en las políticas locales puede provocar que transacciones válidas desde el punto de vista del consenso pero inválidas para la retransmisión se propaguen directamente a los mineros.
Verificación de hechos
Fechas, cifras y afirmaciones verificadas con las fuentes publicadas que se enumeran a continuación.