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: move away from ractor #23

Merged
merged 3 commits into from
Apr 5, 2023
Merged

feat: move away from ractor #23

merged 3 commits into from
Apr 5, 2023

Conversation

itegulov
Copy link
Contributor

@itegulov itegulov commented Apr 5, 2023

We don't need actors and can just use plain HTTP instead for the sake of simplicity.

There are two CLI commands:

  1. start-sign that starts a sign node with a single endpoint /sign that, given payload, checks it and signs it with its private key share.
  2. start-leader that start a leader node with a single endpoint /submit that, given payload, distributes it across all sign nodes and, once it has enough responses, assembles it into a full signature.

@itegulov itegulov requested a review from volovyks April 5, 2023 10:45
#[derive(Clone)]
struct SignNodeState {
id: NodeId,
sk_share: SecretKeyShare,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think SignNodes should be aware of the LeadNode and accept requests only from it.

@@ -0,0 +1,164 @@
use crate::msg::{LeaderRequest, LeaderResponse, SigShareRequest, SigShareResponse};
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like we will need to merge leader and sign nodes into one entity in the future. But yes, now this design looks resonable.

@volovyks volovyks merged commit 1acafab into main Apr 5, 2023
@volovyks volovyks deleted the daniyar/no-actors branch April 14, 2023 13:49
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.

2 participants