# Improvement of Delegated Proof of Stake Consensus Mechanism Based on Vague Set and Node Impact Factor

^{*}

## Abstract

**:**

## 1. Introduction

- We not only use the fuzzy set method to calculate the voting rate of all nodes, but also preset the threshold value of the voting rate according to all possible results of voting, so as to achieve the optimization of the screening results.
- We fully consider the different identities of all nodes in the system and the situation that multiple nodes may have the same vote rate in (1), and propose a calculation formula based on the influence factor of the node itself, and further distinguish nodes with the same vote rate by comparing the actual voting situation corresponding to their first-order and second-order adjacent nodes.
- We comprehensively consider the dynamic changes in the scale and internal composition of the member node set. By regularly replacing the member nodes, the risk of the system being attacked is reduced and the security of the algorithm is improved.

## 2. Backgrounds and Related Works

#### 2.1. Fuzzy Value and Vague Set Theory

#### 2.2. Related Works

## 3. Overview of the Improved Algorithm

- Voting, calculating the fuzzy value of all nodes, and conducting the first-round screening according to the threshold $\lambda $;
- Judging the impact factor ${I}_{i}$, deciding whether a second-round screening is needed, and how to conduct it according to the result of the first-round screening;
- Adjusting the number and composition of the set of agent nodes adequately based on the total number of nodes in the network.

#### 3.1. Fuzzy Value and Its Threshold

- (1)
- Against votes must be less than one-third of the total votes (excluding its own vote);
- (2)
- The number of favor votes received by a node (excluding its own vote) must be higher than the number of against votes.

Algorithm 1: First-round screening |

Input: node $i$, fuzzy value ${\mu}_{A}{}^{F}\left(i\right)$, threshold $\lambda $ |

Output: alternative set $Y$ |

1: sort by ${\mu}_{A}{}^{F}\left(i\right)$ in descending order |

2: if ${\mu}_{A}{}^{F}\left(i\right)\ge \lambda $ then |

3: add $i$ to $Y$ |

4: end if |

5: return $Y$ |

**Abstaining from voting contains more than half of the total number of votes.**In general, the votes of all nodes are based on the good or bad historical behavior of other nodes. Therefore, in this case, taking any node in the system as an example, the final votes of the node may only have the following two situations: in favor votes more than abstentions and negative votes, and negative votes more than votes in favor and abstentions votes. Therefore, under normal circumstances, it is almost impossible for the abstention votes cast by nodes in the system to exceed more than half of the total votes. Once it happens, we first need to observe not only the vote type of each node but also the vote type of each node to preliminarily determine the malicious nodes in the system, and then, after determining the malicious nodes, we need to re-vote.**All**${\mu}_{{i}^{F}}$**are smaller than the threshold value**$\lambda $**.**Through simulation experiments and calculations, we found that this situation is often accompanied by the above-mentioned situations. Therefore, the response to this situation is the same as above.

#### 3.2. Node Impact Factor

#### 3.3. Second-Round Screening

Algorithm 2: Second-round screening |

Input: node $i$, alternative set $Y$, fuzzy value ${\mu}_{A}{}^{F}\left(i\right)$, total number $n$, impact factor ${I}_{i}$, voting matrix $V$ |

Output: member node-set $X$ |

1: if the number of elements in $Y$ larger than $n$ then |

2: sort all ${\mu}_{A}{}^{F}\left(i\right)$ in descending order and find the largest $n$ values |

3: if all these ${\mu}_{A}{}^{F}\left(i\right)$ are not the same then |

4: add the corresponding $i$ to $X$ |

5: else |

6: make further comparison |

6: add all corresponding $i$ to $X$ |

7: else |

8: combined ${I}_{i}$ with $V$ for further comparison of some of the remaining nodes |

9: add all corresponding $i$ to $X$ |

10: return $X$ |

#### 3.4. Dynamic Change of Agent Node-Set

#### 3.4.1. Dynamic Changes in the Composition of the Agent Node-Set

- (1)
- If all ${\mu}_{A}{}^{F}\left(i\right)$ in $X$ are larger than $\lambda $, we use the method of half replacement to replace half the number of nodes in $X$ randomly.
- (2)
- If there are ${\mu}_{A}{}^{F}\left(i\right)$ in $X$ smaller than $\lambda $, all the nodes which ${\mu}_{A}{}^{F}\left(i\right)<\lambda $ will be replaced, and the remaining nodes are still replaced by the method of half replacement.

#### 3.4.2. Dynamic Changes in the Size of the Agent Node-Set

