Tapscript
Tapscript is the updated version of bitcoin's scripting language introduced by the Taproot upgrade in November 2021 and specified in BIP342. It governs scripts spent through a Taproot script path, adapting bitcoin's opcodes, signature checks, and resource limits to work with Schnorr signatures and Merkelized script trees.
How it works
Tapscript makes several deliberate changes to legacy script. Signature-checking opcodes now verify Schnorr signatures rather than ECDSA. The old OP_CHECKMULTISIG is disabled in favor of OP_CHECKSIGADD, which counts valid signatures in a way that supports batch verification, letting nodes validate many signatures together far more efficiently. Some legacy size restrictions were removed because Taproot's structure makes them unnecessary, with costs bounded instead by the witness data actually published. Most consequentially for the future, a large range of undefined opcodes was reserved as OP_SUCCESS codes: scripts containing them are automatically valid today, which means future soft forks can assign them new meanings without breaking old nodes. Tapscript is, in effect, a scripting language built to be upgraded.
In the gold vs bitcoin debate
Tapscript embodies bitcoin's programmability, deliberately bounded. The language still has no loops and cannot run arbitrary programs, a conservative choice that keeps validation predictable and the monetary layer auditable, while covenant proposals built on Tapscript's extension points are debated for years before any activation. Gold offers no programmability at all, and permissive smart-contract chains offer too much for some tastes; bitcoin's script philosophy stakes out the ground between.
Related Terms
Ready to convert your gold to Bitcoin?
Get Your Free Kit →