serai/crypto/frost
Luke Parker cbceaff678
Create dedicated message structures for FROST messages (#140)
* Create message types for FROST key gen

Taking in reader borrows absolutely wasn't feasible. Now, proper types
which can be read (and then passed directly, without a mutable borrow)
exist for key_gen. sign coming next.

* Move FROST signing to messages, not Readers/Writers/Vec<u8>

Also takes the nonce handling code and makes a dedicated file for it, 
aiming to resolve complex types and make the code more legible by 
replacing its previously inlined state.

* clippy

* Update FROST tests

* read_signature_share

* Update the Monero library to the new FROST packages

* Update processor to latest FROST

* Tweaks to terminology and documentation
2022-10-25 23:17:25 -05:00
..
src Create dedicated message structures for FROST messages (#140) 2022-10-25 23:17:25 -05:00
Cargo.toml Create dedicated message structures for FROST messages (#140) 2022-10-25 23:17:25 -05:00
LICENSE Rename sign folder to crypto 2022-05-03 00:46:50 -04:00
README.md Update to FROST v10 2022-09-29 07:08:20 -04:00

Modular FROST

A modular implementation of FROST for any curve with a ff/group API. Additionally, custom algorithms may be specified so any signature reducible to Schnorr-like may be used with FROST.

A Schnorr algorithm is provided, of the form (R, s) where s = r + cx, which allows specifying the challenge format. This is intended to easily allow integrating with existing systems.

This library offers ciphersuites compatible with the IETF draft. Currently, version 10 is supported.