
The first article is the deep diving in the individual proposals of the era, which has reached a point of maturity that deserves to be collapsed.
to examine (CTV), which Jeremy Robin put forward with BIP 119, is the proposal of the most mature covenant and meat, not only outside the proposals that we will cover, but among all the proposals completely. As I mentioned in the article presented to this series, there are many concerns in the ecosystem regarding the covenants that enable the things that allow very severe consequences for Bitcoin.
CTV is specially designed to restrict its capabilities enough to avoid any of these concerns. To first understand how CTV works, we need to understand the individual parts of Bitcoin treatment.
This is a very high view of bitcoin treatment. It contains inputs, unexpected metal currencies (UTXOS), outputs, and new metal currencies that will not be created when confirming in a block. There is a lot of pieces that we will go through, but this is the highest level of the treatment structure.
Each transaction also contains the entire treatment number field, indicating the application of new versions of the rules or features. There is also a mark and science, which is assigned to specific values to indicate that the transaction is used Segwit. Then it is the number of input, the number of inputs in the transaction. Then come to the actual inputs.
Each input contains TXID from the transaction that has created the unprotected currency that is spent, which is VOT, which represents the output in that treatment that is spent, the size of Scripsig, and the last half program, which is the text program that proves that the inputs that are spent approved through the rules of the text program, and finally the number of sequences that are used to ensure the input that is spent on the input. That is, the inputs are present for a certain number of blocs or the length of time since its establishment.
The number of outputs is the next part of the data, and the number of outputs in the transaction. Next, the actual outputs, which contain a quantity of satoshis designated for this exit, the size of Scriptpubkey, and the actual Scriptpubkey, which is the textual program for this output. Finally, the NLOCKTIME field applies the Timelock value in the timeline or the height of the mass that applies to the entire treatment.
Each SEGWit transaction also contains a witness section, where each input has a witness -for -year -old entry that contains the number of stacks, the number of things that will be placed on the staple of the text program, the volume field for each element, and the actual data component to enter the stack.
How works CTV
CTV is an OPCode symbol that allows the basic form of meditation and front data that are implemented from all the proposals of the covenant. The text is allowed to take 32 previously specific bytes and compare this in exchange for the fragmentation of most of the spending fields. If the retail derived from the actual spending treatment does not coincide with the pre -determined retail, then the treatment is not valid.
The fields that you abide by are:
- Otherwise
- NLOCKTIME
- Number of inputs
- Division of all fields of Nequuse
- The number of outputs
- Divide from all outputs
- Entry index (the place where the input contains, the first input, the second, etc.)
These are all the fields committed by the CTV fragmentation, completely, and without the ability to choose and choose. This is the degree of meditation that CTV offers, “Is the fragmentation of these fields in the treatment treatment that corresponds to the retail in the text -locking program for the inputs that are spent?” Retail is mainly committed to the entire treatment except for actual inputs. There is a reason that does not include retail input. In order to lock the output to a 32 -Bet fragmentation with CTV, you need to know the fragmentation of the treatment that it guarantees is the only way to spend it. The closed inputs with CTV spending will have to include this retail in order to check CTV. This requires a fragmentation of that transaction before You can create a full treatment. This is not possible.
You can also Nest CTV scripts, meaning that you have a preliminary CTV program committed with treatment with outputs that also include CTV texts. This is what allows CTV to “move forward”. Everything it carries forward in practice although any data is in the transaction chain. You can do this in theory to an endless depth, but you are limited in practice for a limited depth because the nesting should be generated back from the end. This is because each level, or “jump”, must have a retail treatment that moves to the next level, otherwise you cannot create the text program in the first place. If you don’t know the following treatment, you cannot create the previous treatment.
What is CTV is useful for
CTV allows you to restrict the output so that it can only be spent, according to the rules of consensus, through pre -treatment. Some of you may ask what is the big deal, we can already sign transactions in advance. If the level of arrest is so limited that it can only achieve something we can already do in the prior signature, what is the value that you add?
First, the previously signed transactions are left the possibility of signing the key holders to sign new transactions and spend these coins in a different way. You have to trust that the key holder will not do that, or you will delete the necessary key to sign (you must trust also). CTV removes that confidence completely. Once the spending treatment and closing of this retail CTV, there is no possibility to spend another method, is imposed on consensus.
Currently, the only way to overcome this confidence is the pre -transaction to sign yourself using Multisig. After that, you can be completely sure that unless you choose one signature yourself, it is not possible to create another valid transaction that spends a metal currency in a different way. The problem is that the more people share, the more difficult each person becomes and is not reliable to sign a pre -treatment at the same time. The past small sizes become a completely inappropriate problem to solve it.
CTV gives people a way to know a set of transactions without everyone had to connect to the Internet at the same time to sign it. It greatly simplifies the coordination process by allowing everyone to obtain the information required for anyone else whenever possible, and as soon as this person has information everyone, they can create a series of CTV transactions without the participation of anyone else, and everyone can check that the right result is the only possible.
This is incredibly important on its own, but CTV can also enable the most valuable things with other electronic codes, which we will see in the following article.
Final ideas
CTV is a tightly restricted era that enables a degree of meditation and front data that carry a limited degree that does not exceed the actual function of anything that can be done with pre -signed transactions. He does not offer value in enabling new jobs in itself, but it greatly improves efficiency, expansion and safety that can currently be built using pre -signed transactions. This alone is an enormous benefit for every protocol almost published using pre -signed transactions.
Here are some projects that show how this appointed era is fully compared and exploited with others:
- Basic payment collection example by stutter.
- CTV cellar application by James ObernWho continued to suggest OP_vaut (still uses CTV).
- The concept proof port for the ARK application based on the previously signed treatment by Stephen Rose to use CTV instead.
- the SAPIO language by Jeremy Robin Himself, the highest -level language language language with CTV (also supports the use of pre -signed transactions instead).
- Timeout Trees, a suggestion for a very essential Coinpool design by John Law.
- Another many Possible protocolsLike the DLCS registry contracts (DLCS), the unreasonable Lightning channels can be one -party without the other, and even decentralized methods of gathering miners together.
CTV is an incredibly mature suggestion at this stage, with the addition of high value, and the lack of risk of enabling anything that leads fears about the covenants. This should not only be seen seriously, but in my personal opinion it should have been activated years ago.
The post Bitcoin Covenants: CHECKTEMPLATEVERIFY (BIP 119) first appeared on Investorempires.com.