CPC G06F 16/275 (2019.01) [G06F 11/00 (2013.01); G06F 16/24535 (2019.01); G06F 16/27 (2019.01); H04L 9/50 (2022.05)] | 21 Claims |
15. A computer system acting as a leader replica in a distributed computing system comprising n replicas, the computer system comprising:
a processor; and
a non-transitory computer readable medium having stored thereon program code that, when executed, causes the processor to:
receive, for a current view number of a Byzantine fault tolerant (BFT) state machine replication (SMR) protocol running on the distributed computing system, n-f NEW-VIEW messages from other replicas in the n replicas, wherein f is a maximum number of replicas in the n replicas that may be faulty, and wherein each NEW-VIEW message in the n-f NEW-VIEW messages includes a null or non-null quorum certificate, a view delta value, and a signature share;
select a high quorum certificate from among the non-null quorum certificates in the n-f NEW-VIEW messages, the high quorum certificate being a quorum certificate associated with a highest view number;
convert the view delta value in each NEW-VIEW message into a bit vector, resulting in n-f bit vectors;
combine the n-f bit vectors into a bit vector set;
compute an aggregate signature by multiplying together the signatures shares in the n-f NEW-VIEW messages;
create a PREPARE message that includes the current view number, the high quorum certificate, the bit vector set, and the aggregate signature; and
broadcast the PREPARE message to the n replicas.
|