QCA::PKeyBase

Search for usage in LXR

QCA::PKeyBase Class Referenceabstract

#include <QtCrypto>

Inheritance diagram for QCA::PKeyBase:

Signals

void finished ()
 

Public Member Functions

 PKeyBase (Provider *p, const QString &type)
 
virtual int bits () const =0
 
virtual bool canExport () const =0
 
virtual void convertToPublic ()=0
 
virtual bool decrypt (const SecureArray &in, SecureArray *out, EncryptionAlgorithm alg)
 
virtual SymmetricKey deriveKey (const PKeyBase &theirs)
 
virtual SecureArray encrypt (const SecureArray &in, EncryptionAlgorithm alg)
 
virtual QByteArray endSign ()
 
virtual bool endVerify (const QByteArray &sig)
 
virtual bool isNull () const =0
 
virtual bool isPrivate () const =0
 
virtual int maximumEncryptSize (EncryptionAlgorithm alg) const
 
virtual void startSign (SignatureAlgorithm alg, SignatureFormat format)
 
virtual void startVerify (SignatureAlgorithm alg, SignatureFormat format)
 
virtual PKey::Type type () const =0
 
virtual void update (const MemoryRegion &in)
 

Additional Inherited Members

- Protected Member Functions inherited from QCA::BasicContext
 BasicContext (const BasicContext &from)
 
 BasicContext (Provider *parent, const QString &type)
 

Detailed Description

Public key implementation provider base.

Note
This class is part of the provider plugin interface and should not be used directly by applications. You probably want PKey, PublicKey, or PrivateKey instead.

Definition at line 522 of file qcaprovider.h.

Constructor & Destructor Documentation

◆ PKeyBase()

QCA::PKeyBase::PKeyBase ( Provider * p,
const QString & type )

Standard constructor.

Parameters
pthe Provider associated with this context
typetype of key provided by this context

Member Function Documentation

◆ bits()

virtual int QCA::PKeyBase::bits ( ) const
pure virtual

Returns the number of bits in the key.

◆ canExport()

virtual bool QCA::PKeyBase::canExport ( ) const
pure virtual

Returns true if the components of this key are accessible and whether it can be serialized into an output format.

Private keys from a smart card device will often not be exportable.

◆ convertToPublic()

virtual void QCA::PKeyBase::convertToPublic ( )
pure virtual

If the key is a private key, this function will convert it into a public key (all private key data includes the public data as well, which is why this is possible).

If the key is already a public key, then this function has no effect.

◆ decrypt()

virtual bool QCA::PKeyBase::decrypt ( const SecureArray & in,
SecureArray * out,
EncryptionAlgorithm alg )
virtual

Decrypt data.

Parameters
inthe input data to decrypt
outpointer to an array to store the plaintext result
algthe encryption algorithm used to generate the input data

◆ deriveKey()

virtual SymmetricKey QCA::PKeyBase::deriveKey ( const PKeyBase & theirs)
virtual

Compute a symmetric key based on this private key and some other public key.

Essentially for Diffie-Hellman only.

Parameters
theirsthe other side (public key) to be used for key generation.

◆ encrypt()

virtual SecureArray QCA::PKeyBase::encrypt ( const SecureArray & in,
EncryptionAlgorithm alg )
virtual

Encrypt data.

Parameters
inthe input data to encrypt
algthe encryption algorithm to use

◆ endSign()

virtual QByteArray QCA::PKeyBase::endSign ( )
virtual

Complete a signing operation, and return the signature value.

If there is an error signing, an empty array is returned.

◆ endVerify()

virtual bool QCA::PKeyBase::endVerify ( const QByteArray & sig)
virtual

Complete a verify operation, and return true if successful.

If there is an error verifying, this function returns false.

Parameters
sigthe signature to verify with the input data

◆ finished

void QCA::PKeyBase::finished ( )
signal

Emitted when an asynchronous operation completes on this key.

Such operations will be documented that they emit this signal.

◆ isNull()

virtual bool QCA::PKeyBase::isNull ( ) const
pure virtual

Returns true if this object is not valid.

This is the default state, and the object may also become this state if a conversion or generation function fails.

◆ isPrivate()

virtual bool QCA::PKeyBase::isPrivate ( ) const
pure virtual

Returns true if this is a private key, otherwise false.

◆ maximumEncryptSize()

virtual int QCA::PKeyBase::maximumEncryptSize ( EncryptionAlgorithm alg) const
virtual

Returns the maximum number of bytes that can be encrypted by this key.

Parameters
algthe algorithm to be used for encryption

◆ startSign()

virtual void QCA::PKeyBase::startSign ( SignatureAlgorithm alg,
SignatureFormat format )
virtual

Begin a signing operation.

Parameters
algthe signature algorithm to use
formatthe signature format to use

◆ startVerify()

virtual void QCA::PKeyBase::startVerify ( SignatureAlgorithm alg,
SignatureFormat format )
virtual

Begin a verify operation.

Parameters
algthe signature algorithm used by the input signature
formatthe signature format used by the input signature

◆ type()

virtual PKey::Type QCA::PKeyBase::type ( ) const
pure virtual

Returns the type of public key.

◆ update()

virtual void QCA::PKeyBase::update ( const MemoryRegion & in)
virtual

Process the plaintext input data for either signing or verifying, whichever operation is active.

Parameters
inthe input data to process

The documentation for this class was generated from the following file:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:18:26 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.