Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members

PK_Decryptor Class Reference

#include <cryptlib.h>

Inheritance diagram for PK_Decryptor:

PK_CryptoSystem PrivateKeyAlgorithm AsymmetricAlgorithm Algorithm Clonable PK_FixedLengthDecryptor TF_CryptoSystemBase< PK_FixedLengthDecryptor, TF_Base< TrapdoorFunctionInverse, PK_EncryptionMessageEncodingMethod > > TF_DecryptorBase List of all members.

Detailed Description

interface for public-key decryptors

Definition at line 1126 of file cryptlib.h.

Public Member Functions

virtual DecodingResult Decrypt (RandomNumberGenerator &rng, const byte *cipherText, unsigned int cipherTextLength, byte *plainText) const =0
 decrypt a byte string, and return the length of plaintext

virtual BufferedTransformationCreateDecryptionFilter (RandomNumberGenerator &rng, BufferedTransformation *attachment=NULL) const
 create a new decryption filter

virtual unsigned int MaxPlaintextLength (unsigned int cipherTextLength) const =0
 maximum length of plaintext for a given ciphertext length

virtual unsigned int CiphertextLength (unsigned int plainTextLength) const =0
 calculate length of ciphertext given length of plaintext

CryptoMaterialAccessMaterial ()
 returns a reference to the crypto material used by this object

const CryptoMaterialGetMaterial () const
 returns a const reference to the crypto material used by this object

virtual PrivateKeyAccessPrivateKey ()=0
virtual const PrivateKeyGetPrivateKey () const
void BERDecode (BufferedTransformation &bt)
 for backwards compatibility, calls AccessMaterial().Load(bt)

void DEREncode (BufferedTransformation &bt) const
 for backwards compatibility, calls GetMaterial().Save(bt)

virtual std::string AlgorithmName () const
 returns name of this algorithm, not universally implemented yet

virtual ClonableClone () const
 this is not implemented by most classes yet


Member Function Documentation

virtual DecodingResult PK_Decryptor::Decrypt RandomNumberGenerator rng,
const byte *  cipherText,
unsigned int  cipherTextLength,
byte *  plainText
const [pure virtual]
 

decrypt a byte string, and return the length of plaintext

Precondition:
size of plainText == MaxPlainTextLength(cipherTextLength) bytes.
Returns:
the actual length of the plaintext, or 0 if decryption fails.

Implemented in PK_FixedLengthDecryptor.

BufferedTransformation * PK_Decryptor::CreateDecryptionFilter RandomNumberGenerator rng,
BufferedTransformation attachment = NULL
const [virtual]
 

create a new decryption filter

Note:
caller is responsible for deleting the returned pointer

Definition at line 548 of file cryptlib.cpp.

References CreateDecryptionFilter().

Referenced by CreateDecryptionFilter().

virtual unsigned int PK_CryptoSystem::MaxPlaintextLength unsigned int  cipherTextLength  )  const [pure virtual, inherited]
 

maximum length of plaintext for a given ciphertext length

Note:
This function returns 0 if cipherTextLength is not valid (too long or too short).

Implemented in PK_FixedLengthCryptoSystem.

virtual unsigned int PK_CryptoSystem::CiphertextLength unsigned int  plainTextLength  )  const [pure virtual, inherited]
 

calculate length of ciphertext given length of plaintext

Note:
This function returns 0 if plainTextLength is not valid (too long).

Implemented in PK_FixedLengthCryptoSystem.


The documentation for this class was generated from the following files:
Generated on Wed Jul 28 08:07:15 2004 for Crypto++ by doxygen 1.3.7