Parsec: discussion about Liveness proof

The issue with the synchrony assumption is related to the way the concrete coin is defined. The risk it presents is that a powerful adversary with the ability to control the scheduler could in theory stall consensus forever, even without owning more than the threshold of malicious nodes (>=1/3).
It is a mostly theoretical attack, but still: one better addressed for soundness of the proofs.
In the latest version of the white paper which is currently undergoing the academic review process, this flaw is addressed (with use of a rigorous common coin).
In the implementation, at the moment we use a predictable common coin, which is also flawed theoretically but not considered a high risk in practice at this stage. It will be replaced with the rigorous common coin in due time.
The predictable common coin is even worse in theory than the concrete coin, but it is really simple to code and helps maintain some invariants which are useful for tests, which is why we went from concrete coin to that while awaiting implementation of the proper common coin.

18 Likes