cryptoservices/certificateandkeymgmt/inc/signed.h
changeset 8 35751d3474b7
parent 0 2c201484c85f
child 17 cd501b96611d
equal deleted inserted replaced
2:675a964f4eb5 8:35751d3474b7
    14 * Description: 
    14 * Description: 
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 
    18 
    19 
       
    20 
       
    21 /**
    19 /**
    22  @file 
    20  @file 
    23  @internalAll
    21  @publishedAll
       
    22  @released
    24 */
    23 */
    25  
    24  
    26 #ifndef __SIGNED_H__
    25 #ifndef __SIGNED_H__
    27 #define __SIGNED_H__
    26 #define __SIGNED_H__
    28 
    27 
    36 class CDSASignature;
    35 class CDSASignature;
    37 class CDSAParameters;
    36 class CDSAParameters;
    38 
    37 
    39 /**  Enumerates the identity of the algorithm.
    38 /**  Enumerates the identity of the algorithm.
    40  *
    39  *
    41  * @publishedAll
       
    42  * @released
       
    43  */
    40  */
    44 enum TAlgorithmId
    41 enum TAlgorithmId
    45 	{
    42 	{
    46 	/** An RSA algorithm. */
    43 	/** An RSA algorithm. */
    47 	ERSA,
    44 	ERSA,
    58 	};
    55 	};
    59 
    56 
    60 class CValidityPeriod : public CBase
    57 class CValidityPeriod : public CBase
    61 /** The period for which the certificate is valid. 
    58 /** The period for which the certificate is valid. 
    62 * 
    59 * 
    63 * @publishedAll
       
    64 * @released
       
    65 * @since v6.0 */
    60 * @since v6.0 */
    66 	{
    61 	{
    67 public:
    62 public:
    68 	/** Tests whether the specified date and time is within the validity period.
    63 	/** Tests whether the specified date and time is within the validity period.
    69 	* 
    64 	* 
   102 /** Contains an algorithm ID and any encoded parameters required by that algorithm.
    97 /** Contains an algorithm ID and any encoded parameters required by that algorithm.
   103 * 
    98 * 
   104 * An object of this type creates and owns a heap descriptor to contain the encoded 
    99 * An object of this type creates and owns a heap descriptor to contain the encoded 
   105 * parameters. 
   100 * parameters. 
   106 * 
   101 * 
   107 * @publishedAll
       
   108 * @released
       
   109 * @since v6.0 */
   102 * @since v6.0 */
   110 	{
   103 	{
   111 public:
   104 public:
   112 	/** Creates a new algorithm ID object copied from an existing object.	
   105 	/** Creates a new algorithm ID object copied from an existing object.	
   113 	* 
   106 	* 
   191 class CSigningAlgorithmIdentifier : public CBase
   184 class CSigningAlgorithmIdentifier : public CBase
   192 /** Contains two CAlgorithmIdentifier objects for comparison purposes.
   185 /** Contains two CAlgorithmIdentifier objects for comparison purposes.
   193 * 
   186 * 
   194 * Implements an equality operator. 
   187 * Implements an equality operator. 
   195 * 
   188 * 
   196 * @publishedAll
       
   197 * @released
       
   198 * @since v6.0 */
   189 * @since v6.0 */
   199 	{
   190 	{
   200 public:
   191 public:
   201 	/** Constructs a new Signing Algorithm Identifier object, copying an existing Signing 
   192 	/** Constructs a new Signing Algorithm Identifier object, copying an existing Signing 
   202 	* Algorithm Identifier object.
   193 	* Algorithm Identifier object.
   252 class CSubjectPublicKeyInfo : public CBase
   243 class CSubjectPublicKeyInfo : public CBase
   253 /** A base class for a container that holds information about a subject public key.
   244 /** A base class for a container that holds information about a subject public key.
   254 * 
   245 * 
   255 * It contains the algorithm ID, the encoded public key and the encoded parameters. 
   246 * It contains the algorithm ID, the encoded public key and the encoded parameters. 
   256 * 
   247 * 
   257 * @publishedAll
       
   258 * @released
       
   259 * @since v6.0 
   248 * @since v6.0 
   260 */
   249 */
   261 //algorithm ID + encoded public key + encoded parameters
   250 //algorithm ID + encoded public key + encoded parameters
   262 	{
   251 	{
   263 public:
   252 public:
   314 * @li CWTLSRSASignatureResult
   303 * @li CWTLSRSASignatureResult
   315 * @li CPKCS1SignatureResult.
   304 * @li CPKCS1SignatureResult.
   316 *
   305 *
   317 * @see TKeyFactory::RSASignatureResultL()
   306 * @see TKeyFactory::RSASignatureResultL()
   318 *
   307 *
   319 * @publishedAll
       
   320 * @released
       
   321 * @since v6.0 */
   308 * @since v6.0 */
   322 	{
   309 	{
   323 public:
   310 public:
   324 	/** Tests whether the signature result is valid.
   311 	/** Tests whether the signature result is valid.
   325 	* 
   312 	* 
   349 //signed object
   336 //signed object
   350 class TKeyFactory
   337 class TKeyFactory
   351 /** Constructs the public key objects used for signature verification from their 
   338 /** Constructs the public key objects used for signature verification from their 
   352 * encoded binary form. 
   339 * encoded binary form. 
   353 * 
   340 * 
   354 * @publishedAll
       
   355 * @released
       
   356 * @since v6.0 */
   341 * @since v6.0 */
   357 	{
   342 	{
   358 public:
   343 public:
   359 	/** Gets the RSA public key.
   344 	/** Gets the RSA public key.
   360 	* 
   345 	* 
   395 /** Contains the parameter information required by some signing algorithms.
   380 /** Contains the parameter information required by some signing algorithms.
   396 * 
   381 * 
   397 * The DSA signing algorithm needs parameters as well as a key. Currently, this 
   382 * The DSA signing algorithm needs parameters as well as a key. Currently, this 
   398 * class only contains DSA parameters. 
   383 * class only contains DSA parameters. 
   399 * 
   384 * 
   400 * @publishedAll
       
   401 * @released
       
   402 * @since v6.0 */
   385 * @since v6.0 */
   403 	{
   386 	{
   404 public:
   387 public:
   405 	/** Creates a new signing key parameters object.
   388 	/** Creates a new signing key parameters object.
   406 	* 
   389 	* 
   450 
   433 
   451 
   434 
   452 class CSignedObject : public CBase
   435 class CSignedObject : public CBase
   453 /** Base class for certificates. 
   436 /** Base class for certificates. 
   454 * 
   437 * 
   455 * @publishedAll
       
   456 * @released
       
   457 * @since v6.0 */
   438 * @since v6.0 */
   458 	{
   439 	{
   459 public:	
   440 public:	
   460 	/** Verifies a signature using the specified encoded key.
   441 	/** Verifies a signature using the specified encoded key.
   461 	* 
   442 	* 
   576 * A certificate is a signed object, and adds a serial number, a validity period 
   557 * A certificate is a signed object, and adds a serial number, a validity period 
   577 * and a subject public key.
   558 * and a subject public key.
   578 * 
   559 * 
   579 * This is a base class for classes that implement certificates of particular types. 
   560 * This is a base class for classes that implement certificates of particular types. 
   580 * 
   561 * 
   581 * @publishedAll
       
   582 * @released
       
   583 * @since v6.0 */
   562 * @since v6.0 */
   584 	{
   563 	{
   585 public:
   564 public:
   586 	/** Destructor.
   565 	/** Destructor.
   587 	* 
   566 	*