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

Diffie-Hellman provider. More...

`#include <QtCrypto>`

Inheritance diagram for QCA::DHContext:

Collaboration diagram for QCA::DHContext:

[legend]

List of all members.

## Public Member Functions

virtual void | createPrivate (const DLGroup &domain, const BigInteger &y, const BigInteger &x)=0
virtual void | createPrivate (const DLGroup &domain, bool block)=0
virtual void | createPublic (const DLGroup &domain, const BigInteger &y)=0
| DHContext (Provider *p)
virtual DLGroup | domain () const =0
virtual BigInteger | x () const =0
virtual BigInteger | y () const =0

## Detailed Description

Diffie-Hellman provider.

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

## Constructor & Destructor Documentation

QCA::DHContext::DHContext | ( | Provider * | p | ) | `[inline]`

Standard constructor.

Parameters:

  | p | the provider associated with this context

## Member Function Documentation

virtual void QCA::DHContext::createPrivate | ( | const DLGroup & | domain,
|  | const BigInteger & | y,
|  | const BigInteger & | x |
| ) |  |  | `[pure virtual]`

Create a Diffie-Hellman private key based on its numeric components.

Parameters:

  | domain | the domain values to use for generation
  | y | the public Y component
  | x | the private X component

virtual void QCA::DHContext::createPrivate | ( | const DLGroup & | domain,
|  | bool | block |
| ) |  |  | `[pure virtual]`

Generate a Diffie-Hellman private key.

If block is true, then this function blocks until completion. Otherwise, this function returns immediately and finished() is emitted when the operation completes.

If an error occurs during generation, then the operation will complete and isNull() will return true.

Parameters:

  | domain | the domain values to use for generation
  | block | whether to use blocking mode

virtual void QCA::DHContext::createPublic | ( | const DLGroup & | domain,
|  | const BigInteger & | y |
| ) |  |  | `[pure virtual]`

Create a Diffie-Hellman public key based on its numeric components.

Parameters:

  | domain | the domain values to use for generation
  | y | the public Y component

virtual DLGroup QCA::DHContext::domain | ( |  | ) | const`[pure virtual]`

Returns the public domain component of this Diffie-Hellman key.

virtual BigInteger QCA::DHContext::x | ( |  | ) | const`[pure virtual]`

Returns the private X component of this Diffie-Hellman key.

virtual BigInteger QCA::DHContext::y | ( |  | ) | const`[pure virtual]`

Returns the public Y component of this Diffie-Hellman key.

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

- qcaprovider.h