OP_CHECKTEMPLATEVERIFY has as soon as once more turn out to be a focus within the dialog about enhancements to scale Bitcoin. This time round there are numerous extra various designs for covenants being proposed, and precise concrete designs that make use of CTV as scaling options (Timeout Bushes and Ark). The dialog has a a lot bigger depth of ideas to consider, each when it comes to alternate options that might be adopted in addition to concrete proposals that CTV might allow.
One narrative circulating from the camp of individuals towards CTV is that “CTV doesn’t scale Bitcoin.” Let’s charitably interpret that to imply that CTV itself doesn’t scale Bitcoin, issues you may construct with it do. Nicely, then that isn’t a coherent argument. Segregated Witness didn’t scale Bitcoin. CHECKLOCKTIMEVERIFY and CHECKSEQUENCEVERIFY didn’t scale Bitcoin. However the Lightning Community, which these three proposals enabled, do scale Bitcoin. They add a large quantity of overhead for transactional throughput to develop past the constraints of the blockchain itself.
Lightning actually couldn’t exist with out these base layer primitives. The issue with Lightning although, is it solely scales the variety of transactions that may be processed. It doesn’t in any means assist enhance the scalability of possession over UTXOs, or enhance the variety of customers who can management one. Lightning is presently not able to doing that with its present design and the present set of consensus primitives accessible in Bitcoin script.
CTV can change that.
UTXOs And Digital UTXOs
A part of the issue of Lightning’s shortcoming relating to scalability of Bitcoin possession is that with a purpose to open a channel, or management a UTXO, you really should transact on the bottom layer. After that Lightning can facilitate a really massive variety of transactions off-chain, however a consumer should nonetheless transact on-chain to onboard themselves to Lightning. It massively will increase the variety of transactions Bitcoin can course of, but it surely does nothing in any respect to extend the quantity of people that can personal bitcoin.
That is one other massive drawback CTV might help with. Burak coined the time period “digital UTXO” for his Ark proposal, however I feel this terminology is an ideal basic time period helpful far past the context of Ark. A digital UTXO is one dedicated to being created sooner or later, by mechanisms like a pre-signed transaction, however that hasn’t really been created on-chain but. Bitcoin doesn’t have the blockspace for everybody to create a single UTXO on the scale of the world inhabitants, however there’s undoubtedly potential for folks to have their very own unbiased digital UTXO if the method of committing to these will be made scalable.
Scaling the creation of commitments to vUTXOs is the issue. Proper now there is no such thing as a approach to create them besides by the usage of pre-signed transactions, and this introduces a bottleneck that should be addressed. The variety of vUTXOs any actual UTXO can decide to is bounded by the scale of the multisig set signing these transactions. To trustlessly create vUTXOs, the proprietor of each vUTXO should be a part of the multisig key that’s signing the transactions that decide to creating them, in any other case they don’t have any assure that conflicting transactions is not going to be generated that voids their capability to assert their vUTXO if essential. The issue of coordinating the signing of this between each member of the set introduces sensible concerns that can finally severely restrict the scale any pool of vUTXOs can develop to. The one different various is to have some trusted occasion or events signal the transactions committing to everybody’s vUTXOs, and easily trusting them to not steal these funds from the rightful house owners.
CTV provides an answer to each of those issues. By with the ability to non-interactively decide to a set of future transactions the identical means pre-signed transactions do, however with out requiring each proprietor of the vUTXOs these transactions create to coordinate signing, it solves the coordination drawback. On the similar time as a result of nobody must work together, a single particular person might take the position of funding the CTV output that commits to everybody’s vUTXOs unfurling on-chain, and 0 belief in that particular person after the funding transaction is confirmed is required. As soon as that actual UTXO is confirmed in a block, the one who funded it has no capability to undo or double spend the longer term transactions it has dedicated to.
Remember the fact that a vUTXO will be no matter you need it to be. It may be a Lightning channel, a multisig script for chilly storage, and so forth. CTV does what the present type of Lightning doesn’t, it scales precise possession of Bitcoin, not simply the variety of transactions it could course of.
Lower By The Shortcut
One of many different criticisms of CTV as “not scaling Bitcoin” is that by committing to future transactions you don’t escape the necessity to put them on-chain finally, and so subsequently CTV doesn’t really assist enhance scalability. I wish to name this “the OP_IF fallacy.” i.e. as soon as folks begin speaking about CTV they neglect OP_IF exists, and that scripts can even have a number of spending situations to select from.
Essentially the most highly effective issues about Taproot are the power to assemble multisigs by simply including two public keys collectively and signal for them with a single combination signatures, and to solely selectively reveal a single “IF” department of a script that has a number of methods to be spent. Mixed with CTV, this provides a really highly effective approach to make use of vUTXO commitments. Somewhat than make a series of transactions utilizing purely CTV, they are often constructed with the CTV spending path buried inside a taproot tree. The top of the chain of transactions are all the person vUTXOs every participant owns, locked to that consumer’s public key alone. As you go backwards in the direction of the foundation of the tree, every set of keys which can be under any node within the tree can merely be added collectively and used because the Schnorr multisig key that the CTV spend path is buried underneath.
Which means at any level within the chain of transactions unfurling on-chain to truly flip the vUTXOs into actual UTXOs the place you may get each participant in an intermediate UTXO to coordinate with one another, everybody can merely cooperatively signal a transaction shifting their cash the place they wish to go in a extra environment friendly means than merely letting the pre-defined transaction move unfurl all the best way to morph their vUTXOs into actual ones. This enables small sub teams to flee needing to truly unfurl your entire set of transactions pre-committed to on-chain, with out introducing any trusted events to depend on or weakening the safety of every consumer’s declare to their very own vUTXOs.
These two easy realities supply a large achieve in scalability for Bitcoin with out compromising on particular person sovereignty or safety in doing so, and all we want with a purpose to notice them is CTV.
Acknowledgements: I wish to thank everybody who participates on the Chicago Bitdevs for serving to me formulate these observations in a concise means by dialogue.