Frost implementations
This is an extensive list of FROST implementations w/ their curves/programming language/status.
! coinbase https://blog.coinbase.com/frost-flexible-round-optimized-schnorr-threshold-signatures-b2e950164ee1 https://github.com/coinbase/kryptology/tree/v1.8.0/pkg/ted25519/frost https://pkg.go.dev/github.com/coinbase/kryptology#section-readme
- go
- no signature aggregation role
- DKG: 2
- signing: 3
- no lagrange co-efficient computation library in Go
x frost - waterloo https://crysp.uwaterloo.ca/software/frost/ https://git.uwaterloo.ca/ckomlo/frost/
- rust
- using Ristretto group (no secp256k1/bip-340)
x frost-datalek https://github.com/isislovecruft/frost-dalek
- rust
- using Ristretto group (no secp256k1/bip-340)
x devos-50 https://github.com/devos50/frost-python
- port of https://github.com/isislovecruft/frost-dalek to python
- martijn
- python (but rust bindings)
- using Ristretto group (no secp256k1/bip-340)
! devos-50-sec256zk-1 https://github.com/devos50/coincurve/blob/frost/frost.py
- port of https://github.com/ElementsProject/secp256k1-zkp/pull/138 (frost branch)
- martijn
- python (but rust bindings)
- using correct bip-340 signatures
! jesse possner (python) https://brink.dev/blog/2021/04/15/frost/ https://github.com/jesseposner/FROST-BIP340
- secp256k1/bip-340
- python
! jesse possner (c) https://brink.dev/blog/2021/04/15/frost/ https://github.com/jesseposner/secp256k1-zkp
- secp256k1/bip-340
- c
- wip
- currently uses a modified frost protocol, making use of musig as well to create the nonces for the signature
- uses musig to replace the broadcast channel (?)
- not! the same as paper/draft
- https://github.com/ElementsProject/secp256k1-zkp/pull/138#issuecomment-982808422
- "hybrid FROST/MuSig"
- no security proof for this modified protocol
x taurusgroup https://github.com/taurusgroup/frost-ed25519
- go
- Ed25519, not compatible
- GOOD! readme documentation
! taurusgroup 2 https://github.com/taurusgroup/multi-party-sig
- go
- BIP340 signatures, compatible (!)
! redjubjub - rust - zcash related - code is rather integrated into non-related project - https://github.com/ZcashFoundation/redjubjub/blob/main/src/frost.rs
! orestisakan https://github.com/OrestisKan/secp256k1-zkp-jni
- jni port
- jesse possner (c) port
! secp256kfun (WIP frost, nothing (?)) https://github.com/LLFourn/secp256kfun https://github.com/LLFourn/secp256kfun/pull/84
- rust
- not as performant
- WIP
x ecc ecc - C - risetto group
x frost-ristretto255 https://github.com/ZcashFoundation/frost/tree/main/frost-ristretto255 - rust - risetto group - zcash
! reference impl https://github.com/cfrg/draft-irtf-cfrg-frost/tree/master/poc - python (?) - curve agnostic (?)