Struct diem_crypto::multi_ed25519::MultiEd25519PublicKey
source · pub struct MultiEd25519PublicKey { /* private fields */ }
Expand description
Vector of public keys in the multi-key Ed25519 structure along with the threshold.
Implementations§
source§impl MultiEd25519PublicKey
impl MultiEd25519PublicKey
sourcepub fn new(
public_keys: Vec<Ed25519PublicKey>,
threshold: u8
) -> Result<Self, CryptoMaterialError>
pub fn new( public_keys: Vec<Ed25519PublicKey>, threshold: u8 ) -> Result<Self, CryptoMaterialError>
Construct a new MultiEd25519PublicKey. — Rules — a) threshold cannot be zero. b) public_keys.len() should be equal to or larger than threshold. c) support up to MAX_NUM_OF_KEYS public keys.
sourcepub fn public_keys(&self) -> &Vec<Ed25519PublicKey> ⓘ
pub fn public_keys(&self) -> &Vec<Ed25519PublicKey> ⓘ
Getter public_keys
Trait Implementations§
source§impl Clone for MultiEd25519PublicKey
impl Clone for MultiEd25519PublicKey
source§fn clone(&self) -> MultiEd25519PublicKey
fn clone(&self) -> MultiEd25519PublicKey
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MultiEd25519PublicKey
impl Debug for MultiEd25519PublicKey
source§impl<'de> Deserialize<'de> for MultiEd25519PublicKey
impl<'de> Deserialize<'de> for MultiEd25519PublicKey
source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where D: Deserializer<'de>,
source§impl Display for MultiEd25519PublicKey
impl Display for MultiEd25519PublicKey
source§impl From<&MultiEd25519PrivateKey> for MultiEd25519PublicKey
impl From<&MultiEd25519PrivateKey> for MultiEd25519PublicKey
Implementing From<&PrivateKey<…>> allows to derive a public key in a more elegant fashion.
source§fn from(private_key: &MultiEd25519PrivateKey) -> Self
fn from(private_key: &MultiEd25519PrivateKey) -> Self
source§impl From<Ed25519PublicKey> for MultiEd25519PublicKey
impl From<Ed25519PublicKey> for MultiEd25519PublicKey
Convenient method to create a MultiEd25519PublicKey from a single Ed25519PublicKey.
source§fn from(ed_public_key: Ed25519PublicKey) -> Self
fn from(ed_public_key: Ed25519PublicKey) -> Self
source§impl Hash for MultiEd25519PublicKey
impl Hash for MultiEd25519PublicKey
source§impl Length for MultiEd25519PublicKey
impl Length for MultiEd25519PublicKey
source§impl PartialEq<MultiEd25519PublicKey> for MultiEd25519PublicKey
impl PartialEq<MultiEd25519PublicKey> for MultiEd25519PublicKey
source§fn eq(&self, other: &MultiEd25519PublicKey) -> bool
fn eq(&self, other: &MultiEd25519PublicKey) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PublicKey for MultiEd25519PublicKey
impl PublicKey for MultiEd25519PublicKey
We deduce PublicKey from this.
§type PrivateKeyMaterial = MultiEd25519PrivateKey
type PrivateKeyMaterial = MultiEd25519PrivateKey
source§impl Serialize for MultiEd25519PublicKey
impl Serialize for MultiEd25519PublicKey
source§impl TryFrom<&[u8]> for MultiEd25519PublicKey
impl TryFrom<&[u8]> for MultiEd25519PublicKey
source§fn try_from(bytes: &[u8]) -> Result<MultiEd25519PublicKey, CryptoMaterialError>
fn try_from(bytes: &[u8]) -> Result<MultiEd25519PublicKey, CryptoMaterialError>
Deserialize a MultiEd25519PublicKey. This method will also check for key and threshold validity, and will only deserialize keys that are safe against small subgroup attacks.
§type Error = CryptoMaterialError
type Error = CryptoMaterialError
source§impl VerifyingKey for MultiEd25519PublicKey
impl VerifyingKey for MultiEd25519PublicKey
We deduce VerifyingKey from pointing to the signature material
we get the ability to do pubkey.validate(msg, signature)