Hashgraph
The hashgraph is a distributed data structure that maintains a growing list of data among a large amount of network peers. It was first proposed in a white paper by Leemon Baird titled "The Swirlds Hashgraph Consensus Algorithm: Fair, Fast, Byzantine Fault Tolerance".[1]
Hashgraph Consensus
Hashgraph consensus is an algorithm that operates on a list of events contained within a hashgraph data structure and maintains consensus over the correct chronological order of the events among an arbitrary number of participating nodes. Use cases can be found in any distributed system that benefits from maintaining a consensus among the participants over the global state of the system and the order of state changes applied to it. Good examples are log replication, distributed ledgers, shared state machines, etc.
The algorithm is based on the following core concepts that together provide the properties listed further below:
- Famous Witnesses
- Strongly Seeing
- Gossip about gossip
- Virtual voting
Comparison with Blockchain
Similar to systems based on blockchain technology, hashgraph provides desired properties that makes common issues like double spending impossible.
Bitcoin Blockchain | Hashgraph | |
---|---|---|
Fair | No | Yes |
Low Computation | No | Yes |
Byzantine fault tolerant | No | Yes |
Distributed Trust | Yes | Yes |
Solves double spending | Yes | Yes |
Mining required | Yes | No |