Multiple ways to do bitcoin covenants



Summary:

The author of the context has been contemplating on covenant proposals from the perspective of wallet vaults. CTV is considered the minimal covenant opcode that eliminates malleability and other proposed opcodes have interactions that could introduce potentially undesirable effects. TXHASH+CSFS can enable identical capabilities to CTV but its additional features make it more complex, whereas APO wallet vaults are considered hacky, inefficient, and limited. TLUV + IN_OUT_AMOUNT allows infinitely recursive covenants, but it has limitations around multi-input transactions. OP_CHECKOUTPUTVERIFY is an interesting opcode that allows recursive covenants but has similar awkwardness as TLUV + IN_OUT_AMOUNT around multi-input transactions and is also expensive to use beyond simple covenants. Few of these covenant opcodes have been concretely specified and analyzed enough to know whether they're worth pursuing, and all but CTV (potentially TXHASH+CSFS) have significant flaws that would need to be fixed. Overall, none of the other ideas seem to be of high enough quality to be put into Bitcoin in their current state. The author prefers CTV due to its simplicity, blockspace efficiency, and the ability to be used even without taproot. However, other developers may prefer different ways to do bitcoin covenants for other reasons.


Updated on: 2023-06-15T19:54:27.998381+00:00