bitcoin-dev

Congestion Control via OP_CHECKOUTPUTSHASHVERIFY proposal

Congestion Control via OP_CHECKOUTPUTSHASHVERIFY proposal

Original Postby Matt Corallo

Posted on: May 21, 2019 19:41 UTC

A BIP draft for a new opcode, OP_CHECKOUTPUTSHASHVERIFY, has been shared on the bitcoin-dev mailing list by Jeremy Rubin.

This opcode is intended to provide easy-to-use trustless congestion control techniques through a rudimentary and limited form of covenant. The proposed change would enable Bitcoin users to confirm payments to many users in a single transaction without creating the UTXO on-chain until a later time. The draft covers this use case in detail, as well as a few other use cases lightly. An initial reference implementation of the consensus changes and tests is available on Github along with the BIP draft.Matt suggests that if covenants are going to be implemented, then a flexible solution should be provided to avoid having to go through the effort again when people ask for a better solution. The proposed BIP aims to deploy the change simultaneously with Taproot as an OPSUCCESS, but can be deployed separately if required. The changes for the new opcode are about 74 lines of code on top of sipa's Taproot reference implementation.