Verifies an Elliptic Curve German Digital Signature Algorithm (ECGDSA) signature.
#include "huecc.h"
int hu_ECGDSANoHashVerify(sb_Params eccParams, sb_PublicKey publicKey, size_t length, const unsigned char *messageDigest, size_t sLength, const unsigned char *sValue, size_t rLength, const unsigned char *rValue, int *result, sb_GlobalCtx sbCtx)
BlackBerry 10.2.0
An ECC parameters object.
An ECC public key object.
The length (in bytes) of the message digest.
A message digest.
The length (in bytes) of sValue.
The s component of the signature.
The length (in bytes) of rValue.
The r component of the signature.
The verification result. This is non-zero if the signature is valid; zero if the signature is invalid.
A global context.
An ECGDSA signature consists of the following two components:
The s value is the result of the signature equation.
The r value is the x co-ordinate of the ephemeral public key.
If the signature is valid for the given digest, this function will return SB_SUCCESS and set result to a non-zero value.
If the signature is not valid for the given digest, this function will return SB_SUCCESS but result will be set to zero.
ECC parameters object is NULL
ECC parameters object is invalid.
Public key is NULL.
Public key is invalid.
Message digest pointer is NULL.
Message digest length is invalid.
The s value buffer pointer is NULL.
The s value buffer is invalid.
The r value buffer pointer is NULL.
The r value buffer is invalid.
Result pointer is NULL.
Memory allocation failure.
Operation failed.
Success.