AI_EC_DSAWithDigest

AI_EC_DSAWithDigest

Purpose:

This AI allows you to create or verify SHA1 ECDSA signatures. It is passed the plaintext and computes the SHA1 digest as well as the ECDSA signature of that digest. See AI_EC_DSA for the ECDSA algorithm type without the SHA1 digest.

Type of information this allows you to use:

the specified digest algorithm combined with the ECDSA signature algorithm for performing ECDSA signing and verifying as defined in X9.62. The only digest method supported in this API is SHA1.

Format of info supplied to B_SetAlgorithmInfo:

pointer to a B_DIGEST_SPECIFIER structure:

typedef struct { B_INFO_TYPE digestInfoType; POINTER digestInfoParams;

} B_DIGEST_SPECIFIER;

Crypto-C 4.3 supports only AI_SHA1 as a digestInfoType, with NULL_PTR as the digestInfoParams.

Format of info returned by B_GetAlgorithmInfo:

pointer to a B_DIGEST_SPECIFIER structure.

Crypto-C procedures to use with algorithm object:

B_SignInit, B_SignUpdate, B_SignFinal, B_VerifyInit, B_VerifyUpdate, and

B_VerifyFinal. You must pass an initialized random algorithm in B_SignFinal, but may pass (B_ALGORITHM_OBJ)NULL_PTR for all other randomAlgorithm arguments.

Algorithm methods to include in application's algorithm chooser:

For signing, AM_ECFP_DSA_SIGN for odd prime fields and AM_ECF2POLY_DSA_SIGN for an even characteristic. For verifying, AM_ECFP_DSA_VERIFY for odd prime fields and

6 8

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 78
Image 78
RSA Security 5 manual AIECDSAWithDigest, Pointer to a Bdigestspecifier structure