An overarching problem that cryptocurrencies must address is called the Byzantine General’s Problem. The Byzantine General’s Problem essentially simplifies down to: How do you prevent data from being corrupted or falsified in a network where there are nodes that have economic incentive to lie about the data?
In application to cryptocurrency, the problem boils down to preventing attackers from lying about a coin’s ledger, given the economic incentive of doing so. We need a way to form consensus on the ledger because anyone can create a block, while we only want a unique chain, so we want a way to decide which block to trust.
The two main schools of thought to solving the Byzantine General’s Problem are Proof of Work (PoW) and Proof of Stake (PoS).
Proof of Work (PoW):
Explicitly, a “proof of work” is a piece of data which is difficult (costly, time-consuming) to produce but easy for others to verify and which satisfies certain requirements. Producing a proof…