QCA::PKeyContext Class Reference
[QCA provider API]

Public key container provider. More...

#include <QtCrypto>

Inheritance diagram for QCA::PKeyContext:

QCA::BasicContext QCA::Provider::Context
Collaboration diagram for QCA::PKeyContext:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual bool importKey (const PKeyBase *key)=0
virtual const PKeyBasekey () const =0
virtual PKeyBasekey ()=0
 PKeyContext (Provider *p)
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


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().

Constructor & Destructor Documentation

QCA::PKeyContext::PKeyContext ( Provider p  )  [inline]

Standard constructor.

Parameters:
p the provider associated with this context


Member Function Documentation

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:
key the key to be imported

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

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

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

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

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:
a the input data
passphrase the passphrase needed to decrypt, if applicable

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:
s the input data
passphrase the passphrase needed to decrypt, if applicable

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:
passphrase the passphrase to encode the result with, or an empty array if no encryption is desired
pbe the encryption algorithm to use, if applicable

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:
passphrase the passphrase to encode the result with, or an empty array if no encryption is desired
pbe the encryption algorithm to use, if applicable

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:
a the input data

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:
s the input data

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

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

Returns an empty array on error.

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

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

Returns an empty string on error.

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:
key the key to be set for this object

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.

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.

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:

Generated on Wed Apr 29 15:16:07 2009 for Qt Cryptographic Architecture by  doxygen 1.5.5