Skip to content

Instantly share code, notes, and snippets.

@taoeffect
Last active December 14, 2022 00:56
Show Gist options
  • Save taoeffect/aaac7d5b6578eadda6f8ca12a84df187 to your computer and use it in GitHub Desktop.
Save taoeffect/aaac7d5b6578eadda6f8ca12a84df187 to your computer and use it in GitHub Desktop.

PoW vs PoS - Environment and Security

Date: Jul 21, 2019
Updated: See Github revisions timestamps

In questions sprouted from this thread: https://twitter.com/taoeffect/status/1151941939157012480

I copy them here into this gist in the hopes that it will serve others and so that in the future I have something I can link people to. My thanks to @Jehan for the opportunity to put my thoughts on this subject into a somewhat easier-to-read medium.

I've always had trouble understanding the narrative that the owners of huge semiconductor factories and power plants are somehow morally superior to people who hold PoS tokens.

That's your narrative- somehow money that is staked in physical assets like ASICs and power plants is more "decentralized" than money staked on a ledger.

I'm curious why it's so much better to have power and semiconductor plant operators control a chain than token holders.

Can you link to the previous explanation? I think PoW-like mechanism could be incredibly powerful for incentivizing desirable behavior, but burning electricity doesn't really seem very desirable.

So, let's begin by considering what it is that I am /not/ saying.

I am not claiming that "owners of huge semiconductor factories and power plants are somehow morally superior to people who hold PoS tokens."

That would be a ridiculous claim to make. It is (1) a vague generalization, rendering it meaningless, and (2) does not have anything to do with the line of reasoning that I'm putting forth.

I am making the claim that a blockchain powered solely by PoW is "more decentralized" than a blockchain powered solely by PoS. This claim stands separate and alone from any claims of morality one way or the other, and can be analyzed in isolation in that regard. Let's explore why this is almost certainly true, and then afterward return to the question of morality.

Why pure PoW is more decentralized than pure PoS

In a PoW system, the security of the chain is intimately associated with limited resources that exist in the outside physical world that have absolutely nothing to do with the virtual man-made blockchain.

What this means in practice is that the security of the chain becomes distributed among a larger group of unrelated people, and none of these groups alone have absolute power over the definition of the system itself.

During the Bitcoin civil war we saw how these group dynamics played out, and we saw who these groups were:

  1. There were the core developers, who had control over the code that defined the protocol
  2. There was what was called the "economic majority", which represented businesses and wealthy individuals who held large amounts of stake
  3. There were the miners, who controlled the transaction selection process (consensus)
  4. And there was the wider community of users, most notably non-mining full node operators ("validators")

In pure PoS, because the mining is "virtual", groups number 2 and 3 above are collapsed into the same group. Worse still, because it tends to be the case that the founders of blockchains tend to have the greatest amount of stake, and because of the Pareto principle, there is additionally the danger that group 1 also collapses into that same controlling cartel. So there is an increased danger that we go from a situation where power is distributed among 4 groups to just 2 groups.

Additionally, unlike PoW, it is possible in PoS for a controlling group to form that has "no-cost censorship" or a "Buyout attack". Meaning, if enough stake is bought and staked, it becomes possible for a single entity to forever censor transactions that would allow new entities to join the consensus group, and it costs $0 to do so once enough stake has been accumulated. This is not true for PoW.

This is why pure PoW is more decentralized than pure PoS.

Question of morality

So far as I am aware, there is nothing inherently immoral about consuming energy. How energy is obtained and consumed is where ethical concerns should be directed.

People and companies consume energy all of the time. The Internet consumes a colossal amount of energy, likely several orders of magnitude greater than Bitcoin. The same is true of various countries, including Russia, China, India, the United States, and many others. And yet we have never seen articles proclaiming that we must get rid of these entities /because they consume energy/.

Energy consumption is a fact of life. The only ethical question is /how/ we obtain and consume that energy, and that is a question that has absolutely nothing to do with Bitcoin or PoW. Those claiming it does are pushing baseless anti-Bitcoin propaganda.

The same is true with respect to factories. It is certainly the case that factories can pollute the environment, however this (1) does not need to be the case, as it is possible to create products in an ecologically friendlier way, and (2) if this were indeed a concern then before we complain about PoW over our cloud and factory-powered Twitter on our factory-produced laptop (or factory-produced phone), we may want to re-evaluate our relationship with all of modern life.

Additional Reasons PoS Is A Bad Idea (for Bitcoin)

It's less powerful:

Things PoW can do that PoS can't:

  • Measure time
  • Distribute currency fairly
  • Provide progressively stronger security guarantees

https://twitter.com/taoeffect/status/782438404780793856

It's an engineering nightmare:

The reason it has taken a while, you know we’ve relied on proof-of-work in Ethereum for five plus years, is that proof-of-stake is complicated. Proof-of-work is fundamentally very simple, is easy to analyze, is easy to implement and deploy, and proof-of-stake has a lot of moving parts. You can code up a proof-of-work algorithm in a hundred lines [of code] or so. Our current clients are a hundred thousand lines or so for proof-of-stake.

https://www.lynalden.com/proof-of-stake/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment