Module mithril_stm::multi_sig
source · Expand description
Base multi-signature scheme, used as a primitive for STM.
See Section 2.4 of the paper.
This module uses the blst
library as a backend for pairings.
Structs§
- MultiSig proof of possession, which contains two elements from G1. However, the two elements have different types:
k1
is represented as a BlstSig as it has the same structure, and this facilitates its verification. On the other hand,k2
is a G1 point, as it does not share structure with the BLS signature, and we need to have an ad-hoc verification mechanism. - MultiSig signature, which is a wrapper over the
BlstSig
type. - MultiSig secret key, which is a wrapper over the BlstSk type from the blst library.
- MultiSig verification key, which is a wrapper over the BlstVk (element in G2) from the blst library.
- MultiSig public key, contains the verification key and the proof of possession.