Covenants are a category of proposed changes to Bitcoin’s consensus rules that would allow a script to prevent an authorized spender from spending to certain other scripts.
For example, a covenant may normally only allow spending to a whitelisted set of scripts, such as returning bitcoins to the user’s own balance or spending to a staging address that only allows spending to any arbitrary address after a period of time.
Primary code and documentation
Optech newsletter and website mentions
- 2019-08-14 Bitcoin vaults without covenants
- 2019-06-12 CoreDev.tech discussion: potential script changes
- 2019-05-29 New proposed opcode: OP_CHECKOUTPUTHASHVERIFY
- 2018-10-09 Scaling Bitcoin Tokyo 2018, Script Roundtable: OP_CHECKSIGFROMSTACK