Author: Jeremy Rubin 2022-02-15 18:57:35
Published on: 2022-02-15T18:57:35+00:00
In an email exchange between Jeremy Rubin and Rusty Russell, Rubin raises concerns regarding the use of Check Template Verify (CTV) in recursive covenants. He notes several differences that make CTV less powerful than other covenant designs such as OP_TX or TXHASH. One major issue is that CTV requires the contract to be fully enumerated and non-recursive. For example, a simple contract that allows n participants to take an action in any order requires factorially many pre-computations. Additionally, CTV requires the set of pairs to be expanded a-priori, which limits its open-ended functionality. However, Rubin acknowledges that for limited situations, CTV can be sufficient. Russell counters by suggesting that iterative covenants are possible with CTV and just as powerful, though technically finite. For instance, one could constrain the next 100M spends by insisting on incrementing nLocktime for each spend. Rubin emphasizes the need for a thorough understanding of the protocol complexity of introducing expanded functionality and advocates for advocating for more sophisticated designs. He also notes that there is a wide gap between "X is unsafe" and "I prefer Y which X is a subset of." Rubin concludes by stating that whether recursive/open ended properties are an issue or not precluding this sort of design, he defers to others.
Updated on: 2023-06-15T15:39:19.780149+00:00