The TAU Programming Languages and Systems Seminar - PHANTOM: A scalable blockDAG protocol
Yonatan Sompolinsky, Hebrew University and "Daglabs"
The security of Bitcoin's longest chain rule requires that (1) attackers posses less than 50% of the computational power in the network, and that (2) honest nodes be aware of each other’s blocks very soon after the block’s creation. To this end, the throughput of the system is artificially suppressed so that each block fully propagates before the next one is created, and that very few “orphan blocks” that fork the chain be created spontaneously. In this paper we present PHANTOM, a protocol for transaction confirmation that is secure under any throughput that the network can support. PHANTOM thus does not suffer from the security-scalability tradeoff which Satoshi’s protocol suffers from. PHANTOM utilizes a Directed Acyclic Graph of blocks (a blockDAG), a generalization of Satoshi’s chain which better supports faster block generation and larger blocks that take longer to propagate. PHANTOM uses a greedy algorithm on the blockDAG to distinguish between blocks mined properly by honest nodes and those that created by non-cooperating nodes who chose to deviate from the mining protocol. Using this distinction, PHANTOM provides a robust full order on the blockDAG in a way that is eventually agreed upon by all honest nodes.