When a transaction is given a consensus timestamp, the community as a whole generates that timestamp. No single node is allowed to generate it by itself. The hashgraph shows the time at which each node first received the transaction. The consensus timestamp is defined to be the median of those different times from a subset of the full network. Virtual voting is the Byzantine agreement mechanism that determines which nodes contribute a time to the median calculation. If more than 2/3 of participating nodes are honest and have reliable clocks on their computers, then the timestamp itself will be honest and reliable, because it is generated by an honest and reliable node, or falls between two times that were generated by honest and reliable nodes. In Hedera's proxy staking system, the criteria is that there be nodes with more than 2/3 of the stake rather than more than 2/3 of the nodes.
Articles in this section
- Who generates the timestamp on a transaction?
- What is 'gossip about gossip and 'virtual voting'?
- Why was hashgraph invented?
- Is the hashgraph consensus algorithm patented?
- How can hashgraph deliver consensus without PoW?
- How efficient is the hashgraph consensus algorithm?
- Does the FLP theorem say aBFT consensus is impossible?
- Where can I find more information about the Hashgraph coq proof?
- What is aBFT?
- What is virtual voting?