Documentation
¶
Overview ¶
Package ringtail implements a post-quantum lattice-based threshold signature scheme.
Ringtail provides quantum-resistant threshold signatures using lattice cryptography, specifically designed for high-security applications requiring protection against quantum computer attacks.
The protocol supports:
- (t,n)-threshold signatures where t parties can sign
- Post-quantum security based on Module-LWE hardness
- Efficient key generation and signing
- Share refresh for proactive security
- Compatible with Lux's threshold infrastructure
Index ¶
- func Keygen(selfID party.ID, participants []party.ID, threshold int, pl *pool.Pool) protocol.StartFunc
- func Refresh(config *Config, participants []party.ID, newThreshold int, pl *pool.Pool) protocol.StartFunc
- func Sign(config *Config, signers []party.ID, message []byte, pl *pool.Pool) protocol.StartFunc
- func VerifySignature(publicKey []byte, message []byte, signature []byte) bool
- type Config
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Keygen ¶
func Keygen(selfID party.ID, participants []party.ID, threshold int, pl *pool.Pool) protocol.StartFunc
Keygen initiates the Ringtail threshold key generation protocol.
This creates a new lattice-based key pair with the private key shared among n participants such that any t of them can collaborate to sign.
func Refresh ¶
func Refresh(config *Config, participants []party.ID, newThreshold int, pl *pool.Pool) protocol.StartFunc
Refresh initiates the share refresh protocol.
This updates all shares while maintaining the same public key, providing proactive security against gradual key compromise.