Hello, nostr:nprofile1qqsy7nuzs3nf3lmx4e06n7k5crzwk7pr47c8l204f65azhcjz7hfdnqpzemhxue69uhk2er9dchxummnw3ezumrpdejz7qghwaehxw309aex2mrp0yhxummnw3ezu6twvehj7qghwaehxw309ahx7um5wghx7mnnv968xtn0wfnj73mk2np,

Thank you for weighing in on this...🙏

Mechanic's arguments, which I find vastly persuasive, are in summary the following:

Current Op Return size limitation does not allow a single graphic image to appear that would be detailed enough to be classified as "morally objectionable."

Please correct me if I'm wrong, but nor do other existing methods of storing arbitrary data within the permanent blockchain ledger allow for a single graphic to appear in isolation, apart from considerable gyrations having to be done in order to reconstruct an image.

When "morally objectionable" images are intentionally embedded using presently available means, it's not something that can be prevented, any more than accidents on a freeway can be prevented. The only way to do so is in an obscured, disjointed fashion that is not easily reconstructed with out considerable effort.

Here's one more way of summarizing Mechanic's arguments...

* Bitcoin Core 30, as currently proposed, will open the door for large, arbitrary chunks of data, which include the possibility of plain text jpegs.

* Bad actors--which certainly include subversive state functionaries--will then almost certainly publish contiguous and plainly decodable, "morally objectionable" images on the blockchain... Think CP and other universally despised data...

* People of good will will not want to host such garbage on their computers, and consequently, the number and distribution of bitcoin nodes will inevitably shrink.

* Additionally, the state will intervene and either outlaw Bitcoin nodes or prosecute node runners or both because such content is immutably part of the blockchain.

It seems pretty clear to me that this is an existential threat to bitcoin, and that it will, as Jeff Booth opines, reduce both the decentralization and the security of the network, leading to its ultimate demise.

I would appreciate it if you can either correct any misunderstanding I may have of Mechanic's arguments, or directly address and refute those arguments?

I totally understand not wanting to be an unwitting mule transporting illegal numbers like bits representing CP when processed correctly.

Mechanic notes that running a node makes you a sender and receiver of illegal numbers (such as binary digits representing CP) because nodes are in the business of sending and receiving blocks and consensus rules do not prevent certain sequences of bits from being embedded via op return (which had been done since forever) or inside cleverly constructed public keys (recent development).

So Mechanic wisely restricts his consideration to each nodes mempool, somehow believing that illegal numbers in RAM are somehow going to be treated differently than illegal numbers on disk (one can persist mempool to disk though and can chose not to evict any transaction ever if they wish). I don’t think the law will see it that way, but from a moral perspective I totally agree with Mechanic. I’m not sure a court will care whether you have to type or copy/paste a command or double click a file to reveal illegal numbers.

Here’s an interesting example: if you run a node, copy and paste this in to the terminal:

bitcoin-cli getblock 00000000000000ecbbff6bafb7efa2f7df05b227d5c73dca8f2635af32a2e949 0 | tail -c+92167 | for ((o=0;o<946;++o)) ; do read -rN420 x ; echo -n ${x::130}${x:132:130}${x:264:130} ; done | xxd -r -p | tail -c+9 | head -c184292 > bitcoin.pdf

Now you have your own copy of a 184 kB computer file that happens to be a PDF file with embedded images. But a similar command could reveal something vile and illegal.

Now I agree that the miner who mined the block containing illegal numbers should never knowingly do so. And forcing illegal numbers to be submitted directly to a miner does provide a chain of responsibility and a legal target for law enforcement, much like OFAC address ban list already does.

But as soon as miners figure out how to detect illegal numbers to rightly filter them, the bad people sending illegal numbers will just become more clever at obscuring the data. One must accept that bitcoin can and will be used to publish the most disgusting and evil of all illegal numbers eventually, if costs of doing so remain sufficiently low.

If one wanted to be as “blameless” as possible while running a node, perhaps the best way is to either run a satellite node that transmits nothing or run a conventional node in “blocks only” mode that forgoes the mempool entirely.

But this old issue of illegal numbers is something bitcoin has been dealing with for years. And if bitcoin can’t be censorship resistant enough to be unaffected by the worst of illegal numbers, it can’t be censorship resistant enough to serve as money. Just like proof of work “wastes” energy, bitcoin will transport illegal numbers if bad people make it do so.

Reply to this note

Please Login to reply.

Discussion

Well articulated and i agree with that.

Was extremely disappointed to see bitcoiners running with the “but won’t anyone think of the children” line which used to be the sole province of admin overlords trying to justify the next ratchet in orwellian oversight

Exactly. Mechanic is mixing in a little neurolinguistic programming and taking advantage of the good hearts people have…my node is a satellite node so I don’t really have a dog in this fight.

I’ve always liked your reasoning and agree with your take however Core have majorly screwed up.

So whilst from a practical sense, maybe core are onto something, their ability and/or willingness to communicate their logic, stinks.

If for no other reason other than messaging and cultural it only makes sense to run knots.

I also think mechanic is onto something. Core’s determination to force through this highly contentious change REEKS of less than ‘for the greater good’ incentives. The way Core are behaving it is like ‘the overloads’ are holding Core Devs’ first born children hostage until the change is pushed through. My gut says this is beyond ego and something truly perverse lies at the root.

#Running Knots

I too am a little baffled at the particular way core is going about this…specifically, they are removing a configuration option rather than just adjusting the default option.

Most people never change defaults. So why not just change the default? Why remove the configuration option? What is gained that wouldn’t be gained with just a default setting change? I don’t think much is gained and would have been less authoritarian feeling…

That said, illegal numbers will be an issue bitcoin must face and succeed against. If the law somewhere says bitcoin can’t exist because of illegal numbers, then those places must ban themselves from bitcoin.

I also think it’s unwise to make it so easy to relay such large data containing transactions for technical reasons. There was a time in bitcoin history where the maximum block size miners would choose to create as a matter of policy was limited by a configuration option in bitcoin.conf…whenever blocks started being full, devs would increase block size a little bit and if things went well and blocks got full they’d increase the block size again all the way up to the consensus max block size. Each increase in policy block size was an experiment and I think going from 80 bytes to 160 bytes would have been a prudent default instead of 100,000 bytes.

I also think mechanic is right that embedded illegal numbers (like CP image data) that are easier to spot are more likely to fuel a narrative against bitcoin and big opreturn limits facilitates that. This is unwise on a social level. Bitcoin can and must poke the bear but must it poke the bear in the eye at this precise moment?

The answer might be yes. Why? Because delaying the inevitable only makes sense if you can fix the problem or something changes that makes the problem of illegal numbers not be a problem (like laws protecting node runners from bad people doing bad things). Otherwise you’re just delaying the inevitable to dump your bags. But there is no fix. Bitcoin either wins or loses this battle…

But please do not forget: if everyone runs knots, then bitcoin mining must centralize. These are strong words and I mean if, then, and must very precisely.

Because out of band transaction relay can always exist, people will send the biggest miners extra money to include their spammy transactions. These big miners will outcompete the smaller players and this eventually will force smaller players to mine at a loss while big miners remain profitable. That cycle will repeat until there is one miner. Now that most definitely is an existential threat to bitcoin that bitcoin doesn’t necessarily need to face and overcome.

I’m rambling but I hope I’m making sense. I wish core moved slower and stepwise and didn’t delete a configuration option entirely…unnecessarily angering, even if in a purely mathematical sense not “wrong.”