Skip to content

Latest commit

 

History

History
69 lines (43 loc) · 4.64 KB

README.md

File metadata and controls

69 lines (43 loc) · 4.64 KB

Wamu CGGMP

A Rust implementation of CGGMP20 with augmentations as described by the Wamu protocol for computation of threshold signatures by multiple decentralized identities.

It uses the Wamu Core (wamu-core) crate for Wamu's core sub-protocols and augmentations, and Webb tool's cggmp-threshold-ecdsa crate for the CGGMP20 implementation that it wraps and augments.

⚠️ Security Warning

This crate is pre-alpha software developed as a PoC (Proof of Concept) of the Wamu protocol. It has NOT been independently audited and/or rigorously tested yet! It SHOULD NOT BE USED IN PRODUCTION!

NOTE: 🚧 This project is still work in progress, check back over the next few weeks for regular updates.

Implementation

This crate is a PoC (Proof of Concept) implementation of the Wamu protocol and uses a fork of Webb tool's cggmp-threshold-ecdsa crate for the CGGMP20 implementation with the following modifications/additions:

PoC implementation specific limitations, issues and deviations from CGGMP20

NOTE: There's an ongoing collaborative effort to resolve cggmp-threshold-ecdsa's deviations from CGGMP20 (see tangle-network/cggmp-threshold-ecdsa#37 for details and progress).

Installation

Run the following Cargo command in your project directory

cargo add wamu-cggmp --git https://github.com/wamutech/wamu-rs.git

Documentation

You can access documentation locally by running the following command from the project root

cargo doc --no-deps -p wamu-cggmp --open

Testing

You can run unit tests for all the core functionality by running the following command from the project root

cargo test -p wamu-cggmp

Examples

See the /crates/cggmp/examples directory.

License

Licensed under GPL-3.0.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the GPL-3.0 license, shall be licensed as above, without any additional terms or conditions.