CryptoSpi::MPluginSelector Class Reference

#include <cryptospi/pluginselectorbase.h>

Link against: cryptospi.lib

class CryptoSpi::MPluginSelector
Public Member Functions
pure virtual ~MPluginSelector()
pure virtual voidCreateAsymmetricCipherL(CAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncAsymmetricCipherL(CAsyncAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncHashL(CAsyncHash *&, TUid, TUid, const CKey *, const CCryptoParams *)
pure virtual voidCreateAsyncKeyAgreementL(CAsyncKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)
pure virtual voidCreateAsyncKeyPairGeneratorL(CAsyncKeyPairGenerator *&, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncRandomL(CAsyncRandom *&, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncSignerL(CAsyncSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncSymmetricCipherL(CAsyncSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)
pure virtual voidCreateAsyncVerifierL(CAsyncVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)
pure virtual voidCreateHashL(CHash *&, TUid, TUid, const CKey *, const CCryptoParams *)
pure virtual voidCreateKeyAgreementL(CKeyAgreement *&, TUid, const CKey &, const CCryptoParams *)
pure virtual voidCreateKeyPairGeneratorL(CKeyPairGenerator *&, TUid, const CCryptoParams *)
pure virtual voidCreateRandomL(CRandom *&, TUid, const CCryptoParams *)
pure virtual voidCreateSignerL(CSigner *&, TUid, const CKey &, TUid, const CCryptoParams *)
pure virtual voidCreateSymmetricCipherL(CSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams *)
pure virtual voidCreateVerifierL(CVerifier *&, TUid, const CKey &, TUid, const CCryptoParams *)

Detailed Description

Base class for the selectors

Constructor & Destructor Documentation

~MPluginSelector ( )

~MPluginSelector()[inline, pure virtual]

Destructor

Member Function Documentation

CreateAsymmetricCipherL ( CAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams * )

voidCreateAsymmetricCipherL(CAsymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of an asymmetric cipher

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aCipherA reference to a pointer that should be set to point to the new asymmetric cipher object.
aAlgorithmUidThe asymmetric cipher algorithm to use (e.g. KRsaCipherUid)
aKeyThe encryption/decryption key.
aCryptoModewhether to encrypt or decrypt
aPaddingModeThe padding mode to use
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncAsymmetricCipherL ( CAsyncAsymmetricCipher *&, TUid, const CKey &, TUid, TUid, const CCryptoParams * )

voidCreateAsyncAsymmetricCipherL(CAsyncAsymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of an asynchronous asymmetric cipher

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aCipherA reference to a pointer that should be set to point to the new asymmetric cipher object.
aAlgorithmUidThe asymmetric cipher algorithm to use (e.g. KRsaCipherUid)
aKeyThe encryption/decryption key.
aCryptoModewhether to encrypt or decrypt
aPaddingModeThe padding mode to use
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncHashL ( CAsyncHash *&, TUid, TUid, const CKey *, const CCryptoParams * )

voidCreateAsyncHashL(CAsyncHash *&aHash,
TUidaAlgorithmUid,
TUidaOperationMode,
const CKey *aKey,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Deprecated

Create a new instance of a asynchronous hash object

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aHashThe pointer to CHash
aAlgorithmUidThe specific hash algorithm e.g. MD2, SHA1
aOperationModeThe operation mode of the hash e.g. Hash mode, Hmac mode
aKeyThe key for Hmac mode, which should be NULL in Hash mode
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncKeyAgreementL ( CAsyncKeyAgreement *&, TUid, const CKey &, const CCryptoParams * )

voidCreateAsyncKeyAgreementL(CAsyncKeyAgreement *&aKeyAgreement,
TUidaAlgorithmUid,
const CKey &aPrivateKey,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a asynchronous key agreement system.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aKeyAgreementA reference to a pointer that should be set to point to the new key agreement object.
aAlgorithmUidThe algorithm to use
aPrivateKeyThe private key to combine with the other parties public key during the agreement.
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncKeyPairGeneratorL ( CAsyncKeyPairGenerator *&, TUid, const CCryptoParams * )

voidCreateAsyncKeyPairGeneratorL(CAsyncKeyPairGenerator *&aKeyPairGenerator,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a asynchronous key pair generator.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aKeyPairGeneratorA reference to a pointer that should be set to point to the new asymmetric key pair generator object.
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncRandomL ( CAsyncRandom *&, TUid, const CCryptoParams * )

voidCreateAsyncRandomL(CAsyncRandom *&aRandom,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a asynchronous random object.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aRandomA reference to a pointer that should be set to point to the new CRandom object.
aAlgorithmUidThe algorithm to use
aAlgorithmParamsParameters that are specific this algorithm.

CreateAsyncSignerL ( CAsyncSigner *&, TUid, const CKey &, TUid, const CCryptoParams * )

voidCreateAsyncSignerL(CAsyncSigner *&aSigner,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a asynchronous signer.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aSignerA reference to a pointer that should be set to point to the new signer object.
aAlgorithmUidThe algorithm to use.
aKeyThe signing key.
aPaddingModeThe padding mode of the signer.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncSymmetricCipherL ( CAsyncSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams * )

voidCreateAsyncSymmetricCipherL(CAsyncSymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaOperationMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new synchronous instance of a asynchronous symmetric cipher

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aCipherA reference to a pointer that should be set to point to the new symmetric object.
aAlgorithmUidThe algorithm to use
aKeyThe encryption/decryption key.
aCryptoModeThe Symmetric cipher mode.
aOperationModeThe Symmetric cipher operation mode.
aPaddingModeThe Symmetric cipher padding mode.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateAsyncVerifierL ( CAsyncVerifier *&, TUid, const CKey &, TUid, const CCryptoParams * )

voidCreateAsyncVerifierL(CAsyncVerifier *&aVerifier,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a asynchronous verifier.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aVerifierA reference to a pointer that should be set to point to the new verifier object.
aAlgorithmUidThe algorithm to use
aKeyThe key to verify the signature with.
aPaddingModeThe padding mode of the signer.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateHashL ( CHash *&, TUid, TUid, const CKey *, const CCryptoParams * )

voidCreateHashL(CHash *&aHash,
TUidaAlgorithmUid,
TUidaOperationMode,
const CKey *aKey,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Deprecated

Create a new instance of a hash object

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aHashThe pointer to CHash
aAlgorithmUidThe specific hash algorithm e.g. MD2, SHA1
aOperationModeThe operation mode of the hash e.g. Hash mode, Hmac mode
aKeyThe key for Hmac mode, which should be NULL in Hash mode
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateKeyAgreementL ( CKeyAgreement *&, TUid, const CKey &, const CCryptoParams * )

voidCreateKeyAgreementL(CKeyAgreement *&aKeyAgreement,
TUidaAlgorithmUid,
const CKey &aPrivateKey,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a key agreement system.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aKeyAgreementA reference to a pointer that should be set to point to the new key agreement object.
aAlgorithmUidThe algorithm to use
aPrivateKeyThe private key to combine with the other parties public key during the agreement.
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateKeyPairGeneratorL ( CKeyPairGenerator *&, TUid, const CCryptoParams * )

voidCreateKeyPairGeneratorL(CKeyPairGenerator *&aKeyPairGenerator,
TUidaKeyAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a key pair generator.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aKeyPairGeneratorA reference to a pointer that should be set to point to the new asymmetric key pair generator object.
aKeyAlgorithmUidThe algorithm UID
aAlgorithmParamsThe parameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateRandomL ( CRandom *&, TUid, const CCryptoParams * )

voidCreateRandomL(CRandom *&aRandom,
TUidaAlgorithmUid,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a Random object.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aRandomA reference to a pointer that should be set to point to the new CRandom object.
aAlgorithmUidThe algorithm to use
aAlgorithmParamsParameters that are specific this algorithm.

CreateSignerL ( CSigner *&, TUid, const CKey &, TUid, const CCryptoParams * )

voidCreateSignerL(CSigner *&aSigner,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a synchronous signer.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aSignerA reference to a pointer that should be set to point to the new signer object.
aAlgorithmUidThe algorithm to use.
aKeyThe signing key.
aPaddingModeThe padding mode of the signer.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateSymmetricCipherL ( CSymmetricCipher *&, TUid, const CKey &, TUid, TUid, TUid, const CCryptoParams * )

voidCreateSymmetricCipherL(CSymmetricCipher *&aCipher,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaCryptoMode,
TUidaOperationMode,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new synchronous instance of a symmetric cipher

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aCipherA reference to a pointer that should be set to point to the new symmetric object.
aAlgorithmUidThe algorithm to use
aKeyThe encryption/decryption key.
aCryptoModeThe Symmetric cipher mode.
aOperationModeThe Symmetric cipher operation mode.
aPaddingModeThe Symmetric cipher padding mode.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.

CreateVerifierL ( CVerifier *&, TUid, const CKey &, TUid, const CCryptoParams * )

voidCreateVerifierL(CVerifier *&aVerifier,
TUidaAlgorithmUid,
const CKey &aKey,
TUidaPaddingMode,
const CCryptoParams *aAlgorithmParams
)[pure virtual]

Creates a new instance of a verifier.

leave
KErrNone if successful; otherwise, a system wide error code.
ParameterDescription
aVerifierA reference to a pointer that should be set to point to the new verifier object.
aAlgorithmUidThe algorithm to use
aKeyThe key to verify the signature with.
aPaddingModeThe padding mode of the signer.
aAlgorithmParamsParameters that are specific to a particular algorithm. This is for extendibility and will normally be null.