Hashgraph = Blockchain?
Is a hashgraph the same as a blockchain? People seem to use those words interchangeably and I don’t think the terms have been clearly defined yet. In my view, they are both distributed ledgers, but a hashgraph doesn’t deal with blocks of transactions. It sends the transactions, aka events, directly onto the ledger. It is called a DAG = Directed Acyclic Graph, which is based on hashes. In other words, a Hashgraph. Therefore, calling it a blockchain is technically incorrect, according to Hedera at least.
Security
What defines Byzantine Fault Tolerant?
If a DL is to be truly Byzantine fault tolerant, the consensus algorithm have to make sure that whatever outcome the nodes have decided on, is the final outcome. Can blockchains, that have a tendency to fork, be considered BFT? In the analogy of the byzantine general from Part 2 of DLT Foundations; some general’s can’t receive an order to attack at midnight, only to later realize that they were actually supposed to attack at dawn.
Bitcoin and Ethereum are relatively secure, but I wouldn’t consider them fully Byzantine fault tolerant. That is why transactions needs multiple verification from different nodes, before they are added to the blockchain.
Solana and Hedera can be considered BFT. There are however some differences between them:
Solana is using TowerBFT, which is based on a practical BFT consensus algorithm. Practical BFT assumes that there are malicious actors on the Internet. So even if some nodes are ill-behaved, it will still be able to reach consensus. The only weakpoint is that it relies on a leader, which can be targeted.
Hederas consensus algorithm is mathematically proven to be Asynchronous BFT (aBFT), as stated in the Appendix of their whitepaper. The difference is that there is no leader that can be targeted. All nodes are equal. This gives increased protection against DDoS attacks.
Virtual Voting
The Swirlds Hashgraph Consensus algorithm combines the fast gossip protocol and the strong proven mathematical security from the old voting algorithms, but with a twist: It skips the voting.
The gossip protocol works like this: Consensus nodes (similar to validators) tells other nodes at random about the latest transactions, aka events, and those nodes start telling other nodes about the same events, in an exponential growth, until everyone in the network knows. It is the fastest way known to man on how to spread out information. There is no leader involved either; it’s pure peer-to-peer communication (P2P).
Down below is an example of how 8 nodes would synchronize their learnt events. For simplicity, only 1 event needs be synchronized. But keep in mind that multiple events from different consensus nodes could be synchronized at the same time.
Consensus nodes are the nodes participating in the gossiping and virtual voting. The goal is to let all consensus nodes know about the event, and to know which timestamp when the community as a whole knew about it. The key solution to this are the two containing hashes inside the messages;
One hash tells when a node learnt about the event, at what time, and from whom;
One hash tells when the peer node learnt about the event, at what time, and from whom;
So in this example Alice randomly decides to sync her event with grace. They then choose to randomly sync with other peers.
So in a nutshell: Consensus nodes gossip to each other. They also gossip about where they received their gossip, i.e. they gossip about gossip, so they can keep track of the history of the gossip.
Eventually they will sync with nodes that already know the event, but they still exchange information about where they heard the information from. They then reach full consensus:
It is referred to as Virtual Voting because there is no vote ever cast. Everyone knows already what everyone else knows, and when and where they learnt it from. Since they already know what everyone is going to vote, there is no need for validation.
Note: Solana invented PoH = Proof of History, which uses common timestaps, in 2017, but Hedera had already thought about the importance of timestamps. Without the timestamps, it would not be possible to implement this.
Performance
Transaction in practice
If you try performing a crypto currency transaction over Hedera Hashgraph, It completes within a few seconds. It’s basically just as fast as credit card payments, and the transaction cost is cheaper than dirt, $0.0001.
In may I made similar tests on different networks. I tested Polygon, Avalanche and Ethereum.
I was surprised that Ethereum only took about 10 seconds to complete (i didn’t time it exactly). They must have done something to speed things up. But the transaction fee was a thousand times more than Hedera.
Polygon and Avalanche was alright alternatives. About as cheap but not as fast. Both transaction would finish within a minute, which is good enough if Hedera isn’t supported for a certain wallet. I don’t know how secure these networks are however, neither if they will scale in the future.
I would have tried Solana, but 2 out of 3 times I’ve used that network, I had problems with the transactions. My experience may be anecdotal but for me it’s over.
Throughput
Hedera can do 10,000 TPS = Transactions Per Second, and that is throttled. When Mastercard runs 5,000 TPS and my payments never take more than a few seconds, I think 10,000 TPS is more than good enough right now.
According to the whitepaper, their theoretical limit unthrottled can be more than 100,000 TPS, before you need to consider sharding. It all depends on the number of computers and where they are geographically placed in the world.
With sharding, it could theoretically do millions of TPS across the globe.
Throughput analysis
For a Comparison with other Networks you can use the TPS Dashboard. I will show a screenshot right here:
Note: If you move your pointer over the question mark next to Real-Time TPS, it says that Hedera is including the transactions to build consenus. This is incorrect and clarified by Hedera here. You can also try their python script to check for yourself that the Dashboard correlates with the output from the script.
The Dashboard overall should be taken with a grain of salt. Real-Time TPS only shows the current TPS for any given network and the max theoretical limit is probably incorrect on many networks; Avalanche for example have a theoretical limit of 4,500. And also, there is no standard on what counts as a transaction.
What is interesting however is to see that Hedera is doing significantly more TPS than any other network in real-time. The only Ledger that has surpassed Hedera historically is Solana, but it seems like it has had a significant drop in traffic. The screenshot on Hederas post however shows Solanas maximum recorded throughput was 804 TPS less than a year ago. So I wonder what those 7,229 TPS came from.
Anyway where are Etheruem and bitcoin in this list?
Ethereum is on 12th place with 14 TPS, real-time
Bitcoin is in 18th place with a throughput of 6.33 TPS, real-time.
Quite the difference aye? The only way for Bitcoin and Ethereum to compete is with sharding and Layer 2 blockchains, like Lightning Network or Polygon.
I’m questioning the accuracy for the statistics of maximum recorded TPS though, because in bitcoins case, the maximum recorded TPS is more than the theoretical limit:
But maximum recorded TPS is not so relevant for the 2 most valuable tokens in the world. If Hedera is on average doing over 2000 TPS, Bitcoin and Ethereum should have much more.
But where are all the Hedera transactions coming from? I’m struggling finding support for compatability with DeFi apps, so it can’t be that many payment transactions. Hedera has apparently been gaining ground in the DApp market. The post from Hedera regarding what is included in the TPS calculation, lists some of the use-cases deployed already. If you do an Internet search you will probably find many more examples.
Cost
Transaction fees
A crypto transaction has a fixed fee of $0.0001. For other services it may vary. Still nothing near what Bitcoin or Ethereum has. Other networks have similar fees, like Polygon or Avalanche, but they are usually not fixed.
Network runtime costs
Hedera is marketing itself as the “Greenest” ledger in the world. Obviously trying to score points with the green agenda people. I would argue, if it’s CO2 emissions they are referring to, that Bitcoin is the greenest ledger in the world. Plants needs CO2 to grow you know.
What it really means is that it Hedera has the lowest infrastructure runtime cost of all ledgers. They have data from University College London Center for Blockchain Technology to back up that claim:

