Bitcoin Covenants: What Are They And What Do They Do?
Covenant : a formal, solemn, and legally binding agreement.
The term “covenant” has gained significant attention in the Bitcoin community, evoking both enthusiasm and concern. Some proponents view them as groundbreaking innovations, while critics regard them as potentially perilous developments akin to nuclear threats. Others suggest they may not contribute substantially to Bitcoin’s scalability but are nevertheless intriguing.
Perceptions of covenants vary widely; some support their implementation, others oppose them, and many remain neutral. The ambiguity surrounding the term makes it challenging to define the established proposals that would fall under the category of covenants.
Proposals for covenants differ dramatically in their functionalities. Some introduce entirely new design realms for building atop Bitcoin, while others focus on refining existing capabilities without offering much new functionality, albeit with increased complexity and overhead.
Let’s establish a Bitcoin-specific definition.
Covenant: any script that ensures specific conditions are met for some or all outputs generated by a transaction utilizing an input governed by a covenant script, making it valid under consensus rules.
In simpler terms, while a Bitcoin script might restrict who can access a coin through required proof of authority, such as a cryptographic signature, or when it can be accessed via a timelock or hash preimage, a covenant script delineates how it can be utilized—specifying the recipient, amounts, and additional conditions for spending. Furthermore, a covenant script can also enforce that a coin must be directed to another covenant script for spending.
This latter aspect is at the core of the controversy surrounding covenants. Many express apprehension about introducing a method for “locking” bitcoins that can propagate restrictions, hindering fungibility and ushering in possible censorship mechanisms.
However, it is important to highlight that many of these issues can already be addressed without any covenant scripting capabilities, simply by utilizing multisignature wallets. An authority might refuse to process withdrawals from exchanges unless they are directed to a 2-of-2 multisig wallet of which it possesses one key. Subsequently, it can deny transaction approvals to addresses outside its key-control framework, effectively implementing any desired blacklist or whitelist without transparency and entirely off-chain.
Despite this, it remains essential for Bitcoin users to comprehend the nuances of power and versatility among the various covenant proposals available.
At their core, covenants aim to introduce two fundamental capabilities to impose restrictions on how coins can be spent: introspection and forward data carrying.
Introspection refers to the capability of examining different elements of the transaction being evaluated when spending a coin. For instance, if a coin must be spent to a specific address, it involves comparing the address embedded in the input’s covenant script with the address designated in the output of the spending transaction. Opcodes enabling introspection facilitate this comparison. The more detailed your introspection capabilities are regarding specific aspects of a transaction, the more powerful the restrictions you can impose.
Forward data carrying relates closely to introspection, often considered a consequence of it. This functionality guarantees that specific information is carried over and integrated into subsequent covenant scripts for evaluations. By employing introspection to strictly regulate certain parts of the transaction, one can ensure that only the exact desired data results in a valid transaction. The greater your introspective capability, the more flexibly you can advance data and the more variously you can utilize that information.
This article serves as a preliminary overview of an upcoming series of articles that will delve into the significant covenant proposals that have reached a mature status, generated recent interest, or are deemed conceptually essential by developers, despite lacking concrete designs. While this exploration won’t encompass every aspect, it will provide a relatively thorough foundation. Several proposals discussed may not be strictly classified as covenants but interface closely with them.
Among the proposals to be covered are:
CHECKTEMPLATEVERIFY
CHECKSIGFROMSTACK
TXHASH
OP_VAULT
CHECKCONTRACTVERIFY
CAT
TWEAKVERIFY
This article on Bitcoin Covenants: What Are They And What Do They Do? originally appeared in Bitcoin Magazine and was authored by Shinobi.
The post Unlocking Bitcoin Covenants: Understanding Their Purpose and Functionality appeared first on Crypto Breaking News.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Unlocking Bitcoin Covenants: Understanding Their Purpose and Functionality
Bitcoin Magazine
Bitcoin Covenants: What Are They And What Do They Do?
Covenant : a formal, solemn, and legally binding agreement.
The term “covenant” has gained significant attention in the Bitcoin community, evoking both enthusiasm and concern. Some proponents view them as groundbreaking innovations, while critics regard them as potentially perilous developments akin to nuclear threats. Others suggest they may not contribute substantially to Bitcoin’s scalability but are nevertheless intriguing.
Perceptions of covenants vary widely; some support their implementation, others oppose them, and many remain neutral. The ambiguity surrounding the term makes it challenging to define the established proposals that would fall under the category of covenants.
Proposals for covenants differ dramatically in their functionalities. Some introduce entirely new design realms for building atop Bitcoin, while others focus on refining existing capabilities without offering much new functionality, albeit with increased complexity and overhead.
Let’s establish a Bitcoin-specific definition.
Covenant: any script that ensures specific conditions are met for some or all outputs generated by a transaction utilizing an input governed by a covenant script, making it valid under consensus rules.
In simpler terms, while a Bitcoin script might restrict who can access a coin through required proof of authority, such as a cryptographic signature, or when it can be accessed via a timelock or hash preimage, a covenant script delineates how it can be utilized—specifying the recipient, amounts, and additional conditions for spending. Furthermore, a covenant script can also enforce that a coin must be directed to another covenant script for spending.
This latter aspect is at the core of the controversy surrounding covenants. Many express apprehension about introducing a method for “locking” bitcoins that can propagate restrictions, hindering fungibility and ushering in possible censorship mechanisms.
However, it is important to highlight that many of these issues can already be addressed without any covenant scripting capabilities, simply by utilizing multisignature wallets. An authority might refuse to process withdrawals from exchanges unless they are directed to a 2-of-2 multisig wallet of which it possesses one key. Subsequently, it can deny transaction approvals to addresses outside its key-control framework, effectively implementing any desired blacklist or whitelist without transparency and entirely off-chain.
Despite this, it remains essential for Bitcoin users to comprehend the nuances of power and versatility among the various covenant proposals available.
At their core, covenants aim to introduce two fundamental capabilities to impose restrictions on how coins can be spent: introspection and forward data carrying.
Introspection refers to the capability of examining different elements of the transaction being evaluated when spending a coin. For instance, if a coin must be spent to a specific address, it involves comparing the address embedded in the input’s covenant script with the address designated in the output of the spending transaction. Opcodes enabling introspection facilitate this comparison. The more detailed your introspection capabilities are regarding specific aspects of a transaction, the more powerful the restrictions you can impose.
Forward data carrying relates closely to introspection, often considered a consequence of it. This functionality guarantees that specific information is carried over and integrated into subsequent covenant scripts for evaluations. By employing introspection to strictly regulate certain parts of the transaction, one can ensure that only the exact desired data results in a valid transaction. The greater your introspective capability, the more flexibly you can advance data and the more variously you can utilize that information.
This article serves as a preliminary overview of an upcoming series of articles that will delve into the significant covenant proposals that have reached a mature status, generated recent interest, or are deemed conceptually essential by developers, despite lacking concrete designs. While this exploration won’t encompass every aspect, it will provide a relatively thorough foundation. Several proposals discussed may not be strictly classified as covenants but interface closely with them.
Among the proposals to be covered are:
CHECKTEMPLATEVERIFY
CHECKSIGFROMSTACK
TXHASH
OP_VAULT
CHECKCONTRACTVERIFY
CAT
TWEAKVERIFY
This article on Bitcoin Covenants: What Are They And What Do They Do? originally appeared in Bitcoin Magazine and was authored by Shinobi.
The post Unlocking Bitcoin Covenants: Understanding Their Purpose and Functionality appeared first on Crypto Breaking News.