Network
- What assumptions do we need Waku to fulfill?
- What is our expected minimum number of nodes within the network?
Tradeoffs
- I think the main clear disadvantage of such a scheme is the added latency of the multiple layers.
- How would you compare Aptos and Carnot?
Data Distribution
- How much failure rate of erasure code transmission are we expecting. Basically, what are the EC coding parameters that we expect to be sending such that we have some failure rate of transmission? Has that been looked into?
- How much data should a given block be. Are there limits on this and if so, what are they and what do they depend on?
Signatures
- Who sends the signatures up from a given committee? Does that have any leadered power within the committee?
Byzantine Behavior
- Can we also consider a flavor that adds attestation/attribution to misbehaving nodes? That will come at a price but there might be a set of use cases which would like to have lower performance with strong attribution. Not saying that it must be part of the initial design, but can be think-through/added later.
- Also, how do you reward online validators / punish offline ones if you can’t prove at the block level that someone attested or not?
- Doesn’t having randomly distributed malicious nodes (say there is a 20%) increase the odds that over a third of a committee end up being from those malicious ones? It seems intuitive: since a 20% at the global scale is always <1/3, but when randomly distributed there is always non-zero chance they end up in a single group, thus affecting liveness more and more the closer we get to that global 1/3. Consequently, if I’m understanding the algorithm correctly, it would have worse liveness guarantees that classical pBFT, say with a randomly-selected commitee from the total set.
- What happens in Carnot when one committee is taken over by >1/3 intra-comm byzantine nodes?
Synchronicity
- How to guarantee synchronicity. In particular how to avoid that in a big network different nodes see a proposal with 2c+1 votes but different votes and thus different random seed - Giacomo
- That’s a timeout? How does this work exactly without timing assumptions? Trying to find this in the document -Alvaro
- How does the timing assumption differ from Ethereum