3.4.1 Proof-of-Work (PoW) - Nakamoto Consensus

Proof-of-Work (PoW) is a decentralized consensus protocol that can be handled securely in a peer-to-peer network without requiring any trusted third party. It solve the the difficulty of the Byzantine general problem in an open network where miners can generate arbitrary identities (also called a Sybil attack) to compete for the next generated blocks by solving a random hash puzzle. In order to avoid a Sybil attack, PoW is used to force the miners to have and run predefined computational resources. Additionally, PoW protects the security of the blockchain from the longest chain attacks. Unfortunately, PoW requires a large amount of energy which keeps increasing as more miners join the network.