Crate synedrion

source ·
Expand description

Threshold signing library based on CGGMP’21 scheme.

This library is based on the scheme described in “UC Non-Interactive, Proactive, Threshold ECDSA with Identifiable Aborts” by R. Canetti, R. Gennaro, S. Goldfeder, N. Makriyannis, and U. Peled, DOI:10.1145/3372297.3423367 (preprint is available at https://eprint.iacr.org/2021/060, and it has been revised compared to the published version).

Re-exports

Modules

  • Elliptic Curve Digital Signature Algorithm (ECDSA).
  • Mutable wrappers around the protocols for easier handling.

Structs

  • Possible results of the merged Presigning and Signing protocols.
  • Possible results of the merged KeyGen and KeyRefresh protocols.
  • Possible results of the KeyGen protocol.
  • Possible results of the KeyRefresh protocol.
  • The full key share with auxiliary parameters.
  • The result of the Auxiliary Info & Key Refresh protocol - the update to the key share.
  • A proof of a node’s correct behavior for the Presigning protocol.
  • Possible results of the Presigning protocol.
  • Production strength parameters.
  • A wrapper for a signature and public key recovery info.
  • A proof of a node’s correct behavior for the Signing protocol.
  • Possible results of the Signing protocol.
  • Scheme parameters for testing purposes only. Security is weakened to allow for faster execution.
  • A threshold variant of the key share, where any threshold shares our of the total number is enough to perform signing.

Enums

  • Possible verifiable errors of the merged Presigning and Signing protocols.
  • A proof of a node’s correct behavior for the merged Presigning and Signing protocols.
  • Possible verifiable errors of the merged KeyGen and KeyRefresh protocols.
  • A proof of a node’s correct behavior for the merged KeyGen and KeyRefresh protocols.
  • Possible verifiable errors of the KeyGen protocol.
  • Possible verifiable errors of the Presigning protocol.

Traits

  • Typed outcomes of a protocol, specific for each protocol (in addition to non-specific errors common for all protocols).
  • Signing scheme parameters.