Documentation
ΒΆ
Overview ΒΆ
Package threshold provides a threshold signature library implementation supporting multiple signature schemes including ECDSA, EdDSA, and Schnorr.
The library implements several threshold signature protocols:
- CMP: Canetti-Makriyannis-Pagourtzis protocol for ECDSA
- FROST: Flexible Round-Optimized Schnorr Threshold signatures
- Doerner: Doerner-Shelat protocol for EdDSA
- LSS: Linear Secret Sharing based threshold signatures
This is the root package documentation. The actual implementation is organized in subpackages under pkg/ and protocols/.
Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
threshold-cli
command
|
|
|
internal
|
|
|
test
Package test provides unified testing infrastructure for MPC protocols
|
Package test provides unified testing infrastructure for MPC protocols |
|
pkg
|
|
|
math/curve
Package curve provides elliptic curve implementations for threshold cryptography.
|
Package curve provides elliptic curve implementations for threshold cryptography. |
|
protocol
Package protocol provides context utilities for threshold signature protocols
|
Package protocol provides context utilities for threshold signature protocols |
|
zk/nth
zknth is based on the zkenc package, and can be seen as the special case where the ciphertext encrypts the "0" value.
|
zknth is based on the zkenc package, and can be seen as the special case where the ciphertext encrypts the "0" value. |
|
protocols
|
|
|
adapters
Package adapters provides protocol adapters for unified threshold signature interface.
|
Package adapters provides protocol adapters for unified threshold signature interface. |
|
bls
Package bls provides threshold BLS signature functionality using proper Shamir secret sharing and Lagrange interpolation.
|
Package bls provides threshold BLS signature functionality using proper Shamir secret sharing and Lagrange interpolation. |
|
lss
Package lss implements the actual LSS dynamic resharing protocol as described in the paper "LSS MPC ECDSA: A Pragmatic Framework for Dynamic and Resilient Threshold Signatures" by Vishnu J. Seesahai
|
Package lss implements the actual LSS dynamic resharing protocol as described in the paper "LSS MPC ECDSA: A Pragmatic Framework for Dynamic and Resilient Threshold Signatures" by Vishnu J. Seesahai |
|
lss/adapters
Package adapters - Bitcoin adapter with Taproot support
|
Package adapters - Bitcoin adapter with Taproot support |
|
lss/config
Package config implements the LSS configuration and storage
|
Package config implements the LSS configuration and storage |
|
lss/keygen
Package keygen implements the LSS key generation protocol.
|
Package keygen implements the LSS key generation protocol. |
|
lss/reshare
Package reshare implements the LSS dynamic resharing protocol.
|
Package reshare implements the LSS dynamic resharing protocol. |
|
lss/sign
Package sign implements the LSS signing protocol.
|
Package sign implements the LSS signing protocol. |
|
ringtail
Package ringtail implements a post-quantum lattice-based threshold signature scheme.
|
Package ringtail implements a post-quantum lattice-based threshold signature scheme. |
Click to show internal directories.
Click to hide internal directories.