- (1)
- $L=0$ represents the absence of an agent node in the network, and accordingly, the entire blockchain system will lack nodes for packaging transactions or information. In this circumstance, the blockchain will not function properly.
- (2)
- $L=T$ represents that all nodes in the whole system are member nodes, so the blockchain system is a public chain, which is truly decentralized. A more typical one is the PBFT consensus algorithm.
- (3)
- $L=1$ represents that there is only one agent node in the whole system, which means that this node handles all transactions or data packaging and block generation. It is a typical centralized system and contradicts the decentralized nature of blockchain.

## 4. Experiment Analysis

#### 4.1. Tie-Breaking Rate

#### 4.2. Interval Range of Agent Nodes

#### 4.3. Accuracy

#### 4.3.1. Simple Structures

- (1)
- From Figure 6a, we can see that as the number of nodes in the system keeps increasing, the performance of the proposed algorithm in this paper decreases mainly because, in star structures, nodes can be divided into two main categories which result in there being only two kinds of node impact factors. As the data in Table 6 shows, as the number of nodes increases, the probability of nodes having the same vote situation also increases. Therefore, neither the judgment by the impact factor of the node nor the voting of the nodes can achieve the effect of further differentiating the nodes;
- (2)
- Different from Figure 6a, the curve in Figure 6b shows an increasing trend mainly because the star structure can be seen as a combination of several tree structures. When the number of nodes is small, the impact factors in the star structure are similar. However, as the number of nodes increases, the tree structure becomes complex, and the difference in node impact factors becomes larger. Therefore, the algorithm will have better performance in large-scale systems;
- (3)
- From Figure 6c,d, we can see that the algorithm proposed in this paper has almost the same performance as the existing fuzzy value-based algorithm in the circular and linear structures. Because of the specificity of these two structures, all nodes in the two structures have precisely the same number of neighboring nodes, and the influence factors of the nodes are also precisely the same.

#### 4.3.2. Complex Structures

**The number of nodes.**Generally speaking, for a system with a certain network structure, the greater the number of nodes, the more complex the system is. Therefore, by comparing the experimental results of each graph horizontally, we can roughly conclude that in the same network structure, with the continuous increase of the number of nodes in the system, the performance of the algorithm has been improved to some extent. Because in the case of a certain network structure, with the continuous increase of the number of nodes with voting rights, using the method proposed in this paper will cause the probability of multiple nodes to have equal votes and will gradually decrease, there is a high probability that only one round of screening can be performed to finally determine the member node set. This not only reduces the communication complexity of the election, but also the more obvious distinction of the node reputation value can further ensure that the elected nodes will not affect the security of the system.**The structure of the network.**Generally speaking, in the case of a certain number of nodes in the network, the complexity of the network depends on its structure. By longitudinally comparing the experimental results of different types of network structures in Figure 10, it can be seen that the performance of the algorithm in complex structures is better than other simple structures. Because of the algorithm proposed in the article, the network structure does not directly affect the results of the first round of screening. However, the difference in structure will lead to different positions of each node and the number of adjacent nodes in the system, which will result in different node impact factors. In this case, even if multiple nodes have the same vote ratio in the first round of screening, the second round of screening can well screen out the remaining member nodes due to the different impact factors of the nodes.

#### 4.4. Fairness

## 5. Conclusions

## Author Contributions

## Funding

## Institutional Review Board Statement

## Informed Consent Statement

## Data Availability Statement

## Conflicts of Interest

## References

- Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2008. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 24 December 2021).
- Yuan, Y.; Wang, F.Y. Blockchain: The state of the art and future trends. Acta Autom. Sin.
**2016**, 42, 481–494. [Google Scholar] - Wang, H.; Qin, H.; Zhao, M.; Wei, X.; Shen, H.; Susilo, W. Blockchain-based fair payment smart contract for public cloud storage auditing. Inf. Sci.
**2020**, 519, 348–362. [Google Scholar] [CrossRef] - Gao, F.; Zhu, L.; Shen, M.; Sharif, K.; Wan, Z.; Ren, K. A blockchain-based privacy-preserving payment mechanism for vehicle-to-grid networks. IEEE Netw.
**2018**, 32, 184–192. [Google Scholar] [CrossRef] - Liu, M.; Yu, F.R.; Teng, Y.; Leung, V.C.M.; Song, M. Distributed resource allocation in blockchain-based video streaming systems with mobile edge computing. IEEE Trans. Wirel. Commun.
**2018**, 18, 695–708. [Google Scholar] [CrossRef] - Chen, Y.; Xie, H.; Lv, K.; Wei, S.; Hu, C. DEPLEST: A blockchain-based privacy-preserving distributed database toward user behaviors in social networks. Inf. Sci.
**2019**, 501, 100–117. [Google Scholar] [CrossRef] - Huang, J.; Kong, L.; Chen, G.; Wu, M.Y.; Liu, X.; Zeng, P. Towards secure industrial IoT: Blockchain system with credit-based consensus mechanism. IEEE Trans. Ind. Inform.
**2019**, 15, 3680–3689. [Google Scholar] [CrossRef] - Bamakan, S.M.H.; Motavali, A.; Bondarti, A.B. A survey of blockchain consensus algorithms performance evaluation criteria. Expert Syst. Appl.
**2020**, 154, 113385. [Google Scholar] [CrossRef] - Xiao, Y.; Zhang, N.; Lou, W.; Hou, Y.T. A survey of distributed consensus protocols for blockchain networks. IEEE Commun. Surv. Tutor.
**2020**, 22, 1432–1465. [Google Scholar] [CrossRef] [Green Version] - Dwork, C.; Naor, M. Pricing via processing or combatting junk mail. In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 16–20 August 1992; Springer: Berlin/Heidelberg, Germany, 1992. [Google Scholar]
- King, S.; Nadal, S. PPCoin: Peer-to-Peer Crypto-Currency with Proof-of-Stake. 2012. Available online: https://www.peercoin.net/whitepapers/peercoin-paper.pdf (accessed on 19 December 2021).
- Larimer, D. Delegated proof-of-stake (dpos). Bitshare Whitepaper
**2014**, 81, 85. [Google Scholar] - Zadeh, L.A. Fuzzy sets. Inf. Control
**1965**, 8, 338–353. [Google Scholar] [CrossRef] [Green Version] - Gau, W.L.; Buehrer, D.J. Vague sets. IEEE Trans. Syst. Man Cybern.
**1993**, 23, 610–614. [Google Scholar] [CrossRef] - Xu, G.; Liu, Y.; Khan, P.W. Improvement of the DPoS consensus mechanism in Blockchain based on vague sets. IEEE Trans. Ind. Inform.
**2019**, 16, 4252–4259. [Google Scholar] [CrossRef] - Zhu, L.B.; Yang, B.; Chen, J.D. The constructional research of fuzzy entropy of vague sets. J. Pattern Recognit. Artif. Intell.
**2006**, 19, 481–484. [Google Scholar] - Liu, Y.; Wang, G.; Feng, L. A general model for transforming vague sets into fuzzy sets. In Transactions on Computational Science II; Springer: Berlin/Heidelberg, Germany, 2008; pp. 133–144. [Google Scholar]
- Gao, S.; Yu, T.; Zhu, J.; Cai, W. T-PBFT: An EigenTrust-based practical Byzantine fault tolerance consensus algorithm. China Commun.
**2019**, 16, 111–123. [Google Scholar] [CrossRef] - Tong, W.; Dong, X.; Zheng, J. Trust-pbft: A peertrust-based practical byzantine consensus algorithm. In Proceedings of the 2019 International Conference on Networking and Network Applications (NaNA), Daegu, Korea, 10–13 October 2019. [Google Scholar]
- Zheng, X.; Feng, W.; Huang, M.; Feng, S. Optimization of PBFT algorithm based on improved C4. 5. Math. Probl. Eng.
**2021**, 2021, 5542078. [Google Scholar] [CrossRef] - Wang, Y.; Cai, S.; Lin, C.; Chen, Z.; Wang, T.; Gao, Z. Study of blockchains’s consensus mechanism based on credit. IEEE Access
**2019**, 7, 10224–10231. [Google Scholar] [CrossRef] - Zhu, S.; Zhang, Z.; Chen, L.; Chen, H.; Wang, Y. A PBFT consensus scheme with reputation value voting based on dynamic clustering. In Proceedings of the International Conference on Security and Privacy in Digital Economy, Quzhou, China, 30 October–1 November 2020; Springer: Singapore, 2020. [Google Scholar]
- Bustince, H.; Burillo, P. Vague sets are intuitionistic fuzzy sets. Fuzzy Sets Syst.
**1996**, 79, 403–405. [Google Scholar] [CrossRef] - Liu, Y.; Xu, G. Fixed degree of decentralization DPoS consensus mechanism in blockchain based on adjacency vote and the average fuzziness of vague value. Comput. Netw.
**2021**, 199, 108432. [Google Scholar] [CrossRef] - Zhu, J.; Wang, L. Identifying influential nodes in complex networks based on node itself and neighbor layer information. Symmetry
**2021**, 13, 1570. [Google Scholar] [CrossRef]

