cryptoservices/certificateandkeymgmt/inc/x509cert.h
changeset 8 35751d3474b7
parent 0 2c201484c85f
child 17 cd501b96611d
equal deleted inserted replaced
2:675a964f4eb5 8:35751d3474b7
    15 * X509 certificate implementation
    15 * X509 certificate implementation
    16 *
    16 *
    17 */
    17 */
    18 
    18 
    19 
    19 
    20 
       
    21 
       
    22 /**
    20 /**
    23  @file 
    21  @file 
    24  @internalAll
    22  @publishedAll
       
    23  @released
    25 */
    24 */
    26  
    25  
    27 #ifndef __X509CERT_H__
    26 #ifndef __X509CERT_H__
    28 #define __X509CERT_H__
    27 #define __X509CERT_H__
    29 
    28 
    57 class CDSAParameters;
    56 class CDSAParameters;
    58 
    57 
    59 class CPKCS1SignatureResult : public CRSASignatureResult
    58 class CPKCS1SignatureResult : public CRSASignatureResult
    60 /** The signature result in PKCS#1 format.
    59 /** The signature result in PKCS#1 format.
    61 * 
    60 * 
    62 * @publishedAll
       
    63 * @released
       
    64 * @since v6.0 */
    61 * @since v6.0 */
    65 	{
    62 	{
    66 public:
    63 public:
    67 	/** Creates a new algorithm ID object copied from an existing object.
    64 	/** Creates a new algorithm ID object copied from an existing object.
    68 	* 
    65 	* 
    91 
    88 
    92 class TX509KeyFactory : public TKeyFactory
    89 class TX509KeyFactory : public TKeyFactory
    93 /** Constructs the public key objects used for signature verification, from their 
    90 /** Constructs the public key objects used for signature verification, from their 
    94 * encoded binary form, for X.509 certificates.
    91 * encoded binary form, for X.509 certificates.
    95 * 
    92 * 
    96 * @publishedAll
       
    97 * @released
       
    98 * @since v6.0 */
    93 * @since v6.0 */
    99 	{
    94 	{
   100 public:
    95 public:
   101 	/** Gets the RSA public key from the encoding key.
    96 	/** Gets the RSA public key from the encoding key.
   102 	* 
    97 	* 
   141 	};
   136 	};
   142 
   137 
   143 class CX509ValidityPeriod : public CValidityPeriod
   138 class CX509ValidityPeriod : public CValidityPeriod
   144 /** The period for which an X.509 certificate is valid.
   139 /** The period for which an X.509 certificate is valid.
   145 * 
   140 * 
   146 * @publishedAll
       
   147 * @released
       
   148 * @since v6.0 */
   141 * @since v6.0 */
   149 	{
   142 	{
   150 public:
   143 public:
   151 	/** Creates a new X.509 validity period object from the specified buffer containing 
   144 	/** Creates a new X.509 validity period object from the specified buffer containing 
   152 	* the binary coded representation.
   145 	* the binary coded representation.
   192 	};
   185 	};
   193 
   186 
   194 class CX509AlgorithmIdentifier : public CAlgorithmIdentifier
   187 class CX509AlgorithmIdentifier : public CAlgorithmIdentifier
   195 /** Algorithm identifier for an X.509 certificate.
   188 /** Algorithm identifier for an X.509 certificate.
   196 *
   189 *
   197 * @publishedAll
       
   198 * @released
       
   199 * @since v6.0 */
   190 * @since v6.0 */
   200 	{
   191 	{
   201 public:
   192 public:
   202 	/** Creates a new X.509 algorithm identifier object from the specified buffer containing 
   193 	/** Creates a new X.509 algorithm identifier object from the specified buffer containing 
   203 	* the binary coded representation.
   194 	* the binary coded representation.
   264 	};
   255 	};
   265 
   256 
   266 class CX509SigningAlgorithmIdentifier : public CSigningAlgorithmIdentifier
   257 class CX509SigningAlgorithmIdentifier : public CSigningAlgorithmIdentifier
   267 /** Encapsulates the IDs of the algorithms used for signing an X.509 certificate.
   258 /** Encapsulates the IDs of the algorithms used for signing an X.509 certificate.
   268 *
   259 *
   269 * @publishedAll
       
   270 * @released
       
   271 * @since v6.0 */
   260 * @since v6.0 */
   272 	{
   261 	{
   273 public:
   262 public:
   274 	/** Creates a new X.509 signing algorithm Id object from the specified buffer containing 
   263 	/** Creates a new X.509 signing algorithm Id object from the specified buffer containing 
   275 	* the binary coded representation.
   264 	* the binary coded representation.
   320 	};
   309 	};
   321 
   310 
   322 class CX509SubjectPublicKeyInfo : public CSubjectPublicKeyInfo
   311 class CX509SubjectPublicKeyInfo : public CSubjectPublicKeyInfo
   323 /** X.509 subject public key information.
   312 /** X.509 subject public key information.
   324 * 
   313 * 
   325 * @publishedAll
       
   326 * @released
       
   327 * @since v6.0 */
   314 * @since v6.0 */
   328 	{
   315 	{
   329 public:
   316 public:
   330 	/** Creates a new X.509 subject public key object from the specified buffer containing 
   317 	/** Creates a new X.509 subject public key object from the specified buffer containing 
   331 	* the binary coded representation.
   318 	* the binary coded representation.
   370 * by an instance of this class and uses it to create the specific extension.
   357 * by an instance of this class and uses it to create the specific extension.
   371 * 
   358 * 
   372 * Consists of an any-defined-by structure along with a boolean flag saying whether 
   359 * Consists of an any-defined-by structure along with a boolean flag saying whether 
   373 * the extension is critical or not.
   360 * the extension is critical or not.
   374 * 
   361 * 
   375 * @publishedAll
       
   376 * @released
       
   377 * @since v6.0 */
   362 * @since v6.0 */
   378 	{
   363 	{
   379 public:
   364 public:
   380 	/** Creates a new generic X.509 certificate extension object from an existing object.
   365 	/** Creates a new generic X.509 certificate extension object from an existing object.
   381 	* 
   366 	* 
   491 	};
   476 	};
   492 
   477 
   493 class CX509Certificate : public CCertificate
   478 class CX509Certificate : public CCertificate
   494 /** An X.509 certificate.
   479 /** An X.509 certificate.
   495 * 
   480 * 
   496 * @publishedAll
       
   497 * @released
       
   498 * @since v6.0 */
   481 * @since v6.0 */
   499 	{
   482 	{
   500 public:
   483 public:
   501 /** Enumerates values for encoded data element positions in the TBSCertificate data structure.
   484 /** Enumerates values for encoded data element positions in the TBSCertificate data structure.
   502 * 
   485 *