RSA_MB_Encrypt

Performs the RSA multi-buffer encryption operation.

Syntax

Note

This API is deprecated from Intel® IPP Cryptography and is removed since 2021.2 release. It is recommended to switch to Crypto MB library. If you have any concerns, open a ticket and provide feedback at Intel ® online support center.

IppStatus ippsRSA_MB_Encrypt(const IppsBigNumState*pPtxts[8], IppsBigNumState*pCtxts[8], const IppsRSAPublicKeyState*pKeys[8], IppStatusstatuses[8], Ipp8u*pBuffer);

Include Files

ippcp.h

Parameters

pPtxts[8]

Pointer to the IppsBigNumState context of the plaintext for each encryption operation.

pCtxts[8]

Pointer to the IppsBigNumState context of the ciphertext for each encryption operation.

pKeys[8]

Pointer to the IppsRSAPublicKeyState context for each encryption operation.

statuses

Pointer to the IppStatus array that contains statuses for each encryption operation.

pScratchBuffer

Pointer to the temporary buffer of size not less than returned by the RSA_MB_GetBufferSizePublicKey function.

Description

The function performs the RSA multi-buffer encryption operation, which is the RSA operation on a public key. The function can perform up to 8 single RSA encryption operations at once.

Each RSA encryption operation requires valid parameters that follow the ippsRSA_Encrypt syntax. After execution, the statuses array contains statuses for each single RSA encryption operation returned by ippsRSA_Encrypt .

To perform less than 8 operations, set one or more contexts in arrays to NULL. In this case, all single operations with NULL in parameters are not performed, and the function returns ippStsMbWarning .

Note

Important

Sizes of all moduli n in all the IppsRSAPublicKeyState contexts in the pKeys array must be equal. Sizes and values of all public exponents e in all the IppsRSAPublicKeyState contexts in the pKeys array must be equal.

Return Values

ippStsNoErr

Indicates no error. All single operations are executed without errors. Any other value indicates an error or warning.

ippStsNullPtrErr

Indicates an error condition if any of the specified pointers is NULL .

ippStsSizeErr

Indicates an error condition if the size of modulus n in one context is not equal to the size of the modulus n in other contexts.

ippStsBadArgErr

Indicates an error condition if the size or value of the exponent e in one context is not equal to the value and size of e in other contexts.

ippStsMbWarning

Indicates a warning when one or more performed operations are executed with errors. For details, check the statuses array.

Related Information