Rijndael128GCMEncryptMessage

Encrypts an entire message and generates its authentication tag in the GCM mode.

Syntax

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);

Parameters

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).

Description

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.

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 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.


Submit feedback on this help topic

Copyright © 2000 - 2011, Intel Corporation. All rights reserved.