Saltearse al contenido

util_verify

Verifica una firma criptográfica

  • Si la clave pública tiene el prefijo 0xED, se usa ED25519
  • En caso contrario, se asume SECP256k1
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
);
if (!util_verify(payload_ptr, payload_len,
signature_ptr, signature_len,
publickey_ptr, publickey_len))
rollback("Firma inválida", 17, 60);
NombreTipoDescripción
dread_ptruint32_tPuntero a los datos firmados
dread_lenuint32_tLongitud de los datos firmados
sread_ptruint32_tPuntero a la firma
sread_lenuint32_tLongitud de la firma
kread_ptruint32_tPuntero a la clave pública
kread_lenuint32_tLongitud de la clave pública
TipoDescripción
int64_t

0 - validación fallida, la firma es inválida.
1 - validación correcta, la firma es válida.

Si es negativo, indica error:
OUT_OF_BOUNDS

  • punteros/longitudes fuera de la memoria del hook.