What’s ProgPoW? Meet the hot new debate in the Ethereum community
ProgPoW has been tentatively given the green light, but the debate is far from over.
- ProgPoW intends to level the playing field between ASIC and GPU mining.
- People are concerned that sufficiently powerful ProgPoW mining could be equivalent to ASIC mining.
- There are valid points on most sides of the debate.
A poll on 28 March last year clearly showed the general sentiment towards ASIC miners in the Ethereum community, with the vast majority of the almost 7,000 respondents coming out in favour of "bricking" the high-powered mining devices.
The debate has evolved since then with the dramatic introduction of ProgPoW. While ASIC miners are chips that have been tailored to certain mining algorithms, ProgPoW essentially works by tailoring mining algorithms to certain chips. The end result is that both ASIC mining and GPU mining are on more equal footing.
ProgPoW implementation in Ethereum is now tentatively proposed for June this year, according to discussion on the Ethereum Magicians developer message board.
It's envisioned, in a perfect world, as a win-win compromise to the potential risks posed by ASIC miners. Unfortunately, it's not a perfect world.
Pros and cons
For some background, the relationship between public blockchains and the miners who work on them is often a difficult one. The problem is that you need miners to run the network as well as a certain level of miner support to implement changes, lest they "revolt" by forking the network or refusing to upgrade. This makes it extremely difficult for developers to make changes against miner interests.
The problem is that miner interests are not always aligned with the best interest of the network as a whole and are often more concerned with advancing their own interests while damaging competing miners.
When you let miners run the show, your network ends up centralised around the interests of a single business clique. You also tend to get fragmentation and inter-miner competition that's completely divorced from the actual meaningful development of a functional network. This is a large part of the reason bitcoin fragmented so dramatically into BTC, BCH and then BSV.
Ethereum doesn't want to go the same way and was purpose-built with certain anti-miner elements, like a "difficulty bomb" that reduces mining rewards over time to force a shift to proof of stake. This anti-miner and pro-decentralisation history might be why discussions of ProgPoW are so contentious.
The reason ASIC miners are so potentially threatening is because they're typically much more powerful than anything else out there and will typically be used secretly by manufacturers themselves before being publicly sold. This naturally trends networks towards centralisation while increasing the risk of a 51% attack. Some networks have attempted to implement ASIC-resistance, but evidence to date suggests that this is a dead end in the long run.
All roads lead to ASICs, but ASICs are scary and flawed. ProgPoW, then, is envisioned as a neat potential solution.
Conspiracies and theories
One of the main objections to ProgPoW is that miners shouldn't get a say in the decision-making process for the network. As developer Scott Lewis described it on Twitter, asking miners for their input on Ethereum development is like inviting a real estate agent to a family discussion on whether to buy a house – they have their own goals which do not necessarily mesh with those of the Ethereum network.
By bringing miners into the decision-making process and focusing too much energy on hardware development, the idea goes, you're turning your back on one of the key points of Ethereum and one of its strongest forces for decentralisation.
The decision to move towards ProgPoW implementation is evidence of miner infiltration into the Ethereum decision-making process, Lewis suggests.
Miners are not real stakeholders in the Ethereum network, he emphasises. Rather they are just service providers who get paid for their work, and miner opinions should be ignored to the extent that's safely possible.
The debate has been compounded by allegations that NVIDIA has funded the development of ProgPoW as a way of shoring up their own revenues and re-tapping the crypto mining boom, and that it's somehow pulling the strings behind Ethereum developer decisions in this respect. But these allegations are still unproven, and there doesn't seem to be any evidence to support them. For their part, ProgPoW developers have denied being funded by NVIDIA.
And either way, it probably doesn't make a huge difference to most people's opinions one way or another.
It's worth noting that ProgPoW is designed to be hardware agnostic, so even if NVIDIA was funding it, it wouldn't necessarily give an advantage to that brand over other brands. This is crucial because the crux of the argument against the involvement of big chip manufacturers is that Ethereum can't afford the centralisation that would result from giving one brand such a strong degree of control.
Enter the ASIC
David Vorick, a developer at Siacoin and perhaps one of the world's more experienced crypto mining authorities, raised some concerns around ProgPoW in a discussion with other Ethereum developers recently.
Specifically, that a sufficiently advanced ProgPoW miner would basically be comparable to a high-powered ASIC miner, in that it significantly outperforms the standard GPU rabble. And at that point, you are facing the exact same concerns that drove the Ethereum community away from ASICs in the first place.
First, that it would trend towards centralisation under one well-established manufacturer just like ASIC mining. And second, the potential for abuse that arises when one party has an enormous amount of hashrate, unbeknownst to the rest of the community. If one mining company is secretly in possession of powerful mining hardware when no one else is, they might be able to seize control of the network. This has happened many, many times before, most recently right now at Ethereum Classic.
When the goal is decentralisation, you can't really have a secret manufacturer running around with uber-powerful hardware. Unfortunately, the main reason a manufacturer would choose to stay secret is because they know their presence wouldn't be well received. That's one of the catch-22s of cryptocurrency mining. Its sole purpose is to promote decentralisation, but everything about the industry behind it naturally trends towards centralisation.
ProgPoW is envisioned as an alternative to the evils of ASIC mining, but it might functionally end up being the same thing in different clothes, Vorick argues.
He proposes a solution involving transparent community guidelines for what constitutes a "good" mining outfit and a more collaborative approach to working with miners. In other words, giving miners a seat at the table and working with them.
Back to square one
That proposal, then, puts Ethereum back at square one and facing the objections raised by folks like Scott Lewis; that miners are just service providers rather than network participants, that they're only in it for the money and that you can't develop a network in line with what they want.
This notion might be why it's so interesting that Linzhi, an Ethash ASIC mining manufacturer, has recently reached out to the Ethereum community for guidelines on how it can better and more transparently work with the developers to advance the network's goals. Entertainingly, given Vorick's speculation that hostility towards miners only promotes secrecy, Linzhi also said they didn't get in touch sooner because they thought no one would listen to the big evil ASIC manufacturer.
So, where does that leave Ethereum? The debate is still actively raging and there don't seem to be any ideal avenues yet.
Following the debate just takes you around in circles:
- Anti-miner: You need to keep miners out of the loop to ensure proper decentralisation.
- Anti-ASIC: Discouraging ASIC mining is a good way of keeping miners from accruing too much power.
- Pro-ProgPoW: ProgPoW might be a good way of keeping ASICs in check.
- Pro-ASIC: ASICs might be a good way of keeping ProgPoW in check.
- Anti-miner: You need to consult with miners to effectively implement and understand the situation, but still need to keep miners out of the loop to ensure proper decentralisation.
Where your opinion falls in the end might depend on where you choose to get off the ride.