## 5 The PoAP Consensus Mechanism
### The PoAP Consensus Process
#### 5.1.2 The Execution Stage of PoAP  
Within the committee, the top maintainers by weight act as proposer for consensus. Among the blocks proposed by multiple proposers, the block proposed by the proposer with the highest weight is selected as the target for this round of consensus execution, and blocks from other proposers are discarded. If the highest-weight proposer fails to propose  
Figure 3: The PoAP consensus process.  
a correct block, the next proposer in line takes over as the proposer of a new block. During the verification process, the committee votes on the proposed block, with the weight of each vote determined by the number of user votes received during the election stage. Figure 4 illustrates the four phases of the PoAP consensus execution stage.  
Propose Phase: The committee member with the highest weight is selected as the proposer, who is responsible for generating and proposing a new block and then broadcasting the block to all committee members.  
Prepare Phase: All committee members verify the proposed block, including verifying whether the proposer has the highest weight, and whether the block's signatures, transactions, and other information are correct. Upon successful verification, members cache the newly generated block and broadcast and prepare signature packets, while also verifying and storing the packets from other committee members. Within the designated period for this phase, if the collective voting weight for the same block exceeds two-thirds of the total voting weight, i.e., satisfies inequality (7), the committee member successfully moves to the next phase. Here, \(M\) represents the number of honest committee members, while \((Vote_{all}\times p)\) represents the total weight as determined by the cryptographic sortition algorithm.  
\[\sum_{i=1}^{M}weight_{i}>\frac{2}{3}(Vote_{all}\times p) \tag{7}\]  
Commit Phase: Following the prepare phase, members broadcast commit signature packets while verifying and storing the packets from other committee members. Similar to the prepare phase, within the designated period for this phase, if the collective voting weight for the same block exceeds two-thirds of the total weight, the block proposed in this round is successfully committed.  
Broadcast Phase: After the block is successfully committed by the committee members, it is broadcast to all the maintainers in the system. After the verification of the block, each maintainer appends this block to the blockchain and updates user state based on the newly generated block.  
Maintainers not selected through cryptographic sortition assume the role of validators, responsible for verifying the newly generated block, adding the correct block to the blockchain, and updating user data. Because the election transactions sent by users consume considerable network bandwidth resources, committee elections are conducted  
Figure 4: The execution stage of PoAP.  
periodically, with each elected committee responsible for the generation of blocks for the subsequent \(T_{election}\) length.  
Upon finality of the consensus, if the voting period for \(T_{election}\) blocks is reached, a new round of voting by all users commences to elect committee members for the next epoch. If a new voting epoch is not reached, cryptographic sortition is directly conducted within the committee to select the proposer for the next round of consensus, with each member eligible to serve as a proposer only once during each epoch. If the consensus fails, the committee is elected immediately.