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

Extend Safe With Additional Signing Schemes #698

Open
nlordell opened this issue Nov 10, 2023 · 2 comments
Open

Extend Safe With Additional Signing Schemes #698

nlordell opened this issue Nov 10, 2023 · 2 comments

Comments

@nlordell
Copy link
Collaborator

nlordell commented Nov 10, 2023

Context / issue

It is currently possible to extend the Safe with additional signature schemes (such as P256 elliptic curve signatures) by deploying a signer contract per public key.

Proposed solution

Evaluate the required changes to the Safe account in order to support additional signing schemes internally without requiring a contract per public key. A possible solution would be for owners to not just be an address but also contain additional context.

While this proposal may not be the ideal way to implement it, it is worth investigating from a technical perspective how this could work, specifically geared towards the following two use-cases:

  • session keys
  • additional curves

Additional Context

This is not expected to change in Safe v1.5 as it would require a major overhaul in the signing logic which is out of scope for v1.5

@nlordell
Copy link
Collaborator Author

nlordell commented Nov 24, 2023

ZeroDev does something interesting by pulling signing logic using DELEGATECALL. (https://github.com/zerodevapp/kernel)

For v1.5 contracts, however, we do not want to fundamentally change the signing logic.

@rmeissner
Copy link
Member

This has been mentioned in https://forum.safe.global/t/safe-contract-v2/87 as Allow to set signature parser for an address. We should also evaluate associated risk (i.e. how to minimize the impact of a faulty/ malicious "validator")

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

2 participants