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

feat: custom pubkeys inmemory service #194

Merged
merged 14 commits into from
Jul 24, 2024
Merged

feat: custom pubkeys inmemory service #194

merged 14 commits into from
Jul 24, 2024

Conversation

taco-paco
Copy link
Contributor

No description provided.

@taco-paco taco-paco marked this pull request as ready for review May 29, 2024 09:10
Copy link
Contributor

@emlautarom1 emlautarom1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would appreciate some context on why this feature is necessary. The branch name suggests it has something to do with DoS but it's not clear from the code

aggregator/operator_registrations_inmemory.go Outdated Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Outdated Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Outdated Show resolved Hide resolved
@Hyodar
Copy link
Contributor

Hyodar commented May 29, 2024

Jumping in the conversation - still need to review it though, most likely not going to be able to do it today. The thing here is currently the aggregator makes a bunch of RPC calls to initialize a message even though the signature present is not from a registered operator, which opens a quite big DOS window. So, the idea is one of the most basic mitigations is we validate the signature before anything else - and the OperatorPubkeys service from eigensdk is not flexible enough for that with how messaging is being done currently.

Copy link
Contributor

@Hyodar Hyodar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall LGTM, just still one or two changes I think are considerable enough to require a quick look again.

aggregator/operator_registrations_inmemory.go Outdated Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Outdated Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Show resolved Hide resolved
aggregator/rpc_server.go Outdated Show resolved Hide resolved
aggregator/rpc_server_test.go Outdated Show resolved Hide resolved
@Hyodar Hyodar linked an issue Jun 5, 2024 that may be closed by this pull request
Copy link
Contributor

@emlautarom1 emlautarom1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

aggregator/rpc_server.go Outdated Show resolved Hide resolved
aggregator/rpc_server_test.go Outdated Show resolved Hide resolved
aggregator/operator_registrations_inmemory.go Show resolved Hide resolved
Copy link
Contributor

@Hyodar Hyodar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll still ask you to check and self-resolve my comments, but not blocking anymore.

@Hyodar
Copy link
Contributor

Hyodar commented Jul 1, 2024

Can we merge this soon? @emlautarom1 @taco-paco

@emlautarom1
Copy link
Contributor

LGTM. Just need to solve the merge conflicts + resolve discussions.

@Hyodar Hyodar requested a review from emlautarom1 July 3, 2024 15:06
@Hyodar Hyodar merged commit 3543752 into main Jul 24, 2024
5 checks passed
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

Successfully merging this pull request may close these issues.

Separate rest_server & rpc_server from Aggregator
3 participants