mirror of https://github.com/poanetwork/hbbft.git
added a TODO file and changed indentation in the .proto file
This commit is contained in:
parent
5215156ec5
commit
2205f9083e
|
@ -0,0 +1,12 @@
|
|||
TODO
|
||||
====
|
||||
|
||||
* Fix the inappropriate use of Common Coin in the Byzantine Agreement protocol
|
||||
|
||||
This bug is explained in https://github.com/amiller/HoneyBadgerBFT/issues/59
|
||||
where a solution is suggested introducing an additional type of message,
|
||||
CONF.
|
||||
|
||||
There may be alternative solutions, such as using a different Byzantine
|
||||
Agreement protocol altogether, for example,
|
||||
https://people.csail.mit.edu/silvio/Selected%20Scientific%20Papers/Distributed%20Computation/BYZANTYNE%20AGREEMENT%20MADE%20TRIVIAL.pdf
|
|
@ -1,53 +1,52 @@
|
|||
syntax = "proto3";
|
||||
|
||||
message MessageProto {
|
||||
oneof payload {
|
||||
BroadcastProto broadcast = 1;
|
||||
AgreementProto agreement = 2;
|
||||
}
|
||||
oneof payload {
|
||||
BroadcastProto broadcast = 1;
|
||||
AgreementProto agreement = 2;
|
||||
}
|
||||
}
|
||||
|
||||
message BroadcastProto {
|
||||
oneof payload {
|
||||
ValueProto value = 1;
|
||||
EchoProto echo = 2;
|
||||
ReadyProto ready = 3;
|
||||
}
|
||||
oneof payload {
|
||||
ValueProto value = 1;
|
||||
EchoProto echo = 2;
|
||||
ReadyProto ready = 3;
|
||||
}
|
||||
}
|
||||
|
||||
message ValueProto {
|
||||
ProofProto proof = 1;
|
||||
ProofProto proof = 1;
|
||||
}
|
||||
|
||||
message EchoProto {
|
||||
ProofProto proof = 1;
|
||||
ProofProto proof = 1;
|
||||
}
|
||||
|
||||
message ReadyProto {
|
||||
bytes root_hash = 1;
|
||||
bytes root_hash = 1;
|
||||
}
|
||||
|
||||
message ProofProto {
|
||||
bytes root_hash = 1;
|
||||
LemmaProto lemma = 2;
|
||||
bytes value = 3;
|
||||
bytes root_hash = 1;
|
||||
LemmaProto lemma = 2;
|
||||
bytes value = 3;
|
||||
}
|
||||
|
||||
message LemmaProto {
|
||||
bytes node_hash = 1;
|
||||
LemmaProto sub_lemma = 2;
|
||||
|
||||
oneof sibling_hash {
|
||||
bytes left_sibling_hash = 3;
|
||||
bytes right_sibling_hash = 4;
|
||||
}
|
||||
bytes node_hash = 1;
|
||||
LemmaProto sub_lemma = 2;
|
||||
|
||||
oneof sibling_hash {
|
||||
bytes left_sibling_hash = 3;
|
||||
bytes right_sibling_hash = 4;
|
||||
}
|
||||
}
|
||||
|
||||
message AgreementProto {
|
||||
uint32 epoch = 1;
|
||||
oneof payload {
|
||||
bool bval = 2;
|
||||
bool aux = 3;
|
||||
}
|
||||
uint32 epoch = 1;
|
||||
oneof payload {
|
||||
bool bval = 2;
|
||||
bool aux = 3;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue