Hacker News new | ask | show | jobs
by tal8d 1930 days ago
It is odd, I've been involved in the cryptocurrency scene from the beginning, and I've seen the whole "Bitcoin kills Mother Gaia" talking point pop up every couple of years - but I've never seen such prolonged parroting as this last cycle. It is a silly complaint, because it never considers the wastefulness of the status quo. But it is an interesting method of attack, trying to conceal the fact that it is a call for others to act against their own interests, while also tickling their envy. It could be a dangerous gambit though, while most people can't see far enough ahead to realize that global carbon caps effectively freeze the international market's structure, they can see when somebody is ham-fistedly screwing with their money.
3 comments

That’s a dead easy argument to debunk. If each visa payment used 600kWh like a Bitcoin transaction visa alone would consume 3x as much power as the entire world generates and produce 100% of the worlds ewaste. So no, the status quo is orders of magnitude more efficient on a unit basis by definition.
Bitcoin's transaction throughput is independent of its energy consumption. If its block size limit was raised to allow Visa-scale transaction throughput, its per transaction energy cost would be 1/1000ths what it is now.

Bitcoin Cash forks Bitcoin to provide a block size limit that allows these kinds of throughput levels, while Ethereum enables both sophisticated transaction compression methods and layer 2 models, that can achieve Visa-scale throughput without raising layer 1 block sizes.

So attacking the cryptocurrency concept based on Bitcoin's peculiar shortcomings is misguided.

When you blow up the transaction limit you physically centralize the verification process. This is why you'd see miners gamble with sitting on a solved block and secretly beginning the next search, with a few seconds of head start, before announcing to the network, or skipping the inclusion of any transactions: because fractions of a second make a big difference. Bigger blocks propagate more slowly, and magnify the advantage of employing those kinds of undesirable behaviors. This is why HFT boxes end up as physically close to Wall Street as possible. This is also why bcash got so much early support from Chinese miners.
>>When you blow up the transaction limit you physically centralize the verification process.

You could 500X the transaction throughput and running a full node would only require a 25 Mbps internet connection.

>>Bigger blocks propagate more slowly, and magnify the advantage of employing those kinds of undesirable behaviors.

Miners do not propagate blocks all at once. They use propagation protocols like compact blocks to only propagate the transactions not already in other nodes' mempools: https://ieeexplore.ieee.org/abstract/document/8922597

The transactions fill the mempool over the course of the entire on average 10 minute duration between blocks, meaning that by the time a block is discovered, other nodes already have almost all of the transactions in that block.

The 'validation free mining until the new block is fully propagated and validated' strategy further mitigates the competitive disadvantage miners face when receiving large blocks from other miners.

All-in-all, centralization concerns do not justify preventing Bitcoin blocks from growing to meet market demand up until they reach at least 500 MB (ie. 3.3 MB/s of transaction throughput). The current 1 MB - or 1.6 MB assuming full SegWit adoption - limit, which only allows for 2 KB/s of transaction throughput, is absurdly inadequate, and makes Bitcoin's current energy consumption absurdly wasteful.

You are overlooking the disadvantage of not verifying the prior hash, which you can't do until you can verify hashMerkleRoot, which you can't do until you have collected the entire block. If you skip verification, you open yourself up to bad actors feeding you a bogus header - and you only figure that out after being drip fed a bunch of transactions that don't match the merkle root. Erasure coding doesn't fix that. In any case, proponents of the 'cram everything in the public ledger' method have already advocated 128MB and even completely uncapped block sizes... so the outcome is predictable.

Take a hint from every successful network that has ever networked since ever: hierarchy, extensibility, etc. Demanding that it all be crammed into a homogenous block is so obviously doomed to fail that you should be suspicious of the proponents' motives.

> being drip fed a bunch of transactions

Where are you getting ideas like this? How fast do you think internet connections are?

Only in the context of bitcoin do people start thinking 250 byte transactions are somehow difficult to send over gigabit connections. The average bitcoin block is 900 -kilobytes- at most at 10 minutes on average.

How is it that people have absorbed propaganda that makes them actually think that causes anyone a problem? blizzard.com is 13MB, gfycat.com is 29MB. Who are these miners that are struggling to send out 900KB ?

>>If you skip verification, you open yourself up to bad actors feeding you a bogus header - and you only figure that out after being drip fed a bunch of transactions that don't match the merkle root.

Malicious actors can't give a bogus header, because you can verify the bogus header doesn't have enough PoW. If the malicious actor does produce sufficient PoW for their bogus header, they are foregoing massive block rewards to fool your node for a few seconds. That's why this kind of malicious activity doesn't happen, and why miners do validation free mining on a new header until they've verified the whole block.

> When you blow up the transaction limit you physically centralize the verification process.

What numbers are you basing that on? Bitcoin is 1.5KB/s. A $10 vps is 80,000 times faster than that.

> because fractions of a second make a big difference

