AI_MD5WithRSAEncryption

AI_MD5WithRSAEncryption

Purpose:

This AI allows you to perform signature operations that involve the MD5 digest algorithm and the RSA public-key algorithm. The digest of a message is created using the MD5 algorithm and then it is signed using PKCS#1 digital signature algorithm. Other algorithms that can be used for the same purpose are AI_MD2WithRSAEncryption and AI_SHA1WithRSAEncryption.

Type of information this allows you to use:

the MD5 With RSA signature algorithm that uses the MD5 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.

1 3 2

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 142
Image 142
RSA Security manual AIMD5WithRSAEncryption