dpp/state_transition/verify_identity_signed_signature/
mod.rs1use crate::identity::IdentityPublicKey;
2use crate::state_transition::StateTransition;
3use crate::{BlsModule, ProtocolError};
4use platform_version::version::PlatformVersion;
5
6mod v0;
7mod v1;
8
9impl StateTransition {
10 pub fn verify_identity_signed_signature(
16 &self,
17 public_key: &IdentityPublicKey,
18 bls: &impl BlsModule,
19 platform_version: &PlatformVersion,
20 ) -> Result<(), ProtocolError> {
21 match platform_version
22 .dpp
23 .state_transition_method_versions
24 .verify_identity_signed_signature
25 {
26 0 => self.verify_identity_signed_signature_v0(public_key, bls),
27 1 => self.verify_identity_signed_signature_v1(public_key, bls),
28 version => Err(ProtocolError::UnknownVersionMismatch {
29 method: "StateTransition::verify_identity_signed_signature".to_string(),
30 known_versions: vec![0, 1],
31 received: version,
32 }),
33 }
34 }
35}