**Figure 1.**10 Node Topology (yellow nodes are the neighboring nodes of red nodes): (

**a**) model diagram used by Liu and (

**b**) actual node topology diagram.

**Figure 2.**The flow chart of the algorithm. $t,\mathsf{\Delta}t$ dictate the time when the entire system will be reconfigured; $T,\mathsf{\Delta}T$ dictate the time when the agent node set will be reconfigured; ${\mu}_{{A}^{F}},{\mu}_{{B}^{F}}$ dictate the nodes’ fuzzy value.

**Figure 6.**Comparison of accuracy of algorithms in (

**a**) star, (

**b**) tree, (

**c**) circular, and (

**d**) linear structures.

**Figure 7.**Structure after artificially adding the center point: (

**a**) improved circular structure and (

**b**) Improved linear structure.

**Figure 8.**Comparison of accuracy of algorithms in improved structures: (

**a**) improved circular structure and (

**b**) improved linear structure.

Number | Favor Vote | Abstention Vote | Against Vote | Vague Value | Fuzzy Value |
---|---|---|---|---|---|

2 | 6 | 4 | 1 | [6/11, 10/11] | 0.75862 |

7 | 5 | 5 | 1 | [5/11, 10/11] | 0.71429 |

6 | 3 | 6 | 2 | [3/11, 9/11] | 0.55556 |

9 | 3 | 6 | 2 | [3/11, 9/11] | 0.55556 |

5 | 4 | 2 | 5 | [4/11, 6/11] | 0.45161 |

3 | 3 | 4 | 4 | [3/11, 7/11] | 0.44828 |

4 | 3 | 3 | 5 | [3/11, 6/11] | 0.4 |

11 | 3 | 3 | 5 | [3/11, 6/11] | 0.4 |

12 | 3 | 3 | 5 | [3/11, 6/11] | 0.4 |

8 | 2 | 5 | 4 | [2/11, 7/11] | 0.39286 |

1 | 3 | 2 | 6 | [3/11, 5/11] | 0.35484 |

10 | 0 | 4 | 7 | [0, 4/11] | 0.13793 |

$\mathbf{Node}\left(\mathit{i}\right)$ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|

${k}_{i}$ | 1 | 1 | 4 | 5 | 4 | 4 | 1 | 4 | 3 | 2 | 4 | 1 |

$\mathbf{Node}\left(\mathit{i}\right)$ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|---|---|---|---|---|

${I}_{i}$ | 10.5 | 12 | 19 | 18 | 22 | 22 | 12 | 22 | 17 | 11.5 | 16 | 8.5 |

Number | First-Order Adjacency Node | Second-Order Adjacency Node | ||
---|---|---|---|---|

Favor | Against | Favor | Against | |

6 | 3, 11 | 5 | 12 | 4 |

9 | 10, 11 | - | - | 6 |

Node Number | 1 | 3 | 4 | 5 | 11 | 12 |
---|---|---|---|---|---|---|

$P$ | −17 | −5 | 7 | −15 | −51 | 15 |

Number of Nodes | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|

No tie-breaking | 45 | 21 | 22 | 20 | 14 | 11 | 12 |

Two-node tie-breaking | 38 | 70 | 48 | 37 | 37 | 29 | 27 |

Multi-node tie-breaking | 17 | 9 | 30 | 43 | 49 | 60 | 61 |

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |

© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Chen, R.; Wang, L.; Zhu, R.
Improvement of Delegated Proof of Stake Consensus Mechanism Based on Vague Set and Node Impact Factor. *Entropy* **2022**, *24*, 1013.
https://doi.org/10.3390/e24081013

**AMA Style**

Chen R, Wang L, Zhu R.
Improvement of Delegated Proof of Stake Consensus Mechanism Based on Vague Set and Node Impact Factor. *Entropy*. 2022; 24(8):1013.
https://doi.org/10.3390/e24081013

**Chicago/Turabian Style**

Chen, Runyu, Lunwen Wang, and Rangang Zhu.
2022. "Improvement of Delegated Proof of Stake Consensus Mechanism Based on Vague Set and Node Impact Factor" *Entropy* 24, no. 8: 1013.
https://doi.org/10.3390/e24081013