AI_CBC_IV16
20 RSA BSAFE Crypto-C Library Reference Manual
AI_CBC_IV16
Purpose:
This AI allows you to change the initialization vector (IV) for a CBC-mode cipher
without creating a new algorithm object or binding in a new key. This increases the
performance of applications that have a long-lived symmetric key (for example, an
RC6 key) used to encrypt many blocks or messages, each with a unique IV.
Type of information this allows you to use:
a new 16-byte initialization vector for an existing CBC algorithm object previously
initialized with one of the following AIs:
AI_RC6_CBC, AI_RC6_CBCPad
Format of info supplied to B_SetAlgorithmInfo:
pointer to a 16-byte unsigned char array containing the new initialization vector. This
new initialization vector will not affect the current algorithm object until the next call
to B_EncryptInit, B_EncryptFinal, B_DecryptInit, or B_DecryptFinal. After the
new IV takes effect on the algorithm object, any results from a previous call to
B_GetAlgorithmInfo on the algorithm object are undefined.
Format of info returned by B_GetAlgorithmInfo:
B_GetAlgorithmInfo is not supported for AI_CBC_IV16.
Crypto-C procedures to use with algorithm object:
B_SetAlgorithmInfo.