diff --git a/packages/native-utils/common/src/serde.rs b/packages/native-utils/common/src/serde.rs index 4688c45..8730813 100644 --- a/packages/native-utils/common/src/serde.rs +++ b/packages/native-utils/common/src/serde.rs @@ -38,10 +38,10 @@ impl<'de> Deserialize<'de> for RecoverableSignature { let bytes: Bytes = Deserialize::deserialize(deserializer)?; assert_eq!(65,bytes.0.len()); let mut a: [u8; 64] = [0; 64]; - a.copy_from_slice(&bytes.0[0..65]); + a.copy_from_slice(&bytes.0[0..64]); Ok(RecoverableSignature( Signature::parse(&a), - RecoveryId::parse(bytes.0[64]).map_err(D::Error::custom)? + RecoveryId::parse(bytes.0[64] - 27).map_err(D::Error::custom)? )) } }