# QCA::CipherContext Class Reference
[QCA provider API]

Cipher provider. More...

`#include <QtCrypto>`

Inheritance diagram for QCA::CipherContext:

Collaboration diagram for QCA::CipherContext:

[legend]

List of all members.

## Public Member Functions

virtual int | blockSize () const =0
| CipherContext (Provider *p, const QString &type)
virtual bool | final (SecureArray *out)=0
virtual KeyLength | keyLength () const =0
virtual void | setup (Direction dir, const SymmetricKey &key, const InitializationVector &iv)=0
virtual bool | update (const SecureArray &in, SecureArray *out)=0

## Detailed Description

Cipher provider.

Note:
  This class is part of the provider plugin interface and should not be used directly by applications. You probably want Cipher instead.

## Constructor & Destructor Documentation

QCA::CipherContext::CipherContext | ( | Provider * | p,
|  | const QString & | type |
| ) |  |  | `[inline]`

Standard constructor.

Parameters:

  | p | the provider associated with this context
  | type | the name of the type of cipher provided by this context

Note:
  type includes the name of the cipher (e.g. "aes256"), the operating mode (e.g. "cbc" or "ofb") and the padding type (e.g. "pkcs7") if any.

## Member Function Documentation

virtual int QCA::CipherContext::blockSize | ( |  | ) | const`[pure virtual]`

Returns the block size for this cipher.

virtual bool QCA::CipherContext::final | ( | SecureArray * | out | ) | `[pure virtual]`

Finish the cipher processing.

Returns true if successful.

Parameters:

  | out | pointer to an array that should store the result

virtual KeyLength QCA::CipherContext::keyLength | ( |  | ) | const`[pure virtual]`

Returns the KeyLength for this cipher.

virtual void QCA::CipherContext::setup | ( | Direction | dir,
|  | const SymmetricKey & | key,
|  | const InitializationVector & | iv |
| ) |  |  | `[pure virtual]`

Set up the object for encrypt/decrypt.

Parameters:

  | dir | the direction for the cipher (encryption/decryption)
  | key | the symmetric key to use for the cipher
  | iv | the initialization vector to use for the cipher (not used in ECB mode)

virtual bool QCA::CipherContext::update | ( | const SecureArray & | in,
|  | SecureArray * | out |
| ) |  |  | `[pure virtual]`

Process a chunk of data.

Returns true if successful.

Parameters:

  | in | the input data to process
  | out | pointer to an array that should store the result

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

- qcaprovider.h