5 releases

new 0.4.1 Jul 23, 2024
0.4.0 Jul 18, 2024
0.2.3 Apr 1, 2024
0.2.2 Mar 25, 2024
0.1.0 Feb 22, 2024

#5 in #tss

Download history 323/week @ 2024-04-01 94/week @ 2024-04-08 180/week @ 2024-04-15 83/week @ 2024-04-22 37/week @ 2024-04-29 62/week @ 2024-05-06 57/week @ 2024-05-13 37/week @ 2024-05-20 65/week @ 2024-05-27 121/week @ 2024-06-03 210/week @ 2024-06-10 74/week @ 2024-06-17 23/week @ 2024-06-24 28/week @ 2024-07-01 55/week @ 2024-07-08 129/week @ 2024-07-15

237 downloads per month
Used in 2 crates

MIT/Apache

56KB
938 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

~2.8–5MB
~96K SLoC