AESDecryptCBC_CS
AESDecryptCBC_CS
Decrypts plaintext in the CBC ciphertext stealing mode of the AES block cipher.
Syntax
IppStatus ippsAESDecryptCBC_CS1(const Ipp8u*
pSrc
, Ipp8u*
pDst
, int
len
, const IppsAESSpec*
pCtx
, const Ipp8u*
pIV
);
IppStatus ippsAESDecryptCBC_CS2(const Ipp8u*
pSrc
, Ipp8u*
pDst
, int
len
, const IppsAESSpec*
pCtx
, const Ipp8u*
pIV
);
IppStatus ippsAESDecryptCBC_CS3(const Ipp8u*
pSrc
, Ipp8u*
pDst
, int
len
, const IppsAESSpec*
pCtx
, const Ipp8u*
pIV
);
Include Files
ippcp.h
Parameters
- pSrc
- Pointer to the input ciphertext data of variable length.
- pDst
- Pointer to the resulting plaintext data.
- len
- Length of the input data stream in bytes.
- pCtx
- Pointer to theIppsAESSpeccontext.
- pIV
- Pointer to the initialization vector for the CBC mode operation.
Description
These functions decrypt the input data stream according to the three variants of the Cipher Block Chaining (CBC) mode with Ciphertext Stealing (CS), as specified in [NIST SP 800-38A A.].
Return Values
- ippStsNoErr
- Indicates no error. Any other value indicates an error or warning.
- ippStsNullPtrErr
- Indicates an error condition if any of the specified pointers isNULL.
- ippStsLengthErr
- ForAESDecryptCBC_CS1andAESDecryptCBC_CS2, indicates an error condition if the input data length is less than the cipher block size.
- ForAESDecryptCBC_CS3, indicates an error condition if the input data length is less than or equal to the cipher block size.
- ippStsContextMatchErr
- Indicates an error condition if the context parameter does not match the operation.