AI_MD2WithRSAEncryption

AI_MD2WithRSAEncryption

Purpose:

This AI allows you to perform signature operations that involve the MD2 digest algorithm and RSA public key algorithm. The digest of a message is created using the MD2 algorithm and then it is signed using PKCS#1 digital signature algorithm. Other algorithms that can be used for the same purpose are AI_MD5WithRSAEncryption and AI_SHA1WithRSAEncryption. See AI_MD2WithRSAEncryptionBER for the same algorithm type with BER encoding.

Type of information this allows you to use:

the MD2 With RSA Encryption signature algorithm that uses the MD2 digest algorithm and the RSA algorithm to create and verify RSA digital signatures as defined in PKCS #1. Note that in order to perform PKCS #1 digital signatures with a 16-byte digest, the RSA key must be at least 360 bits long.

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_SignInit, B_SignUpdate, B_SignFinal, B_VerifyInit, B_VerifyUpdate, and

B_VerifyFinal. You may pass (B_ALGORITHM_OBJ)NULL_PTR for all randomAlgorithm arguments.

Algorithm methods to include in application’s algorithm chooser:

AM_MD2, and AM_RSA_CRT_ENCRYPT, AM_RSA_CRT_ENCRYPT_BLIND, or AM_RSA_ENCRYPT,

for signature creation; and AM_RSA_DECRYPT for signature verification.

AM_RSA_CRT_ENCRYPT_BLIND performs blinding to protect against timing attacks, whereas AM_RSA_CRT_ENCRYPT does not.

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

113

Page 123
Image 123
RSA Security 5 manual AIMD2WithRSAEncryption