bitcoin-dev
Combined summary - Congestion Control via OP_CHECKOUTPUTSHASHVERIFY proposal
Jeremy Rubin has proposed a new opcode draft called OP_CHECKOUTPUTSHASHVERIFY, which aims to provide easy-to-use and trustless congestion control techniques through a rudimentary form of covenant.
This opcode allows Bitcoin users to confirm payments to multiple users in a single transaction without creating the UTXO on-chain immediately. The draft covers this use case in detail, along with a few other use cases.A reference implementation of the consensus changes and tests can be found on GitHub, along with the BIP draft. Matt Corallo agrees that covenants should be implemented but suggests a more comprehensive scripting system that offers additional features beyond just congestion control. He refers to these as 'certified checks' and believes they resemble pre-signed scripts for multisig transactions, without requiring interactive setup. Corallo emphasizes the importance of flexibility and versioning in the design, making it easier to add more features in the future.The proposed BIP aims to deploy the opcode change simultaneously with Taproot as an OPSUCCESS. However, it can also be deployed separately if necessary. The changes required for the new opcode amount to approximately 74 lines of code built upon sipa's Taproot reference implementation.Overall, Jeremy Rubin's draft proposes an opcode that enables congestion control and provides a limited form of covenant for Bitcoin transactions. Matt Corallo supports the concept but suggests a more flexible solution. The BIP draft and the reference implementation can be found on GitHub, offering further details and testing capabilities for interested parties.