What is the difference PoW algorithms (as used in Bitcoind) and BFT (used for instance in Libra) ?

1 Answer 1


They really don't have any similarities, so I'm not sure that there's much point in comparing them or talking about their differences. If you understand what PoW is and what it does and you understand BFT algorithms and what they do, there's no much else to know.

Both algorithms are algorithms designed to get eventual agreement on how to make forward progress in systems that can make forward progress in more than one valid way where agreement on which way to go forward is needed for the system to be useful.

PoW algorithms are slow and expensive and don't provide any actual finality but eventually provide practical finality. They're vulnerable to majority attacks and require honest participants to actually spend, on a continuous basis, to protect the network more than any attacker is willing to spend to harm it.

PoW algorithms are dangerous on blockchains that have non-native tokens. For example, Ethereum's security comes from PoW and the value of its native token, Eth. But it also has an ERC-20 ecosystem of non-native tokens. Things get scary if the value of Eth doesn't remain high enough to keep this ecosystem secure. Ethereum is a secure platform to build DeFi on so long as all these DeFi projects together don't get too valuable for Eth to secure.

BFT algorithms are fast and cheap and can provide actual finality. You get to choose who you trust, rather than having to trust whoever has money and cheap power as you have to do with PoW algorithms.

One very important thing to understand about Libra is that it cannot possibly ever be decentralized. Whatever legal entities control the assets that back Libra are parties without which the Libra currency will lose its value. That means that for any proposed hard fork, those custodians get to decide which side of the fork keeps the economic value. Because any rules change can be imposed by a hard fork, that means that the custodians get to choose the rules, period. That means no real decentralization ever, period.

Suppose, for example, that someone proposes adding respect for a government-provided censorship list to Libra. If the custodians say that they will issue and redeem on the censorship side of the hard fork, then that's it. The censorship wins, and it doesn't matter what anyone else wants or says. The censorship side of the fork will have the backing which is what gives Libra its value. By design, Libra cannot ever possibly be decentralized so long as it is backed.

  • 1
    I very much like this answer, but perhaps one additional important distinction: in BFT solutions the participants need to have identities that are known to other participants. PoW is designed to work without prior knowledge of who may be participating (implying you can participate anonymously). Commented Jul 8, 2019 at 21:56
  • @PieterWuille They don't. Since they can't double spend, it's perfectly fine to just choose anyone anonymous (by public key) that appears to be operating properly. If you choose people who don't let the network make censorship-free forward progress, you can just change who you chose. It is true, though, that PoW can be used to do the initial distribution of a cryptocurrency while BFT algorithms really can't. If the network makes censorship-free forward progress, and the "participants" can't double spend or censor, then it doesn't matter who "participates". (You often can't even tell!) Commented Jul 8, 2019 at 22:16
  • Well that still requires some pseudonymous identity at least, with public keys as identifiers, and participants need to choose to accept these keys. In PoW, you cannot distinguish whether two attempted updates were created by the same party or not. Commented Jul 8, 2019 at 22:24
  • If you're talking about BFT where everyone is assumed to just accept any key that shows up until they show signs of misbehaviour, I expect you'll end up with trivial DoS attacks - something PoW doesn't suffer from. Commented Jul 8, 2019 at 22:25
  • @PieterWuille No. I'm talking about BFT where you and the people you want to do business with agree on a set of keys that appear to be behaving reliably. It's like letting three companies in China choose which transactions go in which blocks except you pick those three companies, don't pay them millions of dollars a day, and can easily change them if they censor. And you don't have to wait an hour. ;) Commented Jul 8, 2019 at 22:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.