The speeds of the current blockchain solutions are not even close to today’s payment standards like Visa or PayPal. The major blockchains, such as Bitcoin and Ethereum, that have the largest amount of users among blockchain systems and the most developed ecosystems can’t even handle a network load of a few million concurrent users. Let’s take a look at the numbers:
- Bitcoin handles only 7 transactions per second. That’s not great for the biggest cryptocurrency with millions of users.
- Ethereum can process 15 transactions per second. That’s better, but let’s not forget that it hosts 2,191 decentralized applications and it got congested by CryptoKitties, which is only one popular dApp. It’s incapable of handling even two popular applications at this speed.
- Litecoin can handle 56 tps, however, its architecture is very similar to Bitcoin.
- During its tests, EOS was able to achieve nearly 3,000 transactions per second. It only has 101 dApps, which are used very rarely, so it didn’t have a chance to prove its speed.
- NEO supports 1,000 transactions per second, also doing this by assigning the task of transactions confirmations to 13 nodes; most of them belonging to NEO’s development team, making it similar to a centralized network.
So, the highest capacity a blockchain is able to achieve is 3,000 tps at cost of sacrificing decentralization. At the same time, Visa is able to handle 24,000 tx/second, so this should be taken as a standard for any cryptocurrency or blockchain network aiming to achieve mass adoption. So why are they all so slow?
The unsolvable bottleneck problem
The most popular blockchain networks can be divided into two categories: Proof-of-Work and delegated Proof-of-Stake. The way they handle transactions is totally different, but it limits the speed anyway and the place where the limitation occurs is called a bottleneck.
Proof-of-Work (PoW) forces all miners to confirm the same transactions, so the whole network is busy solving the same algorithms; finding the necessary hash of the previous block to continue the chain. Thus the transaction speed depends on the size of the block and the size of a single transaction.
With Bitcoin it takes 10 minutes to mine a block (that’s a fixed average time) and the difficulty is artificially adjusted in such a way that mining 2,016 blocks takes two weeks. The same issue is found with Litecoin and Ethereum – PoW blockchains can’t scale well. If the network would try to calculate some blocks simultaneously, dividing all miners to a few groups, it would become vulnerable to a 51% attack, because it would become easier to overtake each individual group, requiring less resources than attacking a whole blockchain.
The delegated Proof-of-Stake (dPoS) consensus model is faster than PoW, but this speed is achieved simply by switching the load from all nodes to a very limited amount of nodes with powerful hardware. Technically it’s a blockchain, but it’s actually very close to a simple database. The dPoS blockchain is limited by the hardware used by its main nodes. In the case of EOS, 21 nodes can handle 3,000 transactions per second. If they buy more powerful equipment, they probably could be able to handle more, but they have a limit that is yet untested. To achieve higher scalability, the blockchain should be built around a different consensus model and there are some alternatives out there.
What is #MetaHash?
#MetaHash is a new highly scalable blockchain network for payments and decentralized applications that is optimized for a constant high load. It uses three technologies – #MetaPoS, #MetaSync and #TraceChain – to overcome the obstacles that limit the performance of the current blockchain networks and solve the problems of nodes centralization and block distribution. It achieves this by creating network maps, assigning dynamic roles to various nodes, and implementing a fragmented cryptographic proof as opposed to waiting for confirmation from every node.
All these features combined allow for a network to reach speeds of 50,000 transactions per second and have a block confirmation time of 3 seconds. That’s enough to handle the volume of two VISA networks plus that of PayPal. It’s also that’s enough to sustain any project requiring a high load, like an online game or a social network.
#MetaPoS consensus model
It’s a consensus model, an improved dPoS that incorporates five different roles for nodes that validates the transaction on five layers. It provides protection against network corruption, because the structure can be changed anytime if some nodes will become malicious, and gaining control of any layer doesn’t provide control over the blockchain.
The roles are assigned dynamically according to physical properties, such as memory, CPU performance, network connection quality, and the inner reputation of the node, called Trust. This parameter can have a value between 0.01 and 1. For each day of node uptime it increases by 0.05, so it takes 198 days to obtain a value of 1. In case of incorrect validation, Trust decreases by 0.5.
The possible roles of a node are:
- Core node – Accepts transactions from verification nodes and queues transactions for block generation. Generates blocks. Used for consistent information sharding. Requires the most resources to maintain.
- Slave core node – Provides post-verification of signed blocks. May substitute for a core node in case of core node failure.
- Peer node – Receives transactions from clients, checks transaction validity, sends transactions to verification nodes. Does not keep the blockchain state in memory, therefore, does not require significant computing resources.
- Verification node – Checks the validity and economic feasibility of transactions received from peer nodes. Keeps records of all transactions processed. Requires computing resources.
- Torrent node – Distributes blockchain information, serves as a storage.
#MetaGate wallet sends transactions to the network. Every transaction happens in the following way:
- The #MetaGate client sends a transaction to an available peer node.
- The peer node accepts the transaction, checks the accuracy of the data and the signature, and sends it to the verification nodes.
- The verification nodes check the balance of the address to ensure that it has enough to make that transaction, it checks the accuracy of data, and sends it to the nearest core node.
- The core node compiles all transactions into a block and sends it back to verification nodes.
- The verification nodes recheck the block and distribute it among all other verification and core nodes.
- Then the block gets sent to torrent nodes, where all other core nodes can see it and vote.
- Finally, the information from the block gets back to the clients.
Every node can only interact with the node of a certain type – core nodes can’t get information from peer nodes, verification nodes can’t connect to clients. The random assignment of roles acts as a counter to a 51% attack, enhancing the resilience to 90%. An attacker must gain 51% of nodes at all five levels or the attack will fail, and it’s nearly impossible to concentrate enough resources to perform such an attack.
#TraceChain and #MetaSync modules
#TraceChain is a module that assigns roles to various nodes and keeps that information. It also creates network maps for optimal data routing. Each node has its own network map generated by #TraceChain that contains info about other nodes in order to deliver data in the fastest way possible.
The data gets synchronized between all nodes every 3 seconds thanks to #MetaSync. There’s no central node that contains information in #MetaHash, as nodes request information and the actual state of the blockchain from torrent nodes. The whole structure looks like a very large spider web, restructuring itself endlessly with the goal of finding the optimal routes between nodes at any given point in time.
That’s why it’s so fast – nodes work at the maximum of their technical capabilities, so there’s no latency between layers. At the same time, the block processing isn’t limited to a few nodes with large computational powers. There can be an endless number of nodes and it allows #MetaHash to be more efficient than its predecessors, all while not sacrificing decentralization.
What can be achieved with this speed?
#MetaHash allows for the creation and and execution of smart contracts, so it might become an interesting platform to those developers and businesses that tried ETH or EOS before and didn’t find what they were looking for. A small list would be enough to demonstrate the possible areas of #MetaHash applications.
It can be used to develop:
- payment networks
- global supply chain solutions
- decentralized messengers
- social networks
- online games
In other words, #MetaHash is a platform to build all kinds of blockchain-based products that require a high-load server. Up until this date it was impossible – ETH is too slow, it still can’t migrate to another consensus model to scale successfully and with regard to EOS, while it can handle a relatively high network load of 3,000 tx/sec, not many developers want to use it due to the centralization issues. Because of these limitations, we still haven’t seen a successful real-time decentralized application. There’s no point in building it if there’s no network that could host it. Now developers can use #MetaHash, and maybe in the future we’ll see a successful decentralized application that will be able to rival its centralized competitors.
Thanks to the Howtotoken Agency experts for the information and comments provided for this topic.