Casper CBC: implementation research
questions
Unknown messages are "extracted" from justifications?
casper-cbc, casper-cbc-js
justifications are represented as the hashes of the latest message from each validator, and messages are justified and stored to receiver only when thery arrived, so there are no way to extract unknown messages from justifications.
How efficiently check whether some data is valid message or valid state?
comparison
estimate
safety oracle
verify message
When sending or receiving message, each validator checks that
the estimate given matches the estimate we would generate from the same justification.
the same sender was not referenced twice in the same set of justifications.
the history list of the received message matches the already known message list (e.g. no fork)
When sending or receiving message, each validator and global state do that
If at least one of the justification of received message A is not actually justified, the message is marked as pending.
After that, If that validator receives the message B which is included in the justification of pending message A, both A and B are justified.
? Each Message has sequence_number added by validator, and if the sequence number of justified message is larger than existing latest messages’ from the same sender, the message is added to latest messages.
When sending or receiving message, global state checks that
...
memo
sequence numbers of message
pending message
global view?
other validator's information?
timing for block proposal?
slot, round?
refs
Issues
references