|
1 day ago | |
---|---|---|
.github | 1 week ago | |
frost-core | 1 day ago | |
frost-ed448 | 1 day ago | |
frost-ed25519 | 1 day ago | |
frost-p256 | 1 day ago | |
frost-redjubjub | 6 months ago | |
frost-rerandomized | 3 weeks ago | |
frost-ristretto255 | 1 day ago | |
frost-secp256k1 | 1 day ago | |
gendoc | 1 day ago | |
rfcs | 2 years ago | |
.gitignore | 11 months ago | |
.mergify.yml | 8 months ago | |
CHANGELOG.md | 1 year ago | |
Cargo.toml | 4 weeks ago | |
LICENCE | 2 years ago | |
LICENCE.MIT | 2 years ago | |
LICENSE.Apache-2.0 | 2 years ago | |
README.md | 3 months ago | |
codecov.yml | 8 months ago |
README.md
FROST (Flexible Round-Optimised Schnorr Threshold signatures)
Rust implementations of 'Two-Round Threshold Schnorr Signatures with FROST'.
Unlike signatures in a single-party setting, threshold signatures require cooperation among a threshold number of signers, each holding a share of a common private key. The security of threshold schemes in general assume that an adversary can corrupt strictly fewer than a threshold number of participants.
'Two-Round Threshold Schnorr Signatures with FROST' presents a variant of a Flexible Round-Optimized Schnorr Threshold (FROST) signature scheme originally defined in FROST20. FROST reduces network overhead during threshold signing operations while employing a novel technique to protect against forgery attacks applicable to prior Schnorr-based threshold signature constructions. This variant of FROST requires two rounds to compute a signature, and implements signing efficiency improvements described by Schnorr21. Single-round signing with FROST is not implemented here.
Status ⚠
The FROST specification is not yet finalized, and this codebase has not yet been audited or
released. The APIs and types in frost-core
are subject to change.
Usage
frost-core
implements the base traits and types in a generic manner, to enable top-level
implementations for different ciphersuites / curves without having to implement all of FROST from
scratch. End-users should not use frost-core
if they want to sign and verify signatures, they
should use the crate specific to their ciphersuite/curve parameters that uses frost-core
as a
dependency.