#include <QtCrypto>
Signals | |
void | finished () |
Public Member Functions | |
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 |
PKeyBase (Provider *p, const QString &type) | |
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) |
Standard constructor.
p | the Provider associated with this context | |
type | type of key provided by this context |
virtual int QCA::PKeyBase::bits | ( | ) | const [pure virtual] |
Returns the number of bits in the key.
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.
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.
virtual bool QCA::PKeyBase::decrypt | ( | const SecureArray & | in, | |
SecureArray * | out, | |||
EncryptionAlgorithm | alg | |||
) | [virtual] |
Decrypt data.
in | the input data to decrypt | |
out | pointer to an array to store the plaintext result | |
alg | the encryption algorithm used to generate the input data |
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.
theirs | the other side (public key) to be used for key generation. |
virtual SecureArray QCA::PKeyBase::encrypt | ( | const SecureArray & | in, | |
EncryptionAlgorithm | alg | |||
) | [virtual] |
Encrypt data.
in | the input data to encrypt | |
alg | the encryption algorithm to use |
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.
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.
sig | the signature to verify with the input data |
void QCA::PKeyBase::finished | ( | ) | [signal] |
Emitted when an asynchronous operation completes on this key.
Such operations will be documented that they emit this signal.
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.
virtual bool QCA::PKeyBase::isPrivate | ( | ) | const [pure virtual] |
Returns true if this is a private key, otherwise false.
virtual int QCA::PKeyBase::maximumEncryptSize | ( | EncryptionAlgorithm | alg | ) | const [virtual] |
Returns the maximum number of bytes that can be encrypted by this key.
alg | the algorithm to be used for encryption |
virtual void QCA::PKeyBase::startSign | ( | SignatureAlgorithm | alg, | |
SignatureFormat | format | |||
) | [virtual] |
Begin a signing operation.
alg | the signature algorithm to use | |
format | the signature format to use |
virtual void QCA::PKeyBase::startVerify | ( | SignatureAlgorithm | alg, | |
SignatureFormat | format | |||
) | [virtual] |
Begin a verify operation.
alg | the signature algorithm used by the input signature | |
format | the signature format used by the input signature |
virtual PKey::Type QCA::PKeyBase::type | ( | ) | const [pure virtual] |
Returns the type of public key.
virtual void QCA::PKeyBase::update | ( | const MemoryRegion & | in | ) | [virtual] |
Process the plaintext input data for either signing or verifying, whichever operation is active.
in | the input data to process |