A SERVICE OF

logo

Chapter 2 Algorithm Info Types 225
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.