delvingbitcoin

Covenant tools softfork

Covenant tools softfork

Original Postby jamesob

Posted on: September 30, 2023 13:04 UTC

The discussion highlights a proposal to enhance Bitcoin's functionality by implementing a general set of features that would allow for the creation and deployment of scripts similar to CTV, APO, VAULT, and others without requiring specific permission.

This approach suggests starting with a broad feature set, such as OP_CSFS + OP_CAT, which could later be optimized through soft forks to introduce more efficient, specialized features based on demonstrated use either on-chain or off-chain. The advantage of this method is its flexibility and the potential for immediate improvement once specialized versions are introduced, aiming to avoid controversy and development stagnation.

However, there are risks associated with this strategy, including the possibility of recursive covenants and the creation of Maximum Extractable Value (MEV) scenarios. Moreover, there's concern about stifling innovation by waiting for the addition of new limited opcodes, which might only occur infrequently due to Bitcoin's conservative update cycle. The debate touches on whether it's better to adopt a Complex Instruction Set Computer (CISC) or Reduced Instruction Set Computer (RISC) philosophy towards Bitcoin scripting, with a preference for the former in order to support a wide range of functionalities.

Critics argue that despite the appeal of an "open sandbox" for script development, the proposal faces significant technical hurdles. For instance, the implementation of features like those found in OP_VAULT would require 64-bit arithmetic and additional opcodes for operations such as merkle tree manipulations and taptweak checks. Furthermore, enabling batching and signature aggregation necessitates fundamental changes to Bitcoin's validation code, which might not be feasible without a comprehensive overhaul of the scripting language. There's also skepticism regarding the practicality of achieving the desired level of complexity through the proposed methods, with some suggesting that focusing on other scripting languages like Simplicity could offer a more viable path to advanced functionalities.

In summary, while the proposition aims to expedite Bitcoin's evolution into a more versatile platform by allowing for greater experimentation and immediate adoption of specialized features, it faces significant technical and conceptual challenges. These include the complexity of implementing the required capabilities within Bitcoin's scripting system, the risk of introducing unwanted scenarios, and the debate between embracing a more inclusive versus a more cautious approach to script expansion.