Cipherhoodlum's avatar
Cipherhoodlum
npub1u2ny...uzde
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
1/ 🧵 Bitcoin’s Data Carrier Controversy: From Bug to Spam Bitcoin is money. But since the beginning some have tried to use it as a data storage system. To prevent abuse, Bitcoin Core added OP_RETURN in 2014. This allowed small amounts of data to be attached to transactions but capped at 80 bytes. That cap was enforced by a setting called datacarriersize. The purpose was simple... keep Bitcoin lean by letting small proofs exist while stopping spam. 2/ Before OP_RETURN people were already hacking the system by creating fake outputs to carry data. That polluted the UTXO set and increased the load for every node. OP_RETURN was meant to solve this. It let data be included in a way that was provably unspendable so nodes would not have to track it forever. The 80 byte cap was chosen as the balance between utility and protection. 3/ For years this worked. Node operators could even adjust datacarriersize if they wanted to allow more or less data. Most left it at the default 80 bytes. Then came Taproot in late 2021. Taproot was designed to make complex spending conditions and multisig more private and efficient. But it also created a loophole in how data limits were enforced. 4/ With Taproot it became possible to hide large amounts of arbitrary data inside witness fields. By using tricks like OP_FALSE OP_IF developers could embed whole images, texts and even games. These “inscriptions” bypassed the 80 byte OP_RETURN cap because the data was no longer in OP_RETURN at all. It was hidden in witness scripts that had a fee discount. 5/ This was never the intent of Taproot. Witness data was discounted to encourage upgrades like SegWit and to reduce signature malleability. It was not meant to subsidize people storing JPEGs on chain. From a policy standpoint this was abuse. The clean solution would have been to extend datacarriersize so it applied to all data carriers including witness scripts. 6/ Instead Bitcoin Core maintainers went in the opposite direction. In 2022 the definition of datacarriersize was changed. The wording was narrowed from “maximum size of data in data-carrier transactions” to “relay and mine transactions whose data-carrying raw scriptPubKey is of this size or less.” That meant datacarriersize now only applied to OP_RETURN outputs. Marco Falke merged this change and other maintainers ACKed it. 7/ This semantic change mattered. By limiting the scope only to OP_RETURN, Core effectively declared that witness data abuse was outside of the rule. Spam was legitimized not by fixing the bug but by redefining what counted as a data carrier. This left inscriptions free to spread without being blocked by the existing policy knob. 8/ In 2023 a pull request tried to fix this. It proposed expanding datacarriersize again so it would cover witness data and stop the abuse. This would have restored the original intent: Bitcoin allows small proofs but not arbitrary junk. But the PR was closed by Andrew Chow after Gloria Zhao and others said it was too controversial and lacked consensus. The fix was rejected and the loophole remained open. 9/ Now in 2025 with Bitcoin Core v30 the policy has shifted even further. The 80 byte OP_RETURN cap is removed. Multiple OP_RETURN outputs are allowed in a single transaction. The datacarriersize option is deprecated and its semantics are weakened. A value that once allowed about 92 bytes of data now permits close to 830 bytes. In effect the knob has been turned into a rubber stamp for more data. 10/ This sequence is clear. A loophole in Taproot was exploited to bypass limits. Instead of closing it, Core redefined the rules so it no longer counted as abuse. Proposals to fix it were blocked. Finally the last guardrails were dismantled in v30. The result is more spam in Bitcoin blocks. Junk data is now permitted by default. 11/ Bitcoin was not built to be a storage service. It can anchor proofs or timestamp certificates. But using witness discounts to embed megabytes of images is an attack on the network’s efficiency. Block space is scarce. Spam drives up costs for ordinary users and bloats the chain for every full node. 12/ The bug in Taproot was never fixed. It was renamed and normalized. Bitcoin Core’s policy choices enabled inscriptions to grow and now v30 makes it easier than ever. If Bitcoin is to remain sustainable as money, node operators must enforce their own limits. Otherwise the chain risks being filled with junk. 13/ The answer is protest. Do not accept defaults that enable spam. Run software that respects Bitcoin’s purpose as money. Bitcoin Knots already enforces stricter limits and rejects inscription junk. If Core will not defend the network, node operators must. Run @BitcoinKnots
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
„All I got from Bitcoin Core V30 is spam on the blockchain and a bunch of retarded shitcoin devs showing up at the conferences that dont run their own node!“
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
On this day in 2002, #Tor was launched. What began as a Naval Research Lab project has grown into a global symbol of online privacy. Today, 23 years later, it’s still protecting millions. image
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
Why Bitcoin Core V30 is flawed: Unlimited OP_RETURN is reckless CSAM is a serious attack vector Run @BitcoinKnots
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
So why have multiple implementations? •A monoculture results in the dominant software having too much control over the protocol direction •A bug in the reference client can bring down the entire network • Virtually all successful internet protocols have human-readable specs (RFCs) backed by multiple independently developed implementations — Dave Collins, May 2013 image
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
The Bitcoin Cantillon Effect If fiat money creates insiders close to the money printer… does Bitcoin have its own? Are early adopters, miners, and devs the ones sitting closest to new issuance? Do OGs act like a kind of mafia, protecting their influence over code, culture, and capital? And if so … is Bitcoin really an escape from the Cantillon Effect, or just a new version with different gatekeepers?
Cipherhoodlum's avatar
Cipherhoodlum 3 months ago
Bitcoin Core needs a time out. The developers may be technically brilliant, but they have lost ground with the broader community and the many people who have entrusted their life savings to Bitcoin. Bitcoin is money. Spam has no place on the timechain. Bitcoin Core must change course
Cipherhoodlum's avatar
Cipherhoodlum 4 months ago
Bitcoin Core needs a time out. The developers may be technically brilliant, but they have lost ground with the broader community and the many people who have entrusted their life savings to Bitcoin. Bitcoin is money. Spam has no place on the timechain. Bitcoin Core must change course
Cipherhoodlum's avatar
Cipherhoodlum 4 months ago
Npub.cash = custodial Lightning service Cashu = custodial ecash via a mint (unless you run your own) Both are cool experiments for privacy & UX — but don’t confuse them with Bitcoin self-custody. Not your keys, not your coins. 🧡
Cipherhoodlum's avatar
Cipherhoodlum 4 months ago
JPEG spam is economic activity but it's extremely wasteful. Store JPEGs in other places which are optimized for that like imgur, ipfs etc. Bitcoin is money
Cipherhoodlum's avatar
Cipherhoodlum 4 months ago
The real risk isn’t just a 51% attack. It’s insiders colluding with VC money to change Bitcoin’s code paying devs to include spam. That’s cheaper than mining attacks. Run @BitcoinKnots
Cipherhoodlum's avatar
Cipherhoodlum 4 months ago
Security is not binary. Filters are economic tools. They raise friction & time-to-relay. If a minority of nodes/miners carry sub-1sat, you get leakage, not failure. The goal is not to stop every tx everywhere, but to prevent the network as a whole from becoming a free relay for spam (ie, dick pics, child abuse)… A filter that reduces bandwidth/mempool abuse by 80–90% is still doing its job. Or is your pushback less about principle and more about VC profit-making?