Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Check for equivocations across messages received and justification #616

Closed
masih opened this issue Sep 2, 2024 · 2 comments
Closed

Check for equivocations across messages received and justification #616

masih opened this issue Sep 2, 2024 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@masih
Copy link
Member

masih commented Sep 2, 2024

Messages with justification contain evidence of prior messages (either COMMIT or PREPARE) from current or previous round. Currently it is possible for nodes to equivocate across them, e.g. send PREPARE for one value and change it in the justification of consecutive COMMIT.

Fix:

@masih masih added the bug Something isn't working label Sep 2, 2024
@masih masih self-assigned this Sep 2, 2024
@masih
Copy link
Member Author

masih commented Sep 4, 2024

Update: the fix for this is not exactly getting #342 done. It is actually a smaller subset of related changes. I will approach fixing this specific issue first before working on #342. Because, #342 would require revise of how justifications vs. individual message signatures are stored in the quorum state.

@masih
Copy link
Member Author

masih commented Sep 4, 2024

Discussed in standup: Although it is possible for a node to equivocate (and such messages are accepted by gpbft package), we decided to not fix this issue. Because:

  1. for this to be an effective attack vector the adversary must have at least 1/3 of the power, at which point there are other things to worry about, and
  2. we cannot censor equivocating justifications or the drop the original in favour of the one in justification because that would open up a new censorship attack vector where an adversary with enough power can cause a network partition.

@masih masih closed this as not planned Won't fix, can't repro, duplicate, stale Sep 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: Done
Development

No branches or pull requests

2 participants