-
Notifications
You must be signed in to change notification settings - Fork 48
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
AVS DevX: Go SDK bls aggregation service doesn't support >1 quorum #261
Comments
Do you mean the operator might use different bls key for different quorum? so we need to track it separately |
No same key. Just that each quorum needs to be verified, and the way we do this is by combining each quorum's sig in a single pairing check. Basically this means the aggregator needs to add a signature to the global aggregate signature for every quorum an operator is part of. |
Will that need change following struct? Especially last 8 fields
|
Not sure any change needed from contract side too. https://github.com/Layr-Labs/eigenlayer-middleware/blob/dev/src/BLSSignatureChecker.sol#L92 |
I see, seems we don't have to change contract, but only disperse side need some adjustment, if we change sdk here |
Correct. I will make the changes. Shouldn’t change any of the structs, just their contents. It’s a pretty minimal change I feel. |
Created integration test framework in #277 .
|
Reopening as this was automatically closed by a PR which didn't actually implement this (only implemented integration test tooling to be able to test this feature once it's implemented). Sorry this is taking longer than planned.. getting sidetracked left and right. |
Implemented integration tests for `bls_aggregation` crate. Added 5 tests: - 2 quorums 1 operator (ignored) - 2 quorums 2 operators shared (ignored) - 1 quorum 1 operator - 1 quorum 2 operators - 2 quorums 2 operators separated Two cases are ignored as they are failing due to this bug: [bls aggregation service doesn't support >1 quorum](Layr-Labs/eigensdk-go#261) --------- Co-authored-by: supernovahs <[email protected]> Co-authored-by: Supernovahs.eth <[email protected]> Co-authored-by: Pablo Deymonnaz <[email protected]> Co-authored-by: ricomateo <[email protected]>
Describe the bug
bls aggregation needs to add signatures and g2 pubkeys for every quorum that an operator is part of, but it currently only adds them once: https://github.com/Layr-Labs/eigensdk-go/blob/4a204d0e0c9118babf1d74353f72c2b97009d7db/services/bls_aggregation/blsagg.go#L295C31-L295C46
We have unit tests for >1 quorums (eg here) but those were wrongly implemented, so will need to be fixed. An integration test with the contract would have picked this up.
To Reproduce
Expected behavior
Screenshots
OS details
Additional context
The text was updated successfully, but these errors were encountered: