A vocal group of node operators preferring conventional limits on the quantity of arbitrary knowledge that may accompany a bitcoin (BTC) transaction is infuriated with an upcoming software program launch for a minimum of three causes.
Bitcoin Core model 30 (v30) is the upcoming model of the community’s hottest full node software program. It’s going to drastically improve the quantity of information unrelated to the on-chain motion of BTC that nodes will settle for by default into their mempool.
Nonetheless, the discharge can also be complicated Bitcoin Core customers who’ve grown accustomed to a knowledge filter on OP_RETURN outputs which has operated since 2011.
Particularly, customers who wish to restrict the quantity of information unrelated to the on-chain motion of BTC must soar by complicated hoops, together with a rewritten config choice that modifications the impact of a easy quantity that has executed the identical factor for greater than a decade.
In v30, Core devs will all of the sudden nerf “datacarriersize=” by about 88%.
In all, there are three main modifications from Bitcoin Core model 29.0, and the upcoming v30 scheduled for launch in October 2025.
Bitcoin Core v30: Extra knowledge, extra confusion about restrict it
Three modifications will come into impact with Bitcoin Core v30 in October.
First, v30 will, for the primary time in additional than a decade, enable transactions right into a node’s default mempool with multiple OP_RETURN output.
New standardness guidelines in v30 settle for a number of OP_RETURN outputs inside transactions into the default mempool of Core nodes.
Second, Core builders have rewritten the v30 configurability setting “datacarriersize=” from signifying what it has meant for years.
This user-configurable quantity used to specify the variety of allowable bytes of information {that a} node’s mempool would settle for inside one OP_RETURN output.
In v30, this similar quantity and setting will now allow 9 instances extra knowledge than that very same quantity would have allowed in v29 and prior variations.
Knots developer Luke Dashjr, whose software program has displaced Core on about 16% of the reachable nodes throughout Bitcoin’s community, illustrated this complicated change with an instance of datacarriersize=83.
In v29 and prior, any Core node operator specifying the quantity 83 right here would have restricted OP_RETURN arbitrary knowledge to 92 bytes per transaction.
In v30, nonetheless, any person specifying the identical determine will all of the sudden enable 830 bytes of arbitrary knowledge.
It is because Core builders have rewritten the configurability setting “datacarriersize=” totally to accommodate v30’s new standardness guidelines to permit a number of OP_RETURN outputs as an alternative of only one.
He calls the slick change a “trick” by “bad actors.”
Do not let the dangerous actors trick you into considering Bitcoin Core 30 means that you can re-enable the datacarrier restrict:
1) Together with unlimiting the default, additionally they broke it additional. datacarriersize=83 now (as of Core 30) permits for 83 outputs totalling 830 bytes of spam, as an alternative of…
— Luke Dashjr (@LukeDashjr) June 10, 2025
Deprecating person configurability of OP_RETURN storage limits
Lastly, Core builders are resetting the default filter from just a few bytes to just about 4MB. They’re additionally marking this user-configurable filter for deprecation totally as a option to advise customers to not depend on the configurability setting “datacarriersize=” in upcoming releases.
Though Core builders will technically enable v30 node operators customers to decrease the info storage quantity through the setting “datacarriersize=”, they’ve not solely modified the that means of datacarriersize but additionally informed customers that this rejiggered configurability choice will likely be deprecated quickly anyway.
Because of these modifications, Knots leaders are complaining about Bitcoin Core v30 having “malicious code” as a result of it should deprecate the person configurability of datacarriersize and completely enshrine a brand new default that accommodates arbitrary knowledge into mempools at a scale by no means earlier than seen in Bitcoin’s historical past.
A GitHub put up by Instagibbs makes an attempt to make clear that Bitcoin Core builders nonetheless retained datacarrier arguments, though they’re marked as deprecated.
Because of this, Bitcoin Core builders haven’t promised to maintain these variables perpetually.
Bitcoin Core builders at Chaincode Labs appear intent on pushing all of those modifications by with v30 regardless of their drastic affect and complicated implementation for common node operators.