AI_SHA1_BER

AI_SHA1_BER

Purpose:

This AI is similar to AI_SHA1 except that it uses the ASN.1 BER format. This AI allows you to parse and create ASN.1 algorithm identifiers such as those used in PKCS #7 and other protocols. You call B_SetAlgorithmInfo to initialize an algorithm object from the encoded algorithm identifier. You call B_GetAlgorithmInfo with this AI to create an encoded algorithm identifier from an algorithm object that was created using AI_SHA1 or AI_SHA1_BER. The OID for this algorithm, excluding the tag and length bytes, in decimal is “43, 14, 3, 2, 26”.

Type of information this allows you to use:

the encoding of an algorithm identifier that specifies the SHA1 message digest algorithm as defined in FIPS PUB 180-1.

Format of info supplied to B_SetAlgorithmInfo:

pointer to an ITEM structure that gives the address and length of the BER-encoded algorithm identifier. The encoding is converted to DER before it is copied to the algorithm object. B_SetAlgorithmInfo returns BE_WRONG_ALGORITHM_INFO if the algorithm identifier specifies a message digest algorithm other than SHA1.

Format of info returned by B_GetAlgorithmInfo:

pointer to an ITEM structure that gives the address and length of the DER-encoded algorithm identifier.

Crypto-C procedures to use with algorithm object:

B_DigestInit, B_DigestUpdate, and B_DigestFinal. Supply NULL_PTR for the keyObject argument in B_DigestInit.

Algorithm methods to include in application’s algorithm chooser:

AM_SHA.

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

225

Page 235
Image 235
RSA Security 5 manual AISHA1BER