AI_DESX_CBCPadBER

AI_DESX_CBCPadIV8

AI_DESX_CBCPadIV8

Purpose:

This AI allows you to perform DESX encryption or decryption in CBC mode. It is initialized with an 8-byte IV and operates on data that is any byte length. The padding mode is PKCS #5, which makes the ciphertext 1 to 8 bytes longer than the plaintext. See AI_DESX_CBC_IV8 for the same algorithm type with no padding. See

for the same algorithm type with BER encoding.

Type of information this allows you to use:

an 8-byte initialization vector for the DESX-CBC encryption algorithm, as defined by RSA Security Inc., with padding scheme defined in PKCS #5.

Format of info supplied to B_SetAlgorithmInfo:

pointer to an unsigned char array that holds the 8 bytes of the initialization vector.

Format of info returned by B_GetAlgorithmInfo:

pointer to an unsigned char array that holds the 8 bytes of the initialization vector.

Crypto-C procedures to use with algorithm object:

B_EncryptInit, B_EncryptUpdate, B_EncryptFinal, B_DecryptInit,

B_DecryptUpdate, and B_DecryptFinal. You may pass (B_ALGORITHM_OBJ)NULL_PTR for all randomAlgorithm arguments.

Algorithm methods to include in application’s algorithm chooser:

AM_DESX_CBC_ENCRYPT for encryption and AM_DESX_CBC_DECRYPT for decryption.

Key info types for keyObject in B_EncryptInit or B_DecryptInit:

KI_DES24Strong, KI_24Byte, KI_Item (if the length of the ITEM is 24), KI_DESX, or KI_DESX_BSAFE1.

C h a p t e r 2 A l g o r i t h m I n f o Ty p e s

43

Page 53
Image 53
RSA Security 5 manual AIDESXCBCPadIV8