Developer Reference

Contents

RSA_MB_Verify_PSS_rmf

Performs RSA multi-buffer signature verification using RSASSA-PSS scheme.

Syntax

IppStatus ippsRSA_MB_Verify_PSS_rmf
(
const Ipp8u*
pMsgs[8]
,
const int
msgLens[8]
,
const Ipp8u*
pSignts[8]
,
int
pIsValid[8]
, const IppsRSAPublicKeyState*
pPubKeys[8]
, const IppsHashMethod*
pMethod
, IppStatus
statuses[8]
, Ipp8u*
pBuffer
);
Include Files
ippcp.h
Parameters
pMsgs[8]
Pointer to the array of messages that have been signed.
msgLens[8]
Pointer to the array of messages lengths.
pSignts[8]
Pointer to the array of signatures to be verified.
pIsValid
Pointer to the array of verification results.
pPubKeys[8]
Pointer to the array of preliminary initialized
IppsRSAPublicKeyState
contexts.
pMethod
Pointer to the hash method. For details, see HashMethod functions.
statuses[8]
Pointer to the array of execution statuses for each performed operation.
pBuffer
Pointer to a temporary buffer. The size of the buffer must be not less than the value returned by the
RSA_MB_GetBufferSizePublicKey
function.
Description
This function carries out the RSASSA-PSS signature verification scheme defined in [PKCS 1.2.1]. The function can perform up to 8 verification operations at once.
Specify parameters for each single signature verification operation under the corresponding index in an input array in accordance with the
ippsRSAVerify_PSS_rmf
function API requirements.
To perform less than 8 operations, set one or more pointers to a context in input context arrays to NULL. In this case, each single operation with the context set to NULL will not be performed, and the function will return
ippStsMbWarning
. Once the function execution is completed, the statuses array will contain return codes for each single signature verification operation according to the
ippsRSAVerify_PSS_rmf
return values.
  • Sizes of all moduli
    n
    in all
    IppsRSAPublicKeyState
    contexts in the
    pPubKeys
    array must be equal.
  • Sizes and values of all public exponents
    e
    in all
    IppsRSAPublicKeyState
    contexts in the
    pPubKeys
    array must be equal.
Return Values
ippStsNoErr
Indicates no error. All single operations executed without errors. Any other value indicates an error or warning.
ippStsMbWarning
One or more of performed operations executed with error. Check statuses array for details.
ippStsNullPtrErr
Any of the input parameters is a NULL pointer.
ippStsSizeErr
Indicates a mismatch between moduli
n
sizes in the input contexts.
ippStsBadArgErr
Indicates a mismatch between exponents
e
in public keys.
ippStsContextMatchErr
No valid keys were found.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804