Covenants: CTV, OP_CAT and friends
A covenant lets a coin restrict how it can be spent next. CHECKTEMPLATEVERIFY (BIP 119), ANYPREVOUT (BIP 118), OP_CAT and CHECKSIGFROMSTACK are the proposals that have been argued over since 2019, with vaults and better Lightning channels as the prizes. None has activated.
167 threads and 1,464 messages, 10 Sep 2015 to 4 Sep 2026.
Read on LearnBitcoin
BIPs
Bitcoin Optech
The threads, in order
Listed by the date of each thread's first message.
2015 2 threads
- MAST with OP_EVAL and OP_CAT Johnson Lau1 message
- Compatibility requirements for hard or soft forks Gavin Andresen13 messages
2016 4 threads
- Bitcoin Vaults. Emin Gün Sirer1 message
- Private "Merkle" Vaults for the Bitcoin system Jérôme Legoupil1 message
- Simple tx ID malleability fix, opcode proposal: OP_TXHASHVERIFY Rune K. Svendsen4 messages
- Implementing Covenants with OP_CHECKSIGFROMSTACKVERIFY Russell O'Connor8 messages
2017 5 threads
- Script Abuse Potential? Steve Davis8 messages
- Flag day activation of segwit shaolinfry10 messages
- A proposal to reintroduce the disabled script opcodes Mark Boldyrev6 messages
- 2 messages
- Covenants through merkelized txids. Rusty Russell1 message
2018 2 threads
- SIGHASH2 for version 1 witness programme Johnson Lau10 messages
- 4 messages
2019 14 threads
- SIGHASH_ANYPREVOUT proposal Anthony Towns4 messages
- 27 messages
- An alternative: OP_CAT & OP_CHECKSIGFROMSTACK Russell O'Connor16 messages
- Safety of committing only to transaction outputs Johnson Lau3 messages
- OP_SECURETHEBAG (supersedes OP_CHECKOUTPUTSVERIFY) Jeremy Rubin17 messages
- 7 messages
- Generalized covenants with taproot enable riskless or risky lending, prevent credit inflation through fractional reserve Tamas Blummer44 messages
- 5 messages
- 12 messages
- Continuing the discussion about noinput / anyprevout Christian Decker36 messages
- BIP OP_CHECKTEMPLATEVERIFY Jeremy Rubin17 messages
- Signing CHECKSIG position in Tapscript Russell O'Connor6 messages
- 3 messages
- Non-equal value CoinJoins. Opinions. Adam Ficsor9 messages
2020 8 threads
- 2 messages
- CTV through SIGHASH flags Bob McElrath2 messages
- On-chain vaults prototype Bryan Bishop1 message
- Revault: a multi-party vault architecture Antoine Poinsot2 messages
- 8 messages
- BIP 118 and SIGHASH_ANYPREVOUT Anthony Towns14 messages
- Implementing Investment Aggregation ZmnSCPxj3 messages
- reviving op_difficulty Thomas Hartman13 messages
2021 16 threads
- 19 messages
- 2 messages
- Waiting SIGHASH_ANYPREVOUT and Packing Packages Antoine Riard6 messages
- CheckSigFromStack for Arithmetic Values Jeremy Rubin6 messages
- Templates, Eltoo, and Covenants, Oh My! Jeremy Rubin1 message
- CHECKSIGFROMSTACK/{Verify} BIP for Bitcoin Jeremy Rubin31 messages
- 6 messages
- Eltoo / Anyprevout & Baked in Sequences Jeremy Rubin6 messages
- 26 messages
- Anyprevout functional tests using eltoo scripts Richard Myers1 message
- TAPLEAF_UPDATE_VERIFY covenant opcode Anthony Towns17 messages
- Inherited IDs - A safer, more powerful alternative to BIP-118 (ANYPREVOUT) for scaling Bitcoin Jeremy Rubin5 messages
- Vaults Jeremy Rubin1 message
- Payment Channels in a CTV+Sapio World Jeremy Rubin1 message
- Oracles, Bonds, and Attestation Chains Jeremy Rubin4 messages
- Covenants and capabilities in the UTXO model Bram Cohen8 messages
2022 55 threads
- Stumbling into a contentious soft fork activation attempt Michael Folkson20 messages
- 3 messages
- CTV and ANYPREVOUT vault designs Prayank1 message
- CTV BIP review Luke Dashjr12 messages
- 1 message
- CTV dramatically improves DLCs Lloyd Fournier11 messages
- TXHASH + CHECKSIGFROMSTACKVERIFY in lieu of CTV and ANYPREVOUT Russell O'Connor58 messages
- CTV Meeting #2 Summary & Minutes Jeremy Rubin1 message
- 2 messages
- CTV Meeting Notes #3 Jeremy Rubin1 message
- 3 messages
- CTV Signet Parameters Jeremy Rubin16 messages
- 2 messages
- BIP-119 CTV Meeting #4 Notes Jeremy Rubin1 message
- 9 messages
- CTV vaults in the wild James O'Beirne6 messages
- bitcoin scripting and lisp Bram Cohen17 messages
- CTV Meeting #5 Agenda (Tuesday, March 7th, 12:00 PT) Jeremy Rubin5 messages
- Meeting Summary & Logs for CTV Meeting #5 Jeremy Rubin4 messages
- Covenants and feebumping Antoine Poinsot5 messages
- 1 message
- 8 messages
- CTV BIP Meeting #6 Notes on Sapio Studio Tutorial Jeremy Rubin1 message
- 1 message
- Taro: A Taproot Asset Representation Overlay Olaoluwa Osuntokun18 messages
- A Calculus of Covenants Jeremy Rubin3 messages
- 1 message
- 7 Theses on a next step for BIP-119 Jeremy Rubin11 messages
- Automatically reverting ("transitory") soft forks, e.g. for CTV David A. Harding37 messages
- User Resisted Soft Fork for CTV Michael Folkson18 messages
- ANYPREVOUT in place of CTV Antoine Poinsot26 messages
- 1 message
- 2 messages
- Conjectures on solving the high interactivity issue in payment pools and channel factories Antoine Riard7 messages
- What to do when contentious soft fork activations are attempted Michael Folkson10 messages
- Working Towards Consensus Jeremy Rubin5 messages
- 1 message
- 3 messages
- Speedy covenants (OP_CAT2) Jorge Timón19 messages
- CTV BIP Meeting #8 Notes alicexbt9 messages
- Adding SIGHASH to TXID vjudeu3 messages
- 5 messages
- 1 message
- 1 message
- CTV BIP Meeting #9 Notes alicexbt5 messages
- Bitcoin covenants are inevitable alicexbt55 messages
- On a new community process to specify covenants Antoine Riard25 messages
- More uses for CTV James O'Beirne6 messages
- 3 messages
- bitcoin-inquistion: evaluating soft forks on signet Anthony Towns15 messages
- Validity Rollups on Bitcoin John Light7 messages
- 5 messages
- Merkleize All The Things Salvatore Ingala20 messages
- Relative txout amounts with a Merkleized Sum Tree and explicit miner fee. Andrew Melnychuk Oseen3 messages
- 2 messages
2023 21 threads
- 2 messages
- OP_VAULT: a new vault proposal James O'Beirne16 messages
- Using OP_VAULT to improve DLCs Ben Carman2 messages
- 3 messages
- 2 messages
- BIP for OP_VAULT James O'Beirne23 messages
- Vaults in the MATT framework Salvatore Ingala4 messages
- 2 messages
- Standardisation of an unstructured taproot annex Joost Jager30 messages
- On the experiment of the Bitcoin Contracting Primitives WG and marking this community process "up for grabs" Antoine Riard6 messages
- Concrete MATT opcodes Salvatore Ingala12 messages
- Combined CTV+APO to minimal TXHASH+CSFS Brandon Black4 messages
- 14 messages
- Actuarial System To Reduce Interactivity In N-of-N (N > 2) Multiparticipant Offchain Mechanisms ZmnSCPxj8 messages
- Draft BIP: OP_TXHASH and OP_CHECKTXHASHVERIFY Steven Roose2 messages
- Batch exchange withdrawal to lightning requires covenants Bastien TEINTURIER9 messages
- Examining ScriptPubkeys in Bitcoin Script Rusty Russell8 messages
- Proposed BIP for OP_CAT Ethan Heilman20 messages
- HTLC output aggregation as a mitigation for tx recycling, jamming, and on-chain efficiency (covenants) Johan Torås Halseth5 messages
- 13 messages
- Swift Activation - CTV alicexbt14 messages
2024 16 threads
- 14 messages
- Updated BIP for OP_CAT Ethan Heilman4 messages
- BIP for OP_CHECKSIGFROMSTACK Brandon Black3 messages
- 23 messages
- AOPP 2.0 using OP_CAT and OP_CSFS /dev /fd02 messages
- 10 messages
- OP_CAT Research Fund sponsored by StarkWare Victor Kolobov5 messages
- 5 messages
- CHECKSIGFROMSTACK(VERIFY/ADD) Brandon Black5 messages
- Multi-byte opcodes Weikeng Chen6 messages
- Slashing covenants Ethan Heilman3 messages
- Un-FE’d Covenants: Char-ting a new path to Emulated Covenants via BitVM Integrity Checks Jeremy Rubin3 messages
- Covenants Support - Bitcoin Wiki /dev /fd08 messages
- 3 messages
- CTV++ OP_TEMPLATEHASH & OP_INPUTAMOUNTS moonsettler1 message
- 11 messages
2025 19 threads
- "Recursive covenant" with CTV and CSFS Anthony Towns20 messages
- 2 messages
- Time to add CSFS to Signet? Weikeng Chen9 messages
- 11 messages
- OP_CAT Enables Winternitz Signatures conduition8 messages
- CTV + CSFS: a letter James O'Beirne64 messages
- What's a good stopping point? Making the case for the capabilities enabled by CTV+CSFS Antoine Poinsot14 messages
- 5 messages
- 5 messages
- BIP Booby Trapped Wallets - Covenant-Only Taproot Outputs Matias Monteagudo2 messages
- IRC logs: BIP 119 Workshop /dev /fd01 message
- IRC logs: BIP 348 Workshop /dev /fd01 message
- A Bitcoin Scripting Proposal BIP Quartet Rusty Russell10 messages
- LNHANCE a soft-fork package moonsettler2 messages
- op_ctv still has no technical objections Erik Aronesty5 messages
- 1 message
- Feedback on a simple 2-path vault design (2-of-2 + CLTV recovery) and use of pruned nodes for UTXO retrieval victor perez5 messages
- CTV activation meeting #1 Notes /dev /fd01 message
- 6 messages
2026 5 threads
- Extensions to standard tooling for TEMPLATEHASH-CSFS-IK support Antoine Poinsot1 message
- Building a CoinPool with OP_CHECKCONTRACTVERIFY Antoine Riard1 message
- Subject: Eltoo / LN-Symmetry on Inquisition Signet: BIP 118 + 3-Round State Chain (APO+CTV) aaron.recompile5 messages
- 3 messages
- Comparison of Bitcoin Covenant Proposals for Vaults Lillian Wang1 message