serai/crypto/dkg
Luke Parker 13977f6287
Clean and document the DKG library's encryption
Encryption used to be inlined into FROST. When writing the documentation, I
realized it was decently hard to review. It also was antagonistic to other
hosted DKG algorithms by not allowing code re-use.

Encryption is now a standalone module, providing clear boundaries and
reusability.

Additionally, the DKG protocol itself used to use the ciphersuite's specified
hash function (with an HKDF to prevent length extension attacks). Now,
RecommendedTranscript is used to achieve much more robust transcripting and
remove the HKDF dependency. This does add Blake2 into all consumers yet is
preferred for its security properties and ease of review.
2022-12-07 17:30:42 -05:00
..
src Clean and document the DKG library's encryption 2022-12-07 17:30:42 -05:00
Cargo.toml Clean and document the DKG library's encryption 2022-12-07 17:30:42 -05:00
LICENSE Create a dedicated crate for the DKG (#141) 2022-10-29 03:54:42 -05:00
README.md Create a dedicated crate for the DKG (#141) 2022-10-29 03:54:42 -05:00

Distributed Key Generation

A collection of implementations of various distributed key generation protocols.

All included protocols resolve into the provided Threshold types, intended to enable their modularity.

Additional utilities around them, such as promotion from one generator to another, are also provided.

Currently included is the two-round protocol from the FROST paper.