- Li, A.; Wei, X.; He, Z. Robust Proof of Stake: A New Consensus Protocol for Sustainable Blockchain Systems. Sustainability 2020, 12, 2824.
Core Research Question
- How to design a Robust Proof-of-Stack (RPoS) protocol that outperforms mainstream consensus protocols such as PoW and PoS?
- This paper analyzes the characteristics and problems of the existing consensus protocols (in particular, PoW and PoS), and proposes a new protocol Robust Proof-of-Stack (RPoS) by improving the PoS protocol.
- The main improvement is that RPoS protocol uses the amount of coins instead of the age of coins to reduce the risk of coin age accumulation attack in the system. Another improvement is that RPoS protocol adds the maximum number of rollbacks, which can effectively prevent Nothing-At-Stake (N@S) attack which may occur in the system.
- Under a comparison framework, the authors showed that the RPoS equals or outperforms Proof of Work (PoW) protocol and Proof of Stake (PoS) protocol in three dimensions: energy consumption, robustness, and transaction processing speed.
- This paper first proposed a framework for consensus protocol comparison, which contains four aspects: (1) energy-saving, (2) robustness, (3) TPS (Transaction Per Second), and (4) trade request-satisfied ratio. The paper showed that the first three dimensions are often analyzed theoretically or qualitatively, while the last one can be quantitatively evaluated via simulation.
- The authors introduced the Proof of Work (PoW) and Proof of Stake (PoS) consensus protocols. Then, they presented a new Robust Proof of Stake (RPoS) consensus protocol based on PoS. The RPoS selects the data-writing node based on the coin balance, and others will accept the new data to keep the ledger consistent.
- The authors compared the differences between the three consensus protocols: PoW, PoS, and the proposed RPoS by using an agent-based blockchain model to simulate the impact of different consensus protocols and trade network topologies on the (4) aspect: trade request-satisfied ratio.
RPoS Consensus Protocol:
Dynamic coin age proposal. As there are too many mining nodes, the paper proposes the concept of “dynamic coin age”, which serves as a threshold. Only the node which meets this coin age condition (the coin age is defined in Formula (3)) can compete for the packing chance, and get the system reward.
Calculation of coin age. Before calculating the coin age of the node, the authors first computed the accumulation of time and the number of coins. Each block has a timestamp, and the accumulated time can be obtained by the timestamp, that is,
The amount of coins N(coin) is a current value. The newly added days are the result of the current block time D(t) and subtract the previous time D(t−1). The added days multiply the N(coin) and lead to a newly added coin age. Then, the authors get the final coin age Age(t) by the newly added coin age plus the previous coin age Age(t−1). After the blocks are packed, the node’s coin age Age(t) will be cleared.
RPoS mining process. The definition of the target value V(target) is a value that is dynamically adjusted according to the block production time, and is used to identify the difficulty of the block production; we define it in Formula (4).
where the variable Cont(block) is the content of the block, Var(nonce) is the variable of the nonce. The Age(t)∗gV(target), as a difficulty to this hash inequality, can be understood as a dynamic coin age.
Next, the paper explains that in PoS system, miners use their coin age to compete for packing chance. The node who reaches the coin age benchmark for block production will start packing and broadcast in the blockchain system. If the value of the Age(t)∗AV(target) is the highest coin age value in the entire network, and no nodes reach the block age for benchmark, then an internal stopwatch timer is started to accumulate time. When some nodes reach the coin age benchmark, then the block can be packed and broadcast. After a node generates a block, the coin age of this node is cleared and re-accumulated, and other nodes continue to accumulate coin age.
RPoS Consensus Protocol Implementation:
- The authors argue that when using coin age, there will be a risk of coin age accumulation attack in PoS system, so they proposed to remove the coin age and use the amount of coins for miner selection. In Figure 3, the authors shown the differences between the three consensus protocols: PoW, PoS, RPoS.
By the differences between PoW protocol and PoS protocol, the authors proves that the hash value of RPoS protocol satisfies the following formula,
The paper continues to explain that the final hash value of the competition process in RPoS is Hash(Cont(block),Var(nonce)). The target value V target changes dynamically according to the block production time of the parent block. In this inequality, the difficulty is the result of N(coin) * V(target). When the system retrieves which node in the system meets the inequality condition, this node will be selected and added to the packing node queue. In order to adjust the difficulty of system nodes competing for packing opportunities, the authors adjust the target value V target forward and reverse, then the number of miners who can get packing opportunities will change. The larger target value means a bigger difficulty value in the system, which will add more opportunity for the miners to get the packing chance in RPoS system. Similarly, the node, who with higher amount of coins Ncoin, is easier to get the chance to packing and produce blocks.
By adding the dynamic adjustment through V target and the maximum number of rollbacks, the authors say that is possible to limit the double benefit of nodes that cheat on different forks when N@S attack occurs. By the maximum number of rollbacks, the upgraded nodes are the maximum extent degraded and returned to the un-upgraded state, so that all data will return to the original state, then the fork is eliminated. The assignment of the specific maximum number of rollbacks needs to be adjusted according to the comprehensive situation of the system nodes’ cheating ability. The N@S attack can be recognized by verifying the rollback block, but when the rollback number of the block is greater than the maximum rollback number, the chain is not merged, so the cheating nodes can only perform “mining” on the original chain. If the block is verified, the number of rollbacks is less than the maximum rollback number, then the valid block is considered, the information is merged, and the subsequent transaction behavior is continued. In summary, the maximum number of rollbacks in RPoS system can effectively resist N@S attack.
Experimental results show that the proposed RPoS protocol leads to similar or better trade efficiency than PoW, and it is very energy-saving, robust against 51% attack, and efficient in terms of TPS. In other words, RPoS outperforms PoW in all the four features. Compared with PoS, RPoS is much more robust against the coin age accumulation attack and N@S attack, and it also has higher TPS than PoS. .
The averaged time-series data of trade request-satisfied ratio is illustrated in Figure 4. The simulation results at the final time step are presented in Table 3, in which the values are averaged across 100 samples, and the standard deviations are given in brackets.
Discussion & Key Takeaways
- Researchers have proposed many protocols and architectures, but the related studies on consensus protocols of the blockchain technology and their issues are scarce. Hence, this paper introduces the two consensus protocols (PoW, PoS) and their problems, followed by a section of a new RPoS consensus protocol.
- Aiming at the problems of coin age accumulation attack and N@S attack, this paper constructs a Robust Proof of Stake consensus protocol (RPoS), which attempts to tackle the problems of mainstream consensus protocols aforementioned.
- The proposed RPoS leads to similar or better trade efficiency than PoW, and it is very energy-saving, robust against 51% attack, and efficient in terms of TPS according to Table 2. In other words, RPoS outperforms PoW in all the four features. Compared with PoS, RPoS is much more robust against the coin age accumulation attack and N@S attack, and it also has higher TPS than PoS.
- RPoS is very suitable for building a robust digital economy distributed system.
- The authors suggest that RPoS is suitable in today’s blockchain system.
- An useful study to introduce the existing consensus protocols and their problems.