CryptoSpi::MPluginSelector Class Reference

#include <cryptospi/pluginselectorbase.h>

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

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

Creates a new instance of a asynchronous key pair generator.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

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

Creates a new instance of a asynchronous random object.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

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

Creates a new instance of a key pair generator.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

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

Creates a new instance of a Random object.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.

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.

Parameters
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.
Leave Codes
KErrNoneif successful; otherwise, a system wide error code.