2.1. Problem Statement
Distributed consensus has become a highly dynamic field [
21,
46,
47], and one of the typical problems that the consensus in blockchain-based peer-to-peer (P2P) networks is mainly aiming at solving can be modeled as an equivalent Byzantine Generals Problem (BGP) [
19,
48,
49]. The consensus of BGP is a matter of agreement, in which the generals of the Byzantine Empire must decide unanimously whether to attack an enemy. Considering that these generals are geographically separated, and there are traitors in the generals, the traitor can act arbitrarily to achieve the following goals: (1) to deceive certain generals to take offensive actions; (2) to promote a decision that is not agreed by all generals, such as when the generals do not want to attack to promote offensive operations; (3) to confuse certain generals so that they cannot make a correct decision. If the traitor achieves one of these goals, the outcome of any attack is doomed to failure, and only a fully agreed effort can be won.
Byzantine assumptions are models of the real world, and computers and networks may exhibit unpredictable behavior due to hardware errors, network congestion or disconnection, and malicious attacks [
50,
51,
52]. Byzantine fault-tolerant agreements must deal with these failures, and these agreements must also meet the specifications of the problem to be solved.
BGP problems can be modeled as a process of message communication among a group with n members, which can be formulated as , where A refers to the agreement with the true or false result, n refers to the total number of all members in the group, and m refers to the number of traitors in the group. In a binary system, we can model as the algebra model of the BGP. Matching with the BGP, generals in the group are modeled as those nodes which transmit messages as transmitters, while adjutants or lieutenants are modeled as the nodes which receive messages as receivers. If there is no interference between generals, no traitor blocks send a message (truncation) and falsify the message (forgery). Then, each general can send their message to every other general without error. If there are traitors in the group, how the group can still reach the correct truth is the core task of the solution to this problem.
In a practical P2P network, this type of traitor can be from not only fraud behaviors but also the faults in node or network systems, such as communication, network delay, and errors. Therefore, to guarantee the reliability of the system with fault tolerance, we need to design a certain protocol to operate among the nodes to filter the errors or faults out for correct consensus. Meanwhile, practical blockchain-based consensus also requires fairness in equity among the members regardless of a gap in the capabilities of each node, verifiability that it is easy for the participant to verify the result and investment that the input and output of the election should be proportional. Therefore, how to solve BGP while meeting these requirements lies at the core of the design of strategies.
2.2. Proof-Based Methods
For BGP and similar problems equivalent to BGP, in blockchain-based systems, there is a type of solution named Proof-Based Consensus (PBC), and the typical examples include Proof of Work (PoW [
53,
54,
55]), Proof of Stake (PoS [
56,
57]), Proof of Authority (PoA [
58]), and so on.
PoW serves as one of the most fundamental strategies for distributed consensus with many applications in blockchain-based networks [
54,
59,
60]. Based on network propagation, different block sizes, block generation intervals, information dissemination mechanisms, and other factors, a quantitative framework is proposed in [
55] to analyze the security and performance of various consensus and network parameters of a PoW blockchain. Meaning further study of trade-offs between performance and safety regulations. PoW provides an important solution to the BGP crux for distributed consensus by the hash puzzle for this proof, which is hard to perform but easy to check. Although it serves as one of the most mature solutions in blockchain applications, this strategy consumes a lot of computing power for only hash puzzles along with its poor performance scalability [
61], which renders it to be considered a lowly efficient solution.
To save computing power and energy, some other algorithms are proposed to improve the mechanism and efficiency, such as Proof of Burn (PoB [
62]) and Proof of Stake (PoS [
63,
64]). PoB is an incineration certification mechanism. It is a commitment to vote for who has the leadership of the network by burning the tokens in their hands. PoB is a method of distributed consensus. Although essentially a variant of PoW, PoB’s proof is to win the right to speak through existing value consumption rather than mining to generate value.
PoS [
63,
64] is another one of the strategies proposed to improve PoW with many corresponding applications as well [
56,
65]. PoS can improve scalability while reducing computing power consumption with flexible options to organize the services [
66,
67]. However, the discussions and suspensions of doubt about the PoS protocol still exist because of security and mechanism reliability issues [
68,
69]. Considering the attacks (e.g., nothing at stake attack [
70,
71,
72], long-range attacks [
73,
74,
75], etc.), one type of work on this issue is to improve the security of the PoS-based network [
57,
76], which provides an idea of the solution of applying Trusted Execution Environments (TEEs) to enforce security. Meanwhile, the security and reliability can also be improved by, for example, using a trusted beacon, authorized endorsers, and common prefix [
77]; therefore, the protocol can be organized, and the reliability can be enhanced by flexibly applying various supplementary options.
In order to further save energy and increase the speed to adapt to high-traffic network transactions, PoS can also be extended to, for example, delegated PoS (DPoS [
78,
79]) and Proof of Activity (PoAc [
80]), in which DPoS allows each person holding a bit stock to vote to simplify the network into a connection consisting of super nodes or pools generated after authorization, thereby improving efficiency by reducing network complexity, while PoAc extended PoW with stakeholders to enable the network the PoS-based economic incentives in charge of securing the network.
Different from PoS, Proof of Authority (PoA [
81]) also provides a solution to improve the performance of distributed consensus in a blockchain with the consideration of security and efficiency, in which the miner was selected as the certifier of the block by virtue of the personal credit rather than the cryptocurrency of the mortgage or computing power. Therefore, the PoA blockchain is protected by a trusted authentication node under a scalable structure. However, it acts potentially as a centralization. To enforce the decentralization, combining PoW with PoA can be a solution [
82] for the balance of efficiency and decentralization.
To improve the performance of decentralization with more fairness and security, Proof of Luck (PoL [
83,
84]) provides a lottery-like mechanism with specific hardware based on, for example, SGX (Software Guard Extensions [
85,
86,
87]) to guarantee security and fairness. Similarly, Proof of Elapsed Time (PoET [
88,
89]) also applied SGX to guarantee fairness, in which each node obtains a random wait time (elapsed time) through trusted operations based on the security hardware (SGX) from an enclave before releasing the block data, and the node with the shortest waiting time will be the first to publish the block data. The advantage of PoET is that participation is low. Because more people can easily join and then achieve decentralization. For all participants, it is easier to verify that the leader is legally elected. The cost of the controller’s electoral process is proportional to the value gained from it. Although the cost of PoET is low, specific hardware must be used, so the agreement will not apply to the public blockchain until it is adopted on a large scale.
Proof of Capacity or Proof of Space (PoC or PoS [
90,
91,
92]) replaces the hash puzzle’s computing power by actually using the hard disk space, thus improving the inefficiency and waste of PoW. The network will eventually choose which miner will be the node of the packaged block, and the probability depends on the percentage of storage space that the miner takes out of the entire network. One of the benefits of using this space-proven algorithm is that it can equalize the ability to mine. To further improve security, Proof of Space and Time (PoCT [
93,
94]) introduces a layer of time proofing mechanism based on PoC, using a dedicated time server to verify the time, and detect the time of the server in the interval between each two mining periods, so that in every two blocks, a time workload is added between them to prevent large computing resource owners from disrupting the network by repeating PoC.
2.3. Byzantine Fault-Tolerant Methods
There are also many other protocols that are available to solve BGP, such as PBFT [
51,
52], RPCA [
95,
96], Distributed-Acyclic-Graph-Based Consensus (DAG/Tangle [
97]), Federated Byzantine Agreement (FBA [
98,
99]), etc., which are different from PBC methods. These methods can be named Byzantine Fault-Tolerant (BFT) methods. The PBC method mainly emphasizes the proof, while the BFT methods stem from the flow, structure, and order of communication under a BGP puzzle.
According to the problem modeling of BGP, it can be seen that the model is usually characterized by the elasticity m, which represents the number of error processes the algorithm can handle. The greater the m is, the more robust the protocol is. It can be seen that m has an upper bound, and the rough upper bound is . However, how to find the exact tolerance bound, that with a higher upper bound, is the crux that most protocols are directed at.
One of the most famous protocols is oral messages (OM) [
100,
101,
102], which is mainly about message delivery with the consistent delivery of verbal messages. If there are
m treason generals, the total number of generals must be
or more, which is the protocol for converging to a decisive agreement.
The OM algorithm is widely used in consensus process design. The solution provided by the OM protocol for the Byzantine general problem can actually be modeled as a probability problem determined by the number of people. The fault tolerance of the OM can be formulated as:
It can be seen that the upper bound of the fault tolerance is around , while ideally, the upper bound is 50%. Therefore, based on the OM, many blockchain consensus processes are designed based on or impacted by its theory to pursue the ideal upper bound of fault tolerance. As a practical implementation of the BFT, PBFT can be used to implement fault-tolerant distributed systems in practice. In the case of PBFT, each node sends its proposed changes to the state of the system to the other nodes, which then verify the proposed changes and reach a consensus on whether to accept or reject them. This process ensures that the system remains consistent and correct, even in the presence of faulty or malicious nodes.
PBFT is designed to be resilient to Byzantine failures, which are errors or malicious attacks that can cause nodes in a network to behave in an arbitrary or unpredictable manner. PBFT uses a combination of cryptography and communication protocols to ensure that nodes in a network can reach consensus even in the presence of a Byzantine failure. High performance. PBFT is typically faster and more efficient than other consensus protocols, such as Proof of Work (PoW) or Proof of Stake (PoS), because it does not require nodes to perform expensive computational tasks or wait for a certain number of blocks to be mined. This makes PBFT ideal for systems that require high levels of scalability and throughput. In terms of simplifying governance, PBFT does not require a complex governance structure because the nodes in the network can reach a consensus through direct communication with each other. This can make PBFT-based systems easier to manage and operate than systems that rely on more complex consensus protocols.
PBFT is typically more centralized than other consensus protocols because it relies on a small number of nodes to reach consensus and validate transactions. This can make PBFT-based systems less decentralized and less resilient to malicious attacks or failures. Limited scalability. While PBFT is typically faster and more efficient than other consensus protocols, it still has limited scalability because the number of nodes in the network and transaction rates can affect system performance. Complex implementation. PBFT can be more complex to implement and maintain than other consensus protocols, as it requires the use of advanced cryptography and communication protocols.
Compared to BFT, PBFT is more efficient as it uses a specific protocol to reach a consensus among the nodes in the system and requires less information to be exchanged among them, which makes PBFT more efficient in terms of communication overhead and reduces the time it takes to reach a consensus in the system.
To achieve the ideal fault tolerance, PBC can be used as a complementary option because the introduction of the proof enables systems to break through the threshold of traitors constrained by communication. It can be seen that most of the PBC mechanisms are derived or expanded from some fundamental PBC; for example, PoC can be seen as an expansion of PoW by replacing work of computing power with capacity for storage, also deriving PoCT; PoET mechanism is similar to PoW, but consumes much less power based on specific technology SGX (Software Guard Extensions [
85,
86,
87]), which is similar to PoL; PoAc extends the PoW via PoS [
80] while the PoB mechanism generates new blocks by combining the idea of PoW for mining but with lower computing power and PoS for claiming the stake by burning the coin to allocate the opportunity to perform the work.
Considering the diverse extensions derived from the same sources, in this paper, we mainly focus on the typical proof-based consensus, including PoW, PoS, PoA, and PoL, and discuss these fundamental strategies based on their principles and mechanisms. To narrow the issues down, the primary issues are concentrated on that how likely the whole network will take a value as a consensus, modeling and analyzing the characteristics impacted by the principles and mechanism.