pull down to refresh
10 sats \ 3 replies \ @tidwell OP 10h \ on: Quick questions about OP_RETURN? Quick answers here. bitcoin
Was this PR initially proposed because of Citrea BitVM needs? If so don't they only need a slight bump in OP_RETURN size, why is it being proposed to make the size unrestricted?
Citrea does not require an increase of the OP_RETURN limit.
AFAIU, Citrea is planning to launch a ZK Rollup on Bitcoin. To that end, they intend to write a proof into the Bitcoin blockchain every ten minutes. This proof takes 100 bytes of data. Their current plan is to write that data into one OP_RETURN output accompanied by a fake pubkey hash. Outputs with fake pubkey hashes cannot be safely discarded, therefore this unspendable payment output would pollute the UTXO set for all times. This would just work for them with the currently established mempool policies.
One of the motivations for the pull request would be that it could be suggested to Citrea that they instead write all data to a single slightly larger OP_RETURN output and we at least do not incur the unspendable outputs in the UTXO set.
Overall, the OP_RETURN limit was introduced to guide the use of Bitcoin away from excessive blockspace use for data while the available blockspace was only partially demanded. In the past 27 months, there have only been a few block that have not been full, so undemanded blockspace is no longer a thing. OP_RETURN outputs would have to compete for blockspace with other transactions at all times. The limit is neither as important nor as effective today as when it was introduced. Instead of providing mining pools with a financial incentive to accept oversized OP_RETURN outputs out of band, and to have debates to slightly loosen the limit further every once in a while, it seems easier to get rid of the incentive and debates by dropping it altogether.
reply
To that end, they intend to write a proof into the Bitcoin blockchain every ten minutes. This proof takes 100 bytes of data. Their current plan is to write that data into one OP_RETURN output accompanied by a fake pubkey hash
That's a common misconception. Indeed, Citrea is frequently writing a state diff and a corresponding proof into the blockchain, but they are using inscriptions for that. Those OP_RETURN transactions are something different. They are used only in case of a dispute during pegout for watchtowers to provide a chainstate proof for a heavier chain than the one the operator claimed to be the canonical chain.
These OP_RETURN transactions likely never hit the chain because there are strong disincentives for operators to make any invalid claims. Thus, ironically, lifting the OP_RETURN limit hardly has any effect in practice. It barely effects the Citrea protocol and it likely doesn't effect what kinds of transactions we see in the chain.