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

chore: Add signature to /solve response #3045

Open
sunce86 opened this issue Oct 9, 2024 · 1 comment
Open

chore: Add signature to /solve response #3045

sunce86 opened this issue Oct 9, 2024 · 1 comment
Assignees
Labels
E:7.1 Ext. solvers operating driver See https://github.com/cowprotocol/pm/issues/57 for details

Comments

@sunce86
Copy link
Contributor

sunce86 commented Oct 9, 2024

Background

As somewhat sensitive, will keep the issue description on slack: https://cowservices.slack.com/archives/C0375NV72SC/p1727269558467189

Bottom line, driver should use submission private key to sign arbitrary message (let's figure out what to sign, maybe each solution id?) and send the signature as part of the /solve response.

Driver will, then, be required to use the same submission key to execute submission if chosen as a winner.

Autopilot is supposed to extract the address from the signature and save it as a submission address to database. Later, circuit breaker will check if the settled solution is settled using the same address as extracted from the signature.

The alternative is using autopilot config to list the solver addressed #2780
I think we should use the signing as somewhat more future proof solution.

Details

All types of signatures should be supported. Meaning, driver should be allowed to settle solutions both with EOA and smart contract signer.

@sunce86 sunce86 added the E:7.1 Ext. solvers operating driver See https://github.com/cowprotocol/pm/issues/57 for details label Oct 9, 2024
@m-lord-renkse m-lord-renkse self-assigned this Oct 9, 2024
@sunce86
Copy link
Contributor Author

sunce86 commented Oct 14, 2024

For the purpose of proving that the solver is actually the owner of a submission address, it's irrelevant what is signed, as long as it's something deterministic and agreed on by both driver and autopilot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
E:7.1 Ext. solvers operating driver See https://github.com/cowprotocol/pm/issues/57 for details
Projects
None yet
Development

No branches or pull requests

2 participants