mithril_common/crypto_helper/types/
wrappers.rs1use kes_summed_ed25519::kes::Sum6KesSig;
2use mithril_stm::{
3 AggregateSignature, AggregateVerificationKey, SingleSignature, VerificationKeyProofOfPossession,
4};
5
6use crate::crypto_helper::{D, MKMapProof, MKProof, OpCert, ProtocolKey};
7use crate::entities::BlockRange;
8
9pub type ProtocolSignerVerificationKey = ProtocolKey<VerificationKeyProofOfPossession>;
12
13pub type ProtocolSignerVerificationKeySignature = ProtocolKey<Sum6KesSig>;
16
17pub type ProtocolSingleSignature = ProtocolKey<SingleSignature>;
19
20pub type ProtocolMultiSignature = ProtocolKey<AggregateSignature<D>>;
22
23pub type ProtocolOpCert = ProtocolKey<OpCert>;
25
26pub type ProtocolAggregateVerificationKey = ProtocolKey<AggregateVerificationKey<D>>;
28
29pub type ProtocolMkProof = ProtocolKey<MKMapProof<BlockRange>>;
31
32impl_codec_and_type_conversions_for_protocol_key!(
33 json_hex_codec => AggregateSignature<D>, ed25519_dalek::VerifyingKey, ed25519_dalek::SigningKey, AggregateVerificationKey<D>,
34 MKProof, VerificationKeyProofOfPossession, Sum6KesSig, OpCert
35);
36
37impl_codec_and_type_conversions_for_protocol_key!(
38 bytes_hex_codec => SingleSignature, ed25519_dalek::Signature
39);