dpp/identity/identity_public_key/methods/hash/
mod.rs1mod v0;
2
3use crate::identity::IdentityPublicKey;
4use crate::ProtocolError;
5use dashcore::Network;
6pub use v0::*;
7
8impl IdentityPublicKeyHashMethodsV0 for IdentityPublicKey {
9 fn public_key_hash(&self) -> Result<[u8; 20], ProtocolError> {
10 match self {
11 IdentityPublicKey::V0(v0) => v0.public_key_hash(),
12 IdentityPublicKey::V1(v1) => v1.public_key_hash(),
13 }
14 }
15
16 fn validate_private_key_bytes(
17 &self,
18 private_key_bytes: &[u8; 32],
19 network: Network,
20 ) -> Result<bool, ProtocolError> {
21 match self {
22 IdentityPublicKey::V0(v0) => v0.validate_private_key_bytes(private_key_bytes, network),
23 IdentityPublicKey::V1(v1) => v1.validate_private_key_bytes(private_key_bytes, network),
24 }
25 }
26}