pub trait AggregatePublicKey {
    // Required methods
    fn weighting(&self, choice: &PublicKey) -> Option<Scalar>;
    fn public_key(&self) -> PublicKey;
}
Expand description

Any data structure used for aggregating public keys.

Internally, these must usually iterate over the public keys being aggregated in lexicographic order, so any BTreeMap<PublicKey,V> works. Alternative designs sound plausible when working with some blockchain scheme.

Required Methods§

source

fn weighting(&self, choice: &PublicKey) -> Option<Scalar>

Return delinearization weighting for one of many public keys being aggregated.

source

fn public_key(&self) -> PublicKey

Returns aggregated public key.

Implementations on Foreign Types§

source§

impl<K, V> AggregatePublicKey for BTreeMap<K, V>where K: Borrow<PublicKey> + Ord,

Implementors§