mbx_ed25519_verify_mb8

Verifies signature.

Syntax

mbx_status mbx_ed25519_verify_mb8(const ed25519_sign_component* const pa_sign_r[8], const ed25519_sign_component* const pa_sign_s[8], const int8u* const pa_msg[8], const int32u msgLen[8], const ed25519_public_key* const pa_public_key[8]);

Include Files

crypto_mb/ed25519.h

Parameters

pa_sign_r

Array of pointers to the signature’s r- components of 32 bytes length each.

pa_sign_s

Array of pointers to the signature’s s- components of 32 bytes length each.

pa_msg

Array of pointers to the messages.

msgLen

Array of the message’s lengths above in bytes.

pa_public_key

Array of pointers to the public keys of 32 bytes length each.

Description

The mbx_ed25519_verify_mb8 function verifies signatures specified by pa_sign_r[i] and pa_sign_s[i] parameters. Other parameters pa_msg[], msgLen[], and pa_public_key[] specify other input parameters for verification.

Note

mbx_ed25519_verify_mb8 is implementing so called PureEDDSA variant of EdDSA. For more information, see RFC 8032.

Return Values

The mbx_ ed25519_public_key_mb8 function returns the status that indicates whether the operation completed successfully or not. The status value of 0 indicates that all operations completed successfully. The error condition can be analyzed by the MBX_GET_STS() call. The result of verification is returned as status too. The MBX_STATUS_OK value means that signature is verified, else status contains MBX_STATUS_SIGNATURE_ERR value.