--- a/epoc32/include/x509keys.h Wed Mar 31 12:27:01 2010 +0100
+++ b/epoc32/include/x509keys.h Wed Mar 31 12:33:34 2010 +0100
@@ -17,11 +17,10 @@
*/
-
-
/**
@file
- @internalTechnology
+ @publishedAll
+ @released
*/
#if !defined (__X509KEYS_H__)
@@ -41,14 +40,17 @@
class CASN1EncSequence;
class CASN1EncBitString;
+
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include <x509keyencoder.h>
+#endif
+
class CX509RSAPublicKey : public CRSAPublicKey
/** Adds the capability to decode DER-encoded RSA public keys.
*
* Adds a commitment to a specific encoding scheme allowing X.509 RSA public key
* superclasses to remain encoding-independent.
*
-* @publishedAll
-* @released
*
* @since v6.0
*/
@@ -95,8 +97,6 @@
/**
* Class for encoding RSA public keys to ASN.1 encoding.
*
- * @publishedAll
- * @released
* @since v8.0
*/
{
@@ -120,8 +120,6 @@
/**
* Class for decoding RSA public keys from ASN.1 DER encoding.
*
- * @publishedAll
- * @released
* @since v8.0
*/
{
@@ -141,8 +139,6 @@
/**
* Class for decoding RSA key pairs from ASN.1 DER encoding.
*
- * @publishedAll
- * @released
* @since v8.0
*/
{
@@ -171,8 +167,6 @@
* Adds a commitment to a specific encoding scheme allowing superclasses to remain
* encoding-independent.
*
-* @publishedAll
-* @released
* @since v6.0
*/
// DSA public key, params, signature.
@@ -256,8 +250,6 @@
/**
* Class for decoding DSA key pairs from ASN.1 DER encoding.
*
- * @publishedAll
- * @released
* @since v8.0
*/
{
@@ -292,8 +284,6 @@
/**
* Class for encoding DSA public keys to ASN.1 encoding.
*
- * @publishedAll
- * @released
* @since v8.0
*/
class TASN1EncDSAPublicKey
@@ -350,8 +340,6 @@
* Adds a commitment to a specific encoding scheme allowing superclasses to remain
* encoding-independent.
*
-* @publishedAll
-* @released
* @since v6.0 */
{
public:
@@ -394,8 +382,6 @@
/** Provides clients with the information they need for Diffie-Hellman key exchange
* within a protocol.
*
-* @publishedAll
-* @released
* @since v6.0 */
{
public:
@@ -429,8 +415,6 @@
class CX509DHKeyPair : public CDHKeyPair
/** This class represents the Diffie-Hellman Key Pair.
*
-* @publishedAll
-* @released
* @since v8.0 */
{
public:
@@ -470,8 +454,6 @@
* if the DH Public Key has been generated in conformance with the algorithm
* specified in ESDH (see RFC 2631).
*
-* @publishedAll
-* @released
* @since v6.0 */
{
public:
@@ -533,8 +515,6 @@
/** Encapsulates the compulsory Diffie-Hellman domain parameter values P and G
* (See RFC 2459).
*
-* @publishedAll
-* @released
* @since v6.0 */
{
public:
@@ -618,192 +598,4 @@
CX509DHValidationParams* iValidationParams;
};
-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.
- *
- * @internalTechnology
- */
- {
-public:
- /**
- * Constructor that takes an algorithm identifier and saves it into the
- * corresponding member variable. It is then used in the
- * EncodeSignatureAlgorithm() function.
- *
- * @param aDigestAlg Digest algorithm to use. Currently the following
- * algorithms are supported: MD2, MD5, and SHA-1.
- */
- IMPORT_C TX509KeyEncoder(TAlgorithmId aDigestAlg);
-
- /**
- * Produces the SubjectPublicKeyInfo encoding.
- *
- * The encoding has the following ASN.1 format:
- * @code
- * SubjectPublicKeyInfo {ALGORITHM : IOSet} ::= SEQUENCE {
- * algorithm AlgorithmIdentifier {{IOSet}},
- * subjectPublicKey BIT STRING
- * }
- * @endcode
- */
- IMPORT_C virtual CASN1EncBase* EncodeKeyLC() const = 0;
-
- /**
- * Produces the AlgorithmIdentifier encoding.
- *
- * @return ASN.1 sequence containing signature algorithm
- */
- IMPORT_C virtual CASN1EncSequence* EncodeSignatureAlgorithmLC() const = 0;
-
- /**
- * Produces the DigestAlgorithmIdentifier encoder.
- *
- * The encoding has the following ASN.1 format
- * @code
- * DigestAlgorithmIdentifier ::= SEQUENCE {
- * algorithm AlgorithmIdentifier,
- * parameters ANY DEFINED BY algorithm OPTIONAL }
- *
- * AlgorithmIdentifier ::= OBJECT IDENTIFIER
- * @endcode
- *
- * @return Appropriate ASN.1 sequence of type <code>DigestAlgorithmIdentifier</code>
- */
- IMPORT_C virtual CASN1EncSequence* EncodeDigestAlgorithmLC() const;
-
-protected:
- /** Digest algorithm to use. */
- TAlgorithmId iDigestAlg;
- };
-
-class TX509RSAKeyEncoder : public TX509KeyEncoder
-/**
- * Subclasses TC509KeyEncoder to provides key encoding capability for RSA public keys.
- *
- * This class is part of the pkcs10 API, and will be changed or removed in a
- * future release. You should not use it.
- *
- * @internalTechnology
- */
- {
-public:
- /**
- * Constructs a RSA key pair encoder, saving reference to the passed
- * key pair in the member variable.
- *
- * @param aPublicKey RSA public key to use for encoding.
- * @param aDigestAlg Digest algorithm to use.
- */
- IMPORT_C TX509RSAKeyEncoder(const CRSAPublicKey& aPublicKey, TAlgorithmId aDigestAlg);
-
- /**
- * Produces the SubjectPublicKeyInfo encoding.
- *
- * The resulting encoding has the following form:
- * @code
- * SEQUENCE-OF
- * SEQUENCE-OF
- * OID of the encryption algorithm (KRSA)
- * NULL
- * BIT STRING encoded public key.
- * @endcode
- *
- * @return DER-encoded public key information, placed on the cleanup stack.
- */
- IMPORT_C virtual CASN1EncBase* EncodeKeyLC() const;
-
- /**
- * Produces the AlgorithmIdentifier encoding.
- *
- * This has the following form:
- * @code
- * SEQUENCE-OF
- * OID signature-algorithm
- * NULL
- * @endcode
- *
- * @return ASN.1 sequence containing signature algorithm encoding,
- * placed on the cleanup stack.
- */
- IMPORT_C virtual CASN1EncSequence* EncodeSignatureAlgorithmLC() const;
-
-private:
- /**
- * Saved reference to the RSA public key to be used for encoding.
- */
- const CRSAPublicKey& iPublicKey;
- };
-
-class TX509DSAKeyEncoder : public TX509KeyEncoder
-/**
- * Provides key encoding and signing capability using a DSA public key.
- *
- * This class is part of the pkcs10 API, and will be changed or removed in a
- * future release. You should not use it.
- *
- * @internalTechnology
- */
- {
-public:
- /**
- * Constructs a DSA key pair encoder, saving reference to the passed
- * public key in the member variable.
- *
- * @param aKeyPublic DSA public key to use for encoding.
- * @param aDigestAlg Digest algorithm to use.
- */
- IMPORT_C TX509DSAKeyEncoder(const CDSAPublicKey& aKeyPublic,
- TAlgorithmId aDigestAlg);
-
- /**
- * Produces the SubjectPublicKeyInfo encoding.
- *
- * The ASN.1 encoding of a DSA key has the following form:
- * @code
- * SEQUENCE-OF
- * SEQUENCE-OF
- * OID dsa (1.2.840.10040.4.1)
- * SEQUENCE-OF
- * INTEGER p
- * INTEGER q
- * INTEGER g
- * BIT STRING
- * INTEGER public value (y)
- * @endcode
- *
- * @return DER-encoded public key information, placed on the cleanup stack.
- */
- IMPORT_C virtual CASN1EncBase* EncodeKeyLC() const;
-
- /**
- * Produces the AlgorithmIdentifier encoding.
- *
- * This has the following form:
- * @code
- * SEQUENCE-OF
- * OID dsa-signature-oid
- * SEQUENCE-OF dsa-params
- * INTEGER p
- * INTEGER q
- * INTEGER g
- * @endcode
- *
- * @return ASN.1 sequence containing signature algorithm encoding,
- * placed on the cleanup stack.
- */
- IMPORT_C virtual CASN1EncSequence* EncodeSignatureAlgorithmLC() const;
-
-private:
- /**
- * Saved reference to the DSA public key to be used for encoding.
- */
- const CDSAPublicKey& iPublicKey;
- };
-
#endif