Scalability The communication costs for each user depend on the expected size

Scalability the communication costs for each user

This preview shows page 13 - 15 out of 18 pages.

Scalability. The communication costs for each user depend on the expected size of the committee and the number of block proposers, which Algorand sets through τ proposer , τ step , and τ final (independent of the number of users). As more users join, it takes a message longer to disseminate in the gossip network. Algorand’s gossip network forms a random network graph (each user connects to random peers). Our theoretical analysis suggests that almost all users will be part of one connected component in the graph, and that dis- semination time grows with the diameter of that component, which is logarithmic in the number of users [ 45 ]. Experi- 13
Image of page 13
ments confirm that Algorand’s performance is only slightly affected by more users (§10). Since our random graph uses a fixed number of peers, one potential concern is that it may contain disconnected components [ 22 ]. However, only a small fraction of users might end up in a disconnected component, which does not pose a problem for BA . Moreover, Algorand replaces gossip peers each round, which helps users recover from being possibly disconnected in a previous round. 9 IMPLEMENTATION We implemented a prototype of Algorand in C++, consist- ing of approximately 5,000 lines of code. We use the Boost ASIO library for networking. Signatures and VRFs are im- plemented over Curve 25519 [ 6 ], and we use SHA-256 for a hash function. We use the VRF outlined in Goldberg et al [28: §4]. In our implementation each user connects to 4 random peers, accepts incoming connections from other peers, and gossips messages to all of them. This gives us 8 peers on average. We currently provide each user with an “address book” file listing the IP address and port number for every user’s public key. In a real-world deployment we imagine users could gossip this information, signed by their keys, or distribute it via a public bulletin board. This naïve design of the gossip protocol in our prototype implementation is po- tentially susceptible to Sybil attacks, since it does not prevent an adversary from joining the gossip network with a large number of identities. We leave the problem of implementing a Sybil-resistant gossip network to future work. One difference between our implementation and the pseu- docode shown in §7 lies in the Binary BA () function. The pseudocode in Algorithm 8 votes in the next 3 steps after reaching consensus. For efficiency, our implementation in- stead looks back to the previous 3 steps before possibly re- turning consensus in a future step. This logic produces equiv- alent results but is more difficult to express in pseudocode. Figure 4 shows the parameters in our prototype of Algo- rand; we experimentally validate the timeout parameters in §10. h = 80% means that an adversary would need to control 20% of Algorand’s currency in order to create a fork. By analogy, in the US, the top 0.1% of people own about 20% of the wealth [ 41 ], so the richest 300,000 people would have to collude to create a fork.
Image of page 14
Image of page 15

You've reached the end of your free preview.

Want to read all 18 pages?

  • Spring '19
  • NA
  • hash function, Cryptographic hash function, Algorand

What students are saying

  • Left Quote Icon

    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.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    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.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    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.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern

Ask Expert Tutors You can ask You can ask ( soon) You can ask (will expire )
Answers in as fast as 15 minutes