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

Improve analyze participation #855

Closed
dB2510 opened this issue Jul 26, 2022 · 0 comments · Fixed by #971
Closed

Improve analyze participation #855

dB2510 opened this issue Jul 26, 2022 · 0 comments · Fixed by #971
Assignees
Labels
enhancement New feature or request

Comments

@dB2510
Copy link
Contributor

dB2510 commented Jul 26, 2022

Problem to be solved

Currently tracker component analyzes participation based on share indexes obtained from various events. We assume those events to be valid. However, there are some possibilities where we get events from byzantine peers in the cluster. In that case tracker will report inaccurate results. Therefore we need to validate each event as part of analyze participation. Some examples of byzantine behavior:

  • Incorrect set of pubkeys provided by a peer.
  • Duty for which data has been sent by a peer wasn't scheduled/expected.

Proposed solution

Validation needs to be added as part of analyze participation to analyze events corresponding to each duty. Validations can be done in the following manner:

  • Validate if peer triggered event is expected or not:
    • If scheduler event present for that duty+pubkey, then it is expected
    • This is trivial DutyAttester, DutyProposer and DutyBuilderProposer.
    • Can use DutyProposer events to verify if DutyRandao is expected.
    • Cannot do this for validatorAPI triggered duties like DutyExit or DutyBuilderRegistration, so assume these are valid.
    • If event is unexpected, log a warn and increment unexpected events counter.

Note: This ticket assumes that partial signatures obtained from parsigex are valid which is part of #217 . This ticket should be closed after #217.

@dB2510 dB2510 added the enhancement New feature or request label Jul 26, 2022
@dB2510 dB2510 self-assigned this Jul 27, 2022
@dB2510 dB2510 linked a pull request Aug 16, 2022 that will close this issue
obol-bulldozer bot pushed a commit that referenced this issue Aug 16, 2022
Validates parSigEx events in analyseParticipation.

category: feature
ticket: #855
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants