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

[Feature]: Signers to collectively update request state in Emily #1264

Open
1 task
djordon opened this issue Jan 24, 2025 · 0 comments
Open
1 task

[Feature]: Signers to collectively update request state in Emily #1264

djordon opened this issue Jan 24, 2025 · 0 comments
Labels
emily API that communicates with Signers to trigger sBTC operations. sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers.

Comments

@djordon
Copy link
Collaborator

djordon commented Jan 24, 2025

Feature - Signers to collectively update request state in Emily

1. Description

The signers should update Emily when a deposit request has been accepted, rejected, or completed. Right now only the coordinator updates Emily when it submits the bitcoin transaction sweeping the deposit, informing her that it has been accepted. But the signers should collectively sign requests to Emily so that it knows that the majority of signers agree that the deposit request has been accepted or rejected.

1.1 Context & Purpose

We want to ensure that failed deposit requests are noted as such in the bridge. We also want to make sure that no single signer has the power to incorrectly modify the state of a request in Emily.

2. Technical Details:

This task is quite involved, since it requires quite a few decisions.

  1. What kind of message(s) do the signers send to Emily? How do that collectively sign the request? They could send multiple signatures, or perhaps a Schnorr signature using the latest aggregate key.
  2. We'd need a new message types for signing requests to Emily.
  3. We need new logic to coordinate Emily request signing rounds.
  4. We need validation logic in the signers.
  5. We need logic in Emily to verify the signature(s).

2.1 Acceptance Criteria:

  • Emily only accepts requests from a signer when it knows that that a consensus majority of the signers agree with the contents.

3. Related Issues and Pull Requests (optional):

@djordon djordon added emily API that communicates with Signers to trigger sBTC operations. sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers. labels Jan 24, 2025
@djordon djordon added this to the sBTC: Nice to have milestone Jan 24, 2025
@djordon djordon added this to sBTC Jan 24, 2025
@github-project-automation github-project-automation bot moved this to Needs Triage in sBTC Jan 24, 2025
@djordon djordon moved this from Needs Triage to Todo in sBTC Jan 24, 2025
@djordon djordon moved this from Todo to Needs Triage in sBTC Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
emily API that communicates with Signers to trigger sBTC operations. sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers.
Projects
Status: Needs Triage
Development

No branches or pull requests

1 participant