Module mithril_common::crypto_helper
source · Expand description
Tools and types to abstract the use of the Mithril STM library
Re-exports§
pub use cardano::ColdKeyGenerator;
Modules§
- Test data builders for Mithril STM types, for testing purpose.
Structs§
- Error raised when the encoding or decoding fails
- A cryptographic signer that is responsible for signing the EraMarkers
- An era markers verifier that checks the authenticity of era markers stored on the chain
- A map, where the keys and values are merkelized and provable
- A MKMapProof that proves membership of an entry in the merkelized map
- A Merkle proof
- A Merkle tree
- A node of a Merkle tree
- A Merkle tree store in memory
- Parsed Operational Certificate
- ProtocolGenesisSigner and ProtocolGenesisVerifier related errors.
- A protocol Genesis Signer that is responsible for signing the Genesis Certificate
- A protocol Genesis Verifier that is responsible for verifying the Genesis Certificate
- A ProtocolKey is a wrapped that add Serialization capabilities.
- We need to create this struct because the design of Sum6Kes takes a reference to a mutable pointer. It is therefore not possible to implement Ser/Deser using serde.
Enums§
- EraMarkersSigner and EraMarkersVerifier related errors.
- A merkelized map node that is used to represent multi layered merkelized map The MKMapNode can be either a MKMap (Merkle map), a MKTree (full Merkle tree) or a MKTreeNode (Merkle tree node, e.g the root of a Merkle tree) Both MKMap and MKTree can generate proofs of membership for elements that they contain, which allows for recursive proof generation for the multiple layers
- New initializer error
- New registration error
Constants§
- The current protocol version
Traits§
- The trait implemented by the keys of a MKMap
- The trait implemented by the values of a MKMap
- The Merkle tree leaves indexer trait
- The Merkle tree storer trait
- The codec used to serialize/deserialize a ProtocolKey.
- Trait that allows any structure that implements Serialize and DeserializeOwned to be serialized and deserialized following the Shelly json format.
Functions§
- Encode to bech32 given Human Readable Part (hrp) and data
- Decode key from hex helper
- Encode key to hex helper
Type Aliases§
- Alias for a byte
- Wrapper of Ed25519:SigningKey.
- Wrapper of Ed25519:Signature.
- Wrapper of Ed25519:PublicKey.
- The KES period that is used to check if the KES keys is expired
- Alias for a Merkle tree leaf position
- Wrapper of MithrilStm:StmAggrVerificationKey.
- Alias of MithrilStm:AggregationError.
- Alias of MithrilStm:StmClerk.
- Alias of a wrapper of MithrilStm:ClosedKeyReg.
- Wrapper of Ed25519:SigningKey.
- Wrapper of Ed25519:Signature.
- Wrapper of Ed25519:PublicKey.
- Alias of a wrapper of MithrilStm:StmInitializer.
- Alias of a wrapper of MithrilCommon:ProtocolInitializerErrorWrapper.
- Alias of a wrapper of MithrilStm:KeyReg.
- Alias of MithrilStm::Index.
- Wrapper of MKProof to add serialization utilities.
- Wrapper of MithrilStm:StmAggrSig to add serialization utilities.
- Wrapper of OpCert to add serialization utilities.
- Alias of MithrilStm::StmParameters.
- The id of a mithril party.
- Alias of a wrapper of MithrilCommon:ProtocolRegistrationErrorWrapper.
- Alias of MithrilStm:StmSigner.
- Wrapper of MithrilStm:StmVerificationKeyPoP to add serialization utilities.
- Wrapper of KES:Sum6KesSig to add serialization utilities.
- Wrapper of MithrilStm:StmSig to add serialization utilities.
- Alias of MithrilStm:Stake.
- A protocol version