CRSAPKCS1v15Decryptor Class Reference

class CRSAPKCS1v15Decryptor : public CDecryptor

Implementation of RSA decryption as described in PKCS#1 v1.5.

Inherits from

Constructor & Destructor Documentation

CRSAPKCS1v15Decryptor(const CRSAPrivateKey &)

CRSAPKCS1v15Decryptor(const CRSAPrivateKey &aKey)[protected]

Parameters

const CRSAPrivateKey & aKey

CRSAPKCS1v15Decryptor(const CRSAPKCS1v15Decryptor &)

CRSAPKCS1v15Decryptor(const CRSAPKCS1v15Decryptor &)[private]

Parameters

const CRSAPKCS1v15Decryptor &

~CRSAPKCS1v15Decryptor(void)

~CRSAPKCS1v15Decryptor(void)[virtual]

The destructor frees all resources owned by the object, prior to its destruction.

Parameters

void

Member Functions Documentation

ConstructL(void)

voidConstructL(void)[protected]

Parameters

void

DecryptL(const TDesC8 &, TDes8 &)

voidDecryptL(const TDesC8 &aInput,
TDes8 &aOutput
)const [virtual]

Decrypts the specified ciphertext into plaintext

panic
KCryptoPanic If the input data is too long. See ECryptoPanicInputTooLarge
panic
KCryptoPanic If the supplied output descriptor is not large enough to store the result. See ECryptoPanicOutputDescriptorOverflow

Parameters

const TDesC8 & aInputThe ciphertext to be decrypted
TDes8 & aOutputOn return, the plaintext

MaxInputLength(void)

TInt MaxInputLength(void)const

Parameters

void

MaxOutputLength(void)

TInt MaxOutputLength(void)const

Parameters

void

NewL(const CRSAPrivateKey &)

IMPORT_C CRSAPKCS1v15Decryptor *NewL(const CRSAPrivateKey &aKey)[static]

Creates a new RSA decryptor object using PKCS#1 v1.5 padding.

leave
KErrKeyNotWeakEnough If the key size is larger than that allowed by the cipher strength restrictions of the crypto library. See TCrypto::IsAsymmetricWeakEnoughL()
leave
KErrKeySize If the key length is too small

Parameters

const CRSAPrivateKey & aKeyThe RSA private key for decryption

NewLC(const CRSAPrivateKey &)

IMPORT_C CRSAPKCS1v15Decryptor *NewLC(const CRSAPrivateKey &aKey)[static]

Creates a new RSA decryptor object using PKCS#1 v1.5 padding

The returned pointer is put onto the cleanup stack.

leave
KErrKeyNotWeakEnough If the key size is larger than that allowed by the cipher strength restrictions of the crypto library. See TCrypto::IsAsymmetricWeakEnoughL()
leave
KErrKeySize If the key length is too small
leave
KErrNotSupported If the RSA private key is not a supported TRSAPrivateKeyType

Parameters

const CRSAPrivateKey & aKeyThe RSA private key for decryption

operator=(const CRSAPKCS1v15Decryptor &)

CRSAPKCS1v15Decryptor &operator=(const CRSAPKCS1v15Decryptor &)[private]

Parameters

const CRSAPKCS1v15Decryptor &

Member Data Documentation

CPaddingPKCS1Encryption * iPadding

CPaddingPKCS1Encryption *iPadding[protected]

The PKCS#1 v1.5 encryption padding

const CRSAPrivateKey & iPrivateKey

const CRSAPrivateKey &iPrivateKey[protected]

The RSA private key