Bitcoin Covenants Part 1: Exploring New Possibilities for Complex Spending Conditions on the Bitcoin Network

Summary

Covenants are proposed Bitcoin features that would let users restrict how coins can be spent in the future, unlike current Bitcoin Script, which can enforce spending conditions only for the present spend. They could improve trust-minimized layer 2s, non-custodial vaults, and payment channels. Most implementations would require a soft fork, making adoption politically difficult amid growing disagreement between Core and Knots communities and broader calls for protocol ossification. Covenants are usually split into two types: basic covenants, which constrain only the next transaction or a predefined chain of transactions, and general covenants, which would recursively preserve spending rules across unlimited future transfers. Basic covenants are simpler and more plausible; general covenants are more powerful but technically harder and more controversial. The topic began with Gregory Maxwell’s 2013 proposal and has since expanded into many designs, with OP_CHECKTEMPLATEVERIFY among the leading candidates.