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

[Design]: sBTC Signer Behavior and Communication #34

Closed
3 tasks
AshtonStephens opened this issue Apr 2, 2024 · 1 comment
Closed
3 tasks

[Design]: sBTC Signer Behavior and Communication #34

AshtonStephens opened this issue Apr 2, 2024 · 1 comment
Assignees
Labels
design making a design decision. sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers.

Comments

@AshtonStephens
Copy link
Collaborator

AshtonStephens commented Apr 2, 2024

Completing the issue description and arriving at a conclusion is the deliverable of this issue.

Design - sBTC Signer Behavior and Communication

This ticket holds the design of sBTC Signer Behavior and Communication and how it fits into sBTC-v1.

1. Summary

This ticket outlines expectations and message formats for Signer communication.

2. Context & Purpose

For sBTC to be operational, signers must be able to coordinate and sign transactions. This ticket defines how signers are expected to behave in DKG and signing rounds.

Relevant Research Discussions

External Resources

3. Design

3.1 Proposed Component Design

Signers communicate through message passing.
In progress...

Message types

The following messages are sent from the coordinator to the signers

DKG messages

DkgBegin {
    dkg_id: u64
}
DkgPrivateBegin {
    dkg_id: u64,
    signer_ids: Vec<u32>,
    key_ids: Vec<u32>,
}
DkgEndBegin {
    // Same as DkgPrivateBegin
}

Signing round messages

NonceRequest {
    dkg_id: u64,
    sign_id: u64,
    sign_iter_id: u64,
    message: Vec<u8>,
}

Transport layer

3.1.1 Design Diagram

3.1.2 Coniderations & Alternatives

3.2 Areas of Ambiguity


Closing Checklist

  • The design proposed in this issue is clearly documented in the description of this ticket.
  • Everyone necessary has reviewed the resolution and agrees with the proposal.
  • This ticket has or links all the information necessary to familiarize a contributor with the design decision, why it was made, and how it'll be included.
@AshtonStephens AshtonStephens added the design making a design decision. label Apr 2, 2024
@AshtonStephens AshtonStephens added this to the Low Level Design milestone Apr 2, 2024
@AshtonStephens AshtonStephens added sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers. labels Apr 14, 2024
@netrome
Copy link
Contributor

netrome commented Apr 15, 2024

Superseded by #53

@netrome netrome closed this as completed Apr 15, 2024
@github-project-automation github-project-automation bot moved this to Needs Triage in sBTC May 22, 2024
@AshtonStephens AshtonStephens moved this from Needs Triage to Done in sBTC May 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design making a design decision. sbtc signer binary The sBTC Bootstrap Signer. signer communication Communication across sBTC bootstrap signers.
Projects
Archived in project
Development

No branches or pull requests

3 participants