frost-zcash-demo/coordinator/README.md

73 lines
1.7 KiB
Markdown
Raw Normal View History

# FROST Coordinator Demo
2023-08-21 15:01:16 -07:00
[Overview of demos](https://github.com/ZcashFoundation/frost-zcash-demo/blob/main/README.md)
## Status ⚠
The Coordinator Demo is a WIP
## Usage
NOTE: This is for demo purposes only and should not be used in production.
You will need to have [Rust and Cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html) installed.
To run:
1. Clone the repo. Run `git clone https://github.com/ZcashFoundation/frost-zcash-demo.git`
2. Run `cargo install`
2023-08-21 15:01:16 -07:00
3. Run `cargo run --bin coordinator`
2023-08-21 15:01:16 -07:00
### Step 1
2023-08-21 15:01:16 -07:00
The coordinator CLI will prompt for:
2023-08-21 15:01:16 -07:00
1. The public key package
2. The number of signers participating and their corresponding identifiers
2023-08-21 15:01:16 -07:00
### Communication round
Each participant will send their commitments
### Step 2
The coordinator CLI will prompt for:
1. A message
2. The commitments for each participant
The coordinator CLI will then use that data to generate:
2023-08-21 15:01:16 -07:00
1. Signing package
### Communication round
The signing package will be sent to all participants
The coordinator will receive each participant's signature shares
### Step 3
The coordinator CLI will prompt for:
1. Signature shares for ecah participant
The coordinator CLI will then use that data to generate:
1. The group signature
### Communication round
The group signature will then be sent to all participants
## Developer information
### Pre-commit checks
1. Run `cargo make all`
### Coverage
Test coverage checks are performed in the pipeline. This is configured here: `.github/workflows/coverage.yaml`
To run these locally:
1. Install coverage tool by running `cargo install cargo-llvm-cov`
2. Run `cargo make cov` (you may be asked if you want to install `llvm-tools-preview`, if so type `Y`)