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: add authorizedSigners to operators #41

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

merklefruit
Copy link
Contributor

@merklefruit merklefruit commented Jan 29, 2025

Closes #40

Important

WIP

Summary of the changes:

Added new logic to add a set of authorized signers per operator.
This solves the problem of operators having to use their operator private key to run their bolt-sidecar: after this upgrade, operators will be able to specify additional EOAs that can make commitments on their behalf.

This will require an upgrade of all our contracts. Here's how the new flow will look like:

  1. registerOperator(rpcEndpoint, extraData, authorizedSigners): A set of authorized signers can be specified at registration time, along with the operator RPC and extradata.
  2. operators can always update the set of authorized signers in the following ways:
    a. addOperatorAuthorizedSigner(address signer) allows an operator to add a signer to the authorized set
    b. pauseOperatorAuthorizedSigner(address signer) allows an operator to pause a signer. it will still be considered active until the end of the current epoch, and from the next epoch onward it will be considered paused or inactive
    c. unpauseOperatorAuthorizedSigner(address signer) self-explanatory, but will consider the signer active again after the end of the current epoch
    d. removeOperatorAuthorizedSigner(address signer) self-explanatory, but will remove the signer from the set if they are currently paused

@merklefruit
Copy link
Contributor Author

📚 $\text{Stack Overview}$

Pulls submitted in this stack:

This comment was automatically generated by st.

Base automatically changed from nico/feat/bindings to main January 30, 2025 14:07
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.

Support signing / proxy keys
1 participant