TX509KeyEncoder Class Reference

class TX509KeyEncoder

Abstract class that is the base class for RSA and DSA key encoder classes. These classes are used to encode the X509 ASN.1 types AlgorithmIdentifier and SubjectPublicKeyInfo.

This class is part of the pkcs10 API, and will be changed or removed in a future release. You should not use it.

Public Member Functions
TX509KeyEncoder ( TAlgorithmId )
IMPORT_C CASN1EncSequence * EncodeDigestAlgorithmLC ()
IMPORT_C CASN1EncBase * EncodeKeyLC ()
IMPORT_C CASN1EncSequence * EncodeSignatureAlgorithmLC ()
Protected Attributes
TAlgorithmId iDigestAlg

Constructor & Destructor Documentation

TX509KeyEncoder(TAlgorithmId)

TX509KeyEncoder ( TAlgorithmId aDigestAlg )

Constructor that takes an algorithm identifier and saves it into the corresponding member variable. It is then used in the EncodeSignatureAlgorithm() function.

Parameters

TAlgorithmId aDigestAlg Digest algorithm to use. Currently the following algorithms are supported: MD2, MD5, and SHA-1.

Member Functions Documentation

EncodeDigestAlgorithmLC()

IMPORT_C CASN1EncSequence * EncodeDigestAlgorithmLC ( ) const [virtual]

Produces the DigestAlgorithmIdentifier encoder.

The encoding has the following ASN.1 format
         DigestAlgorithmIdentifier ::= SEQUENCE {
     algorithm AlgorithmIdentifier,
     parameters ANY DEFINED BY algorithm OPTIONAL }

   AlgorithmIdentifier ::= OBJECT IDENTIFIER
        

EncodeKeyLC()

IMPORT_C CASN1EncBase * EncodeKeyLC ( ) const [pure virtual]

Produces the SubjectPublicKeyInfo encoding.

The encoding has the following ASN.1 format:
         SubjectPublicKeyInfo {ALGORITHM : IOSet} ::= SEQUENCE {
     algorithm        AlgorithmIdentifier {{IOSet}},
     subjectPublicKey BIT STRING
     }
        

EncodeSignatureAlgorithmLC()

IMPORT_C CASN1EncSequence * EncodeSignatureAlgorithmLC ( ) const [pure virtual]

Produces the AlgorithmIdentifier encoding.

Member Data Documentation

TAlgorithmId iDigestAlg

TAlgorithmId iDigestAlg [protected]

Digest algorithm to use.