What isn’t clear is if they factored in the amount of validators in the calculation. On Cardanos website, they also claim to be the worlds cheapest blockchain. Although it seems Hedera has much lower energy consumption, they have only 26 validators, while Cardano had 1,209 (at the time of the research). But even if you give Cardano that benefit of a doubt, it still get’s beaten by Avalanche.
Either way, there isn’t a blockchain in the world that is more expensive to maintain than Bitcoin.
Stability
Since January 2021, Hedera have only had one major incident. On March 11, 2023, attackers exploited a vulnerabilty related to Smart Contracts that forced them to take down the mainnet for a little more than a day. They were exceptionally fast at fixing the problem and showcases the benefit of their governance model.
Before January 2021 I can only find some downtime related to planned mainnet upgrades. Earlier than 2020 feels irrelevant since it was launched in September 2019. Some bugs or outages should be expected the first year.
Source: https://status.hedera.com/uptime
Appendix
Hedera clones
Hedera nodes are open sourced, but their consensus algorithm is patented. Although patent laws issued in the US may not be valid in other countries.
I found this blog from U2U Network, a Company based in Vietnam founded in 2022. They write:
At U2U Chain, we use the Directed Acyclic Graph (DAG) architecture along with the Gossip about Gossip with Virtual Voting consensus algorithm, allowing us to achieve not only Byzantine Fault Tolerance but also asynchronous — a much higher level of fault tolerance in a distributed network compared to other existing methodologies. Thanks to this, U2U Chain is much more resilient, secure, and scalable for dApps with high throughput and fast finality.
Sounds quite familiar aye? It’s a blatant clone of Hederas architecture. Hedera doesn’t mind if someone spins up a local node for private use, but this looks criminal to me. This doesn’t only hurt Swirlds, but all the people who bought HBAR can be affected by this.
I wrote to Swirlds to notify them about this.