It is impossible for a user to wait exactly the correctamount for the first two steps of the above scenario. Thus,Algorand estimates these quantities (λstepvar, the variancein how long it takes different users to finish the last stepofBA⋆, andλpriority, the time taken to gossip the priorityand proof message), and waits forλstepvar+λprioritytimeto identify the highest priority. §10 experimentally showsthat these parameters are, conservatively, 5 seconds each.As mentioned above, Algorand would remain safe even ifthese estimates were inaccurate.Malicious proposers.Even if some block proposers aremalicious, the worst-case scenario is that they trick differentAlgorand users into initializingBA⋆with different blocks.This could in turn cause Algorand to reach consensus onan empty block, and possibly take additional steps in doingso. However, it turns out that even this scenario is relativelyunlikely. In particular, if the adversary isnotthe highest pri-ority proposer in a round, then the highest priority proposerwill gossip a consistent version of their block to all users.If the adversary is the highest priority proposer in a round,they can propose the empty block, and thus prevent any realtransactions from being confirmed. However, this happenswith probability of at most1−h, by Algorand’s assumptionthat at leasth>2/3of the weighted user are honest.7BA⋆The execution ofBA⋆consists of two phases. In the firstphase,BA⋆reduces the problem of agreeing on a block toagreement on one of two options. In the second phase,BA⋆reaches agreement on one of these options: either agreeingon a proposed block, or agreeing on an empty block.7
Each phase consists of several interactivesteps; the firstphase always takes two steps, and the second phase takestwo steps if the highest-priority block proposer was honest(sent the same block to all users), and as we show in ouranalysis an expected 11 steps in the worst case of a malicioushighest-priority proposer colluding with a large fraction ofcommittee participants at every step.In each step, every committee member casts a vote forsome value, and all users count the votes. Users that receivemore than a threshold of votes for some value will votefor that value in the next step (if selected as a committeemember). If the users do not receive enough votes for anyvalue, they time out, and their choice of vote for the nextstep is determined by the step number.In the common case, when the network is strongly syn-chronous and the highest-priority block proposer was hon-est,BA⋆reachesfinalconsensus by using its final step toconfirm that there cannot be any other agreed-upon blockin the same round. Otherwise,BA⋆may declaretentativeconsensus if it cannot confirm the absence of other blocksdue to possible network asynchrony.
As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.
Temple University Fox School of Business ‘17, Course Hero Intern
I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.
University of Pennsylvania ‘17, Course Hero Intern
The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.
Tulane University ‘16, Course Hero Intern
Stuck? We have tutors online 24/7 who can help you get unstuck.
Ask Expert Tutors
You can ask
You can ask
You can ask
(will expire )