frost-zcash-demo/coordinator
dependabot[bot] 33feb71a75
Bump itertools from 0.12.1 to 0.13.0 (#222)
Bumps [itertools](https://github.com/rust-itertools/itertools) from 0.12.1 to 0.13.0.
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.12.1...v0.13.0)

---
updated-dependencies:
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-20 18:14:06 -03:00
..
src
Cargo.toml Bump itertools from 0.12.1 to 0.13.0 (#222) 2024-05-20 18:14:06 -03:00
README.md
tests.rs

README.md

FROST Coordinator Demo

Overview of demos

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 installed.

To run:

  1. Clone the repo. Run git clone https://github.com/ZcashFoundation/frost-zcash-demo.git
  2. Run cargo install
  3. Run cargo run --bin coordinator

Step 1

The coordinator CLI will prompt for:

  1. The public key package
  2. The number of signers participating and their corresponding identifiers

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:

  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)