util_verify
Verify a cryptographic signature
Behaviour
Verify a cryptographic signature
If the public key is prefixed with
0xED
then useED25519
Otherwise assume
SECP256k1
Definition
int64_t util_verify (
uint32_t dread_ptr,
uint32_t dread_len,
uint32_t sread_ptr,
uint32_t sread_len,
uint32_t kread_ptr,
uint32_t kread_len
);
Example
if (!util_verify(payload_ptr, payload_len,
signature_ptr, signature_len,
publickey_ptr, publickey_len))
rollback("Invalid Signature", 17, 60);
Parameters
Name
Type
Description
dread_ptr
uint32_t
Pointer to the signed data
dread_len
uint32_t
Length of the signed data
sread_ptr
uint32_t
Pointer to the signature
sread_len
uint32_t
Length of the signature
kread_ptr
uint32_t
Pointer to the public key
kread_len
uint32_t
Length of the public key
Return Code
Type
Description
int64_t
0
- validation failed, the signature is invalid.
1
- validation succeeded, the signature is valid.
If negative, an error:
OUT_OF_BOUNDS
- pointers/lengths specified outside of hook memory.
Last updated
Was this helpful?