Encrypts an entire message and generates its authentication tag in the GCM mode.
IppStatus ippsRijndael128GCMEncryptMessage(const Ipp8u* pKey, IppsRijndaelKeyLength keyLen, const Ipp8u* pIV, Ipp32u ivLen, const Ipp8u* pAAD, Ipp32u addLen, const Ipp8u* pSrc, Ipp8u* pDst, Ipp32u len, Ipp8u* pTag, Ipp32u tagLen);
pKey |
Pointer to the secret key. |
keyLen |
Length of the secret key. |
pIV |
Pointer to the initialization vector. |
ivLen |
Length of the initialization vector *pIV (in bytes). |
pAAD |
Pointer to the additional authenticated data (not to be encrypted). |
aadLen |
Length of the additional authenticated data *pAAD (in bytes). |
pSrc |
Pointer to the input plaintext data stream of a variable length. |
pDst |
Pointer to the resulting ciphertext data stream. |
len |
Length of the plaintext and ciphertext data stream (in bytes). |
pTag |
Pointer to the authentication tag. |
tagLen |
Length of the authentication tag *pTag (in bytes). |
This function is declared in the ippcp.h file. The function encrypts the input data stream of a variable length and computes the authentication tag according to GCM as specified in [NIST SP 800-38D]. Use this function if the entire message is available. Otherwise, use the incremental functions.
ippStsNoErr |
Indicates no error. Any other value indicates an error or warning. |
ippStsNullPtrErr |
Indicates an error condition if any of the specified pointers is NULL. |
ippStsLengthErr |
Indicates an error condition if the length parameters do not meet any of the following conditions: keyLen = IppsRijndaelKey128 or keyLen = IppsRijndaelKey192 or keyLen = IppsRijndaelKey256 ivLen > 0 1 ≤ tagLen ≤ 16. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.