Script limits and malleability
Terms used in this lesson
- Signature malleability
- The possibility that related signature representations can authorize the same message unless a scheme and its rules enforce a canonical form.
- Transaction ID
- The identifier produced by hashing a Bitcoin transaction’s non-witness serialization.
- SegWit
- Segregated Witness: a Bitcoin upgrade that separates authorization data from the transaction identifier and introduces versioned witness programs.
- Witness
- Signatures, scripts, or other data supplied to satisfy a Bitcoin output’s spending condition.
- OP_SUCCESS126
- The current OP_SUCCESS-family name for Tapscript byte 0x7e, which succeeds immediately when executed.
- Tapscript
- The version of Bitcoin Script used by a Taproot script-path spend.
- BIP347
- The Bitcoin Improvement Proposal specifying proposed CAT byte-concatenation semantics for Tapscript.
- CAT
- A proposed restoration of a Bitcoin Script operation that concatenates two byte strings.
- RBF
- Replace-by-fee: a policy for replacing an unconfirmed transaction with a conflicting one that pays more.
Disabled opcodes, resource limits, encoding rules, and malleability protections constrain safe composition.
Loading lesson visuals...
Learn the idea
Bitcoin limits Script and transaction resources to keep validation predictable and resist denial of service. OP_SUCCESS126 is the current immediate-success meaning of Tapscript byte 0x7e. BIP347 is the undeployed proposal that would assign CAT byte-concatenation semantics to that byte. Consensus limits make a block invalid when exceeded. Standardness policy can be stricter for mempool relay. Malleability means changing transaction bytes without invalidating the intended spend; SegWit removed third-party mutation of witness data from txid but not every form of transaction replacement or signer-controlled variation.
Constrain program structure
Applicable Script versions restrict script size, element size, opcode behavior, and other execution properties. Some opcodes are disabled or version-dependent.
Inspect every idea above to open it.
It prevents third parties from changing segregated witness data in txid. Inputs, outputs, replacement policy, signer choices, and chain reorganizations remain relevant.
The questions unlock after every required learning activity
Inspect every guided idea, open the worked example, rebuild its mechanism, and complete the deterministic lesson tool. Your progress is saved automatically.