blsful 3.1.0

BLS signature implementation according to the IETF spec on the BLS12-381 curve.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::impls::inner_types::*;
use crate::*;

/// A trait that defines the BLS schemes that support multi-signatures
pub trait BlsMultiSignature: BlsSignatureCore {
    /// Merges multiple signatures into one
    fn from_signatures<I: Iterator<Item = Self::Signature>>(signatures: I) -> Self::Signature {
        let mut g = Self::Signature::identity();
        for sig in signatures {
            g += sig;
        }
        g
    }
}