Cryptography for Intel(R) Integrated Performance Primitives Developer Reference

ID 768738
Date 12/16/2022
Document Table of Contents


Performs the RSA multi-buffer decryption operation.

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_Decrypt(const IppsBigNumState*pCtxts[8], IppsBigNumState*pPtxts[8], const IppsRSAPrivateKeyState*pKeys[8], IppStatusstatuses[8], Ipp8u*pBuffer);

Include Files




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


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


Pointer to the IppsRSAPublicKeyState context for each decryption operation.


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


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

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

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

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 .


Sizes of all moduli n in all the IppsRSAPrivateKeyState contexts in the pKeys array must be equal. Types of RSA private keys must be the same.

Return Values


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


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


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.


Indicates an error condition if types of RSA private keys are not the same.


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

Did you find the information on this page useful?

Characters remaining:

Feedback Message