# QCA::CMS Class Reference
[QCA user API]

Cryptographic Message Syntax messaging system. More...

`#include <QtCrypto>`

Inheritance diagram for QCA::CMS:

Collaboration diagram for QCA::CMS:

[legend]

List of all members.

## Public Member Functions

| CMS (QObject *parent=0, const QString &provider=QString())
SecureMessageKeyList | privateKeys () const
void | setPrivateKeys (const SecureMessageKeyList &keys)
void | setTrustedCertificates (const CertificateCollection &trusted)
void | setUntrustedCertificates (const CertificateCollection &untrusted)
CertificateCollection | trustedCertificates () const
CertificateCollection | untrustedCertificates () const

## Detailed Description

Cryptographic Message Syntax messaging system.

Cryptographic Message Syntax (CMS) "is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. The CMS describes an encapsulation syntax for data protection. It supports digital signatures and encryption. The syntax allows multiple encapsulations; one encapsulation envelope can be nested inside another. Likewise, one party can digitally sign some previously encapsulated data. It also allows arbitrary attributes, such as signing time, to be signed along with the message content, and provides for other attributes such as countersignatures to be associated with a signature." (from RFC3852 "Cryptographic Message Syntax")

See also:
  SecureMessage

  SecureMessageKey

Examples:

  publickeyexample.cpp.

## Constructor & Destructor Documentation

QCA::CMS::CMS | ( | QObject * | parent = `0`,
|  | const QString & | provider = `QString()` |
| ) |  |  | `[explicit]`

Standard constructor.

Parameters:

  | parent | the parent object for this object
  | provider | the provider to use, if a specific provider is required

## Member Function Documentation

SecureMessageKeyList QCA::CMS::privateKeys | ( |  | ) | const

Return the private keys set for this object.

void QCA::CMS::setPrivateKeys | ( | const SecureMessageKeyList & | keys | ) |

Set the private keys to use for the messages built using this CMS object.

Keys are required for decrypting and signing (not for encrypting or verifying).

Parameters:

  | keys | the collection of keys to use

void QCA::CMS::setTrustedCertificates | ( | const CertificateCollection & | trusted | ) |

Set the trusted certificates to use for the messages built using this CMS object.

Parameters:

  | trusted | the collection of trusted certificates to use

void QCA::CMS::setUntrustedCertificates | ( | const CertificateCollection & | untrusted | ) |

Set the untrusted certificates to use for the messages built using this CMS object.

This function is useful when verifying messages that don't contain the certificates (or intermediate signers) within the CMS blob. In order to verify such messages, you'll have to pass the possible signer certs with this function.

Parameters:

  | untrusted | the collection of untrusted certificates to use

CertificateCollection QCA::CMS::trustedCertificates | ( |  | ) | const

Return the trusted certificates set for this object.

CertificateCollection QCA::CMS::untrustedCertificates | ( |  | ) | const

Return the untrusted certificates set for this object.

The documentation for this class was generated from the following file:

- qca_securemessage.h