(B_ALGORITHM_OBJ)NULL_PTR and B_DecryptFinal.

AI_SET_OAEP_RSAPrivate

AI_SET_OAEP_RSAPrivate

Purpose:

This AI allows you to decrypt data encrypted using AI_SET_OAEP_RSAPublic. This algorithm is used by the Secure Electronic Transaction (SET) protocol defined by Visa and MasterCard in the SET 1.0 specification released August 1, 1996. It replaces PKCS #1 v1.5 padding with a form of Optimal Asymmetric Encryption Padding (OAEP) that was developed for the SET protocol. OAEP provides protection against cryptanalytic attacks on the padding algorithm which are possible when most of the message being encrypted is known to the attacker. A more standard form of OAEP is now part of version 2.0 of the PKCS #1 standard and is implemented by AI_PKCS_OAEP_RSAPrivate and AI_PKCS_OAEP_RSAPublic.

Type of information this allows you to use:

the RSA algorithm for performing private-key decryption following the OAEP procedure outlined in the Aug. 1, 1996 version of the SET specifications.

Format of info supplied to B_SetAlgorithmInfo:

NULL_PTR.

Format of info returned by B_GetAlgorithmInfo:

NULL_PTR.

Crypto-C procedures to use with algorithm object:

B_EncryptInit, B_EncryptUpdate, and B_EncryptFinal for encryption, and B_DecryptInit, B_DecryptUpdate, and B_DecryptFinal for decryption. B_EncryptUpdate and B_EncryptFinal require a random algorithm. You may pass

for the randomAlgorithm argument in B_DecryptUpdate

Algorithm methods to include in application’s algorithm chooser:

AM_RSA_CRT_ENCRYPT or AM_RSA_CRT_ENCRYPT_BLIND for encryption and AM_RSA_CRT_DECRYPT or AM_RSA_CRT_DECRYPT_BLIND for decryption. AM_RSA_CRT_ENCRYPT_BLIND and AM_RSA_CRT_DECRYPT_BLIND will perform blinding to

2 2 0

R S A B S A F E C r y p t o - C L i b r a r y R e f e r e n c e M a n u a l

Page 230
Image 230
RSA Security 5 manual AISETOAEPRSAPrivate, For the randomAlgorithm argument in BDecryptUpdate