8 releases

0.5.0 Oct 23, 2024
0.4.3 Sep 23, 2024
0.4.2 Aug 27, 2024
0.4.1 Jul 23, 2024
0.1.0 Feb 22, 2024

#1304 in Cryptography

Download history 70/week @ 2024-07-29 7/week @ 2024-08-05 45/week @ 2024-08-12 15/week @ 2024-08-19 205/week @ 2024-08-26 14/week @ 2024-09-02 10/week @ 2024-09-09 99/week @ 2024-09-16 317/week @ 2024-09-23 591/week @ 2024-09-30 1996/week @ 2024-10-07 1596/week @ 2024-10-14 564/week @ 2024-10-21 254/week @ 2024-10-28 424/week @ 2024-11-04 405/week @ 2024-11-11

1,656 downloads per month
Used in 2 crates

MIT/Apache

56KB
933 lines

Key share of Threshold Signature Scheme (TSS)

TSS protocols often share the same structure of key share. Having a separate crate with definition of the key share struct help reusing the code, keeping different implementations compatible and interopable.

The crate provides DirtyCoreKeyShare that contains data such as: secret share, other signers commitments, public key and etc.

DirtyCoreKeyShare may contain any data, not necessarily consistent. TSS protocol implementations typically don't want to handle inconsistent key shares and would rather assume that it's valid. Valid<T> is a type-guard stating that the value T it holds was validated. So, Valid<DirtyCoreKeyShare> (or CoreKeyShare type alias) can be used to express that only valid key shares are accepted.

Dependencies

~3.5–5.5MB
~115K SLoC