From Hashgraph to InterValue’s HashNet
What is blockchain consensus mechanism?
Talk about blockchain, we can't ignore its core issue — consensus. Consensus means that voting by special nodes to complicated the verification and confirmation of transaction through short times. For a transaction, if several irrelevant interests nodes can reach consensus, thus it can work on behalf of the entire network. Blockchain as a data structure in chronological order can support various consensus mechanism. The consensus is a significant component of blockchain technology. Blockchain consensus mechanism aims to make all honest nodes save a consistent blockchain view while satisfying both:
(1) Consistency: the prefixed of the blockchain that all honest nodes saved totally same as each other.
(2) Validity: information promoted by one of the honest nodes will eventually cover by other honest nodes and save in their own blockchain.
Blockchain technology using a set of consensus-based mathematical algorithms to establish a “trust” network between machines, thereby creating new credit creation through technical endorsements rather than centralized credit institutions.
What are the problems with the current consensus mechanism?
There are several major consensus mechanisms: PoW, PoS, DPoS, PBFT.
⑴ PoW (Proof of work) is a consensus strategy used in Bitcoin network. It requires a complicated computational process in authentication. In PoW, each node in the network is calculating a hash value of the constantly changing block header. POW is completely decentralized, free to access, but mining causes a lot of waste resources, so consensus needs a long period, which is not suitable for commercial applications.
⑵ PoS (Proof of stake) is an energy-saving alternative to PoW. Instead of demanding users to Ɖnd a nonce in an unlimited space, PoS requires users to prove the ownership of the amount of currency because it is believed that users with more currency would be less likely to attack the network, and PoS still needs mining.
⑶ DPoS (Delegated proof of stake). Similar to PoS, miners get their priority to generate the blocks according to their stake. The major difference between PoS and DPoS is that PoS is a direct democratic while DPoS is a representative democracy. And the whole consensus mechanism still depends on tokens, while many commercial applications do not need tokens.
⑷ PBFT (Practical Byzantine Fault Tolerance) is a replication algorithm to tolerate Byzantine faults. Hyperledger utilizes the PBFT as its consensus algorithm since PBFT could handle up to 1/3 malicious byzantine replicas/nodes. PBFT needs to know the identity of each node to select an accountant for each block, and nodes cannot join or exit arbitrarily, so PBFT is always used in private or permissioned Blockchains. It’s high efficiency, but nodes need to fully trust each other.
From the mentioned several consensus mechanisms, we conclude that the current consensus mechanism still has some problems such as waste of resources, the long-term success of the consensus, low efficiency, slow speed, dependence on tokens, and low reliability.
When blockchain meets DAG
Recently, many industries try to implement DAG to blockchain data structure. InterValue uses the basic DAG data structure to store transaction data in its first development phase. The basic DAG data structure has been adopted in several projects (e.g. IOTA and Byteball) to support the long-term stable operation of public blockchains, which proves the advance and performance of DAG chain technology. In InterValue, transaction messages are encapsulated into units (Units), and a DAG graph is constructed by linking these units. A unit must confirm the units before linking them. Therefore, the cost of computing and time for consensus is reducing. It is blockless, and there is no data synchronization. As a result, it tremendously increases the transaction throughput and minimizes the confirmation time.
Figure 1: The DAG of InterValue
As shown in figure 1, the InterValue DAG data structure compared to the one-to-one chain block structure in the blockchain, a unit in the DAG structure can contain multiple parent units at the same time when the transaction is sent out, so it can accommodate more transactions and get faster confirmation. At the same time, because the cell entering the DAG will be directly or indirectly verified by all the cells connected to it, if the content of the cell is to be modified, all the cells verifying it need to be modified accordingly, so that the modification cannot be realized, and therefore has higher safety.
From the version of 2.0, the InterValue based DAG consensus will be replaced with a HashNet based enhanced DAG data structure. HashNet is an innovation of the most investment value of InterValue. The HashNet consensus protocol attempts to form a divide-and-conquer distributed system through “on-chip autonomy, inter-chip collaboration”. It uses an original fragmentation algorithm to organically integrate fragmentation concurrency, fragmentation, and inter-slice synchronization. Perfect balance between transaction throughput, decentralization, and security.
From Hashgraph to HashNet
In the beginning, the combination of DAG and blockchain was just to solve the performance problems of the blockchain, from the idea of combining side-blocks with block and DAG at first, to DAGCoin that discards the concept of a block, and to IOTA and Bytebal that have achieved certain success. A lot of people are skeptical about the security of these DAG applications and ensure it can meet the consensus of decentralization. Including whether IOTA is too dependent on the Validator that is not yet open source, Byteball’s witness node has no evil space. So someone put forward another kind of distributed book consensus — -HashGraph, without the concept of a block, transactions and transactions constitute DAG directly.
The existing HashGraph consensus algorithm achieves the consensus of transaction sequence through gossip network and virtual voting strategy. The prerequisite of this consensus requires that the network node’s voting ability exceeding 2n/3 has unanimous voting results for the famous witness event, where is the total number of votes, and it is commonly represented by the number of tokens. Because of local voting strategies, HashGraph achieves quick transaction confirmation speed. However, this method has the following problems:
(1) In a wide area network environment, the node has strong volatility, and the fluctuation of the voting ability of the entire network also increases. This may lead to the system unable to find an event that meets the 2n/3 voting consensus for a long time and thus cannot reach a consensus.
(2) Due to factors such as node stability, processing power, and bandwidth, the ability of different nodes to handle events varies greatly. If there are a large number of weak nodes participating in the voting in the system, the consensus may be not achieved for a long time.
(3) In a wide area network environment, frequent node fluctuations may cause the global network to be split into multiple subnets. According to the gossip neighbor exchange protocol, the node periodically eliminates neighbors that have not been updated for a long time. When the neighbor list is stable, the node reaches a consensus within the subnet. If the subnet size is small, it is easy for the malicious node to generate two famous witness events in the same round, resulting in a double spend transaction.
(4) As the system scale increases, each node has to handle a large number of gossip packages. Thus, the throughput rate of the system will decrease as the number of nodes increases.
Based on the above challenging issues, InterValue proposes the HashNet consensus mechanism. As shown in Figure 2, HashNet uses a layered-slice consensus mechanism. The nodes in the upper-level network are called full nodes and form a management committee. They are mainly responsible for the establishment of lower-level shards, lower-level shards, new local full-node joins, partial full-node exits, not participating in global consensus, and not participating in the record. Accounting, this avoids the risk of performance bottlenecks and greatly increases transaction throughput. The nodes in the lower level network are called local full nodes, forming shards, achieving consensus within the slice, and using suffix matching to ensure that each transaction is processed only by a specific shard, avoiding double payments. At the same time, the on-chip consensus results are synchronized between the chips through an asynchronous mechanism so that each local full node has a global ledger.
Figure 2: HashNet Overview Based on Two-layer Gossip Topology
Advantages of the HashNet consensus mechanism are:
(1) The full node and the local full node have strong stability and processing capability so that they can avoid the problem that HashGraph cannot reach a consensus for a long time. Meanwhile, these full nodes can also avoid the problem that the whole network is split into multiple subnets.
2) Compared with other fragmented blockchain projects, HashNet adopts distributed asynchronous fragmentation reorganization, completely breaking the centralized fragmentation reorganization mechanism, and greatly improving the security during reorganization.
3) The transaction consensus does not require the participation of upper-level nodes. The transaction is achieved very quickly (the transaction confirmation time only depends on the number of on-chip nodes). More importantly, the transaction throughput, ie, TPS, is proportional to the number of lower-level segments, ie, points. The greater the number of slices, the higher the TPS.
4) On-chip and inter-chip nodes are peer-to-peer, which avoids potential centralization and performance bottlenecks.
In the v1.0, InterValue uses a two-layer consensus mechanism that combines the basic DAG consensus with the BA-VRF consensus. From v2.0, the basic DAG consensus of InterValue will be replaced by HashNet. Thus, the consensus mechanism of InterValue will be the combination of HashNet and the BA-VRF. DAG is no longer required to worry about security. Its excellent performance has also been fully realized. Let us look forward to the revolutionary progress that InterValue’s HashNet consensus mechanism brings to blockchain technology.