Subject: [bitcoin-dev] Multiple ways to do bitcoin covenants

From: alicexbt <[email-masked]>
Date: Thu, 28 Apr 2022 08:11:28 +0000

CTV and other covenant proposals, tradeoffs, and overlapping features are among the topics being explored recently. I had some views and questions on this subject.:

a) Does bitcoin already have opcodes with overlapping features? Yes

b) Can we have multiple ways with some overlapping features to do bitcoin covenants with some tradeoffs? Yes
_
c) What are these tradeoffs if we compare CTV, APO, TLUV and TXHASH+CSFS?

I am sure about a) because it was already answered in CTV chat by Jeremy and sheshek. Example: CHECKSIG and CHECKSIGADD is redundant with OP_IF and OP_ADD

Not sure if we have "consensus" on b) but I don't see anything wrong with it.

For c) I would prefer CTV because:

- Simpler
- Blockspace effient
- Can be used even without taproot

Covering bare script, as in segwit v0, is necessary. Exposing a pubkey in case of an EC break will be a disaster, and vaults imply very long lived storage. Root CA offline certificates can often have shelf life measured in decades. However, NSA has issued warnings, NIST has issued guidelines, and executive order to prepare for the quantum shift. As a result, forcing everyone into a quantum-unsafe position is unsustainable.

Other developers might use a different way to do bitcoin covenant for other reasons. Example: Russel O'Connor would prefer general OP_TXHASH design
/dev/fd0

Sent with [ProtonMail](https://protonmail.com/) secure email.