No they don't. The examples you are talking about are rare and have very little impact. If the entire network makes blocks once every 10 minutes on average, each miner finds blocks much less frequently.

> Bigger blocks propagate more slowly, and magnify the advantage of employing those kinds of undesirable behaviors. This is why HFT boxes end up as physically close to Wall Street as possible.

Where are your numbers here? How long do you think it takes to send around 900KB ?

A single twitch stream will propagate more than that around the world every second to thousands of individuals. Cryptocurrency only has to send the same tiny amount of data every few minutes to miners.

High frequency traders trying to be physically closer to a connection are operating on the scale of single micro seconds. You are comparing that to something 600 MILLION times slower.

> What numbers are you basing that on? Bitcoin is 1.5KB/s.

You know you can't verify an incomplete block, right? If you think you can just plow ahead after getting the first packet... you are going to have a really bad day once the other miners notice that you can be fooled into wasting hash power on bogus headers. You know that blocks get announced by the miners after they solve the hash, in chunks that can be up to the max blocksize, right? For Bitcoin that is 1MB, for bcash it is 32MB. Imagine if NASDAQ offered two levels of service: one that put the FIX protocol behind a 1MB buffer, and the other behind a 32MB buffer - which one would be disadvantaged? Anyone sitting at the 32MB buffer would be getting their lunch eaten. This is about as fundamental as it gets, so you might want to do some reading - because you've clearly got a big blindspot.

> No they don't. The examples you are talking about are rare and have very little impact.

If you are talking about bitcoin, you are very wrong - it is a thoroughly documented occurrence, it even has a name: the selfish miner strategy. If you are talking about bcash, I dunno one way or the other - I don't pay much attention to the joke coins. https://doi.org/10.1109/ICBC48266.2020.9169436

> How long do you think it takes to send around 900KB ?

Again, you need to actually do some reading on how mining works and what the network propagation characteristics are. I really don't want to have this come off as meanspirited, but it needs to be said: you obviously thought you knew how things worked, and you obviously don't - I wonder how many people you've misinformed.

> you are going to have a really bad day once the other miners notice that you can be fooled into wasting hash power on bogus headers.

What are you even talking about here? 900KB takes a fraction of a second to transfer on a modest internet connection, any miner with $10 a month for a VPS can transfer that is a millisecond. No one said anything about downloading fractions of blocks, you hallucinated that.

> Anyone sitting at the 32MB buffer would be getting their lunch eaten. This is about as fundamental as it gets, so you might want to do some reading - because you've clearly got a big blindspot.

What is it that you think is even happening? Blocks get sent out. One has 32x the transaction throughput. Why do you think 32MB or more would be anything other than trivial to send and receive? Any miner can send and receive that in a second.

> I don't pay much attention to the joke coins.

Bitcoin cash already has more sustained transactions than bitcoin. Maybe you should reach beyond the propaganda of /r/bitcoin

> it even has a name: the selfish miner strategy.

Miners that do that take the risk that someone else will propagate a block before them since they didn't share the previous block they found. Empty blocks have much more of an impact on bitcoin because the throughput is so constrained. Empty blocks do not have much of an impact on the usability of bitcoin cash because it has plenty of throughput. A miner maliciously mining empty blocks on bitcoin will also leave a lot of money on the table because they won't get transaction fees.

> you obviously thought you knew how things worked, and you obviously don't

Everything you said is either completely made up or an exaggeration of some minor effect. In your last message you compared something with a 10 minute window to millionths of a second. For some reason you ignored this and ignored the actual numbers of modern bandwidth. You keep using hyperbole but won't quantify anything because the numbers don't add up.

I've never seen such prolonged parroting as this last cycle.

The scale of the thing is getting out of hand. Cryptocurrency mining is eating up power on the scale of a small country, a sizable fraction of GPU manufacturing capacity, and a noticeable fraction of wafer fab capacity.

This has some parallels in how Spain went broke mining gold in the Americas in the 1500s. Expeditions went to the New World and gold came back. They were rich! Well, no. They had only created inflation by creating a gold glut. At a much higher operating cost than printing money, too, because it took ships and armies to make this happen.

I've never seen an estimate that withstood any kind of scrutiny. I've seen estimates based on both fundamental misunderstanding of the function of mining, and wild assumptions regarding miner behavior and out of date asic specs. Have you bothered fact checking any of those claims you just made? I mean actually reading the papers they cite, and learning the methodology they used. Because while you're thinking about conquistas, I'm thinking about the field of cybernetics in the 70's, and how it killed itself dead with ridiculously flawed methodology for modeling population growth - as the Davos types all nodded in agreement.

"Give me a one-handed Economist. All my economists say 'on the one hand...', then 'but on the other..."

-- Harry Truman

Oh and it gets better: known bad data is still repeated, despite the poster being told why it was bad data - over a year ago. Pointing this out results in flagging, for reasons that have nothing to do with ego or narrative continuity... surely.