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

Payload dispersal must check selected RBN, to see if a new cert verifier contract exists #1303

Open
litt3 opened this issue Feb 21, 2025 · 0 comments
Assignees

Comments

@litt3
Copy link
Contributor

litt3 commented Feb 21, 2025

Problem

  • Current payload dispersal logic uses a single cert verifier address to get quorums prior to dispersal, and also to verify the eigenDACert after dispersal
  • The issue is that once there is a potential for dynamic cert verifier address changes, the cert verifier address input parameter is only a guess on the part of the dispersing client, for which cert verifier address is the correct one for the new blob. It's not possible to know for sure which cert verifier address is correct until the disperser has chosen an RBN

Solution

  • Instead of passing in a cert verifier address to SendPayload, the dispersing client should pass in a callback, which knows how to fetch the correct cert.
  • The callback will be invoked once prior to dispersal, to yield a cert verifier address from which required quorums may be fetched
  • The callback will be invoked once after dispersal, to yield the cert verifier address which is guaranteed to correspond to the RBN chosen by the disperser
  • If there is a discrepancy between the two cert verifier addresses used, this isn't a problem:
    • If the quorums fetched from the first address yield a blob which is verifiable with the new cert verifier address, then everything will work smoothly
    • If the quorums fetched from the first address yield a blob which isn't verifiable with the new cert verifier address, then the dispersing client will become aware of the failure prior to publicizing the resulting eigenDACert, and will be able to re-attempt dispersal using the correct cert verifier address
@litt3 litt3 self-assigned this Feb 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant