QCA::PKeyContext

Search for usage in LXR

QCA::PKeyContext Class Referenceabstract

#include <QtCrypto>

Inheritance diagram for QCA::PKeyContext:

Public Member Functions

 PKeyContext (Provider *p)
 
virtual bool importKey (const PKeyBase *key)=0
 
virtual const PKeyBasekey () const =0
 
virtual PKeyBasekey ()=0
 
virtual ConvertResult privateFromDER (const SecureArray &a, const SecureArray &passphrase)
 
virtual ConvertResult privateFromPEM (const QString &s, const SecureArray &passphrase)
 
virtual SecureArray privateToDER (const SecureArray &passphrase, PBEAlgorithm pbe) const
 
virtual QString privateToPEM (const SecureArray &passphrase, PBEAlgorithm pbe) const
 
virtual ConvertResult publicFromDER (const QByteArray &a)
 
virtual ConvertResult publicFromPEM (const QString &s)
 
virtual QByteArray publicToDER () const
 
virtual QString publicToPEM () const
 
virtual void setKey (PKeyBase *key)=0
 
virtual QList< PKey::TypesupportedIOTypes () const =0
 
virtual QList< PBEAlgorithmsupportedPBEAlgorithms () const =0
 
virtual QList< PKey::TypesupportedTypes () const =0
 

Additional Inherited Members

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

Detailed Description

Public key container provider.

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.

This object "holds" a public key object. By default it contains no key (key() returns 0), but you can put a key into it with setKey(), or you can call an import function such as publicFromDER().

Definition at line 908 of file qcaprovider.h.

Constructor & Destructor Documentation

◆ PKeyContext()

QCA::PKeyContext::PKeyContext ( Provider * p)
inline

Standard constructor.

Parameters
pthe provider associated with this context

Definition at line 917 of file qcaprovider.h.

Member Function Documentation

◆ importKey()

virtual bool QCA::PKeyContext::importKey ( const PKeyBase * key)
pure virtual

Attempt to import a key from another provider.

Returns true if successful, otherwise false.

Generally this function is used if the specified key's provider does not support serialization, but your provider does. The call to this function would then be followed by an export function, such as publicToDER().

Parameters
keythe key to be imported

◆ key() [1/2]

virtual const PKeyBase * QCA::PKeyContext::key ( ) const
pure virtual

Returns the key held by this object, or 0 if there is no key.

◆ key() [2/2]

virtual PKeyBase * QCA::PKeyContext::key ( )
pure virtual

Returns the key held by this object, or 0 if there is no key.

◆ privateFromDER()

virtual ConvertResult QCA::PKeyContext::privateFromDER ( const SecureArray & a,
const SecureArray & passphrase )
virtual

Read DER-formatted input and convert it into a private key.

Returns QCA::ConvertGood if successful, otherwise some error value.

Parameters
athe input data
passphrasethe passphrase needed to decrypt, if applicable

◆ privateFromPEM()

virtual ConvertResult QCA::PKeyContext::privateFromPEM ( const QString & s,
const SecureArray & passphrase )
virtual

Read PEM-formatted input and convert it into a private key.

Returns QCA::ConvertGood if successful, otherwise some error value.

Parameters
sthe input data
passphrasethe passphrase needed to decrypt, if applicable

◆ privateToDER()

virtual SecureArray QCA::PKeyContext::privateToDER ( const SecureArray & passphrase,
PBEAlgorithm pbe ) const
virtual

Convert a private key to DER format, and return the value.

Returns an empty array on error.

Parameters
passphrasethe passphrase to encode the result with, or an empty array if no encryption is desired
pbethe encryption algorithm to use, if applicable

◆ privateToPEM()

virtual QString QCA::PKeyContext::privateToPEM ( const SecureArray & passphrase,
PBEAlgorithm pbe ) const
virtual

Convert a private key to PEM format, and return the value.

Returns an empty string on error.

Parameters
passphrasethe passphrase to encode the result with, or an empty array if no encryption is desired
pbethe encryption algorithm to use, if applicable

◆ publicFromDER()

virtual ConvertResult QCA::PKeyContext::publicFromDER ( const QByteArray & a)
virtual

Read DER-formatted input and convert it into a public key.

Returns QCA::ConvertGood if successful, otherwise some error value.

Parameters
athe input data

◆ publicFromPEM()

virtual ConvertResult QCA::PKeyContext::publicFromPEM ( const QString & s)
virtual

Read PEM-formatted input and convert it into a public key.

Returns QCA::ConvertGood if successful, otherwise some error value.

Parameters
sthe input data

◆ publicToDER()

virtual QByteArray QCA::PKeyContext::publicToDER ( ) const
virtual

Convert a public key to DER format, and return the value.

Returns an empty array on error.

◆ publicToPEM()

virtual QString QCA::PKeyContext::publicToPEM ( ) const
virtual

Convert a public key to PEM format, and return the value.

Returns an empty string on error.

◆ setKey()

virtual void QCA::PKeyContext::setKey ( PKeyBase * key)
pure virtual

Sets the key for this object.

If this object already had a key, then the old one is destructed. This object takes ownership of the key.

Parameters
keythe key to be set for this object

◆ supportedIOTypes()

virtual QList< PKey::Type > QCA::PKeyContext::supportedIOTypes ( ) const
pure virtual

Returns a list of public key types that can be serialized and deserialized into DER and PEM format.

◆ supportedPBEAlgorithms()

virtual QList< PBEAlgorithm > QCA::PKeyContext::supportedPBEAlgorithms ( ) const
pure virtual

Returns a list of password-based encryption algorithms that are supported for private key serialization and deserialization.

◆ supportedTypes()

virtual QList< PKey::Type > QCA::PKeyContext::supportedTypes ( ) const
pure virtual

Returns a list of supported public key types.


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.