3 ms·
I mean you can just read Silvio’s paper: https://arxiv.org/abs/1607.01341 https://arxiv.org/abs/1607.01341 My understanding on how the accounts are chosen is t
by josh2600 6y ago
I mean you can just read Silvio’s paper: https://arxiv.org/abs/1607.01341 https://arxiv.org/abs/1607.01341
My understanding on how the accounts are chosen is that they have a global list of users that have opted in to validate and they pick one person at random to create the block and then 1000 people at random to validate it. If you get 501 validations back, then you have a block.
The attack I always thought about but never got an answer to was: what if you pay for the lottery winners to collude? Certainly if you offer some amount of money for the block producers only on the condition that you get 501+the block creator in a given block you could probably sign a bad block, right? It’s unclear what the consequences of that would be if the block’s signatures still have to be valid but you could maybe craft something bad.
I don’t know, all of this thinking is from when I first talked to Silvio at IACR so it’s been a long time. It’s possible all of my knowledge is way out of date or wrong.
Anyways, I wish them luck, they’ve certainly got a big thing going.
- quantum_state 6y agoI am very curious to know about this as well ... hope someone in the know would provide some clue ... :-)
- vessenes 6y agoGenerally Bitcoin has solved this by social and denominative means — definitionally if a majority of miners sign a stream of blocks that ‘break the rules’ then, that is the truth and the miners have chosen new rules. Socially if this is signing a block with a bug, miners have historically colluded to rewrite history. If on the other hand the new blocks embed protocol changes, then we move to names: is it still ‘Bitcoin’? If not then there is a hard fork with a new community. This is the BCH, BSV and ETC story. The answer to your question about Algorand is probably similar, unless the scheme has some novel mechanism to prune hard forks, or a way to radically include them.
- forgotmypw17 6y agoI saw Jing Chen present in SF, and address this question. It is very difficult to buy votes on the network because you don't know who the next voter will be. If I understand correctly, the voter is chosen based on pseudo-random hash prefix?
- josh2600 6y agoThis is just a monetary incentive problem. It doesn't matter if the voters are random if the reward for fraud is high enough to incentivize bad behavior.
- brianolson 6y agoThe sortition process isn't quite like centrally listing everyone and picking from the list. The Verifiable Random Function (VRF) allows you to know "I was picked!" and create a short quickly verifiable certificate to prove that to someone else. Is a distributed fashion all the nodes run their own check to see if it's their turn to propose or verify and then take network actions based on that. Algorand allows more than one node to propose a block to make sure that >=1 nodes propose a block with high reliability. The distributed consensus process picks one block to be the block. The number of validators is more like 30-50 but that's a global tunable depending on what kind of system properties you want. Fewer can be faster and more can be more secure, but there's diminishing returns and 30-50 is so far secure-enough and quite fast (5 second round times on the current global network).