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

PK_FixedLengthDecryptor Class Reference

#include <cryptlib.h>

Inheritance diagram for PK_FixedLengthDecryptor:

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

Detailed Description

interface for decryptors with fixed length ciphertext

Definition at line 1174 of file cryptlib.h.

Public Member Functions

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

DecodingResult Decrypt (RandomNumberGenerator &rng, const byte *cipherText, unsigned int cipherTextLength, byte *plainText) const
 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

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

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


Member Function Documentation

virtual DecodingResult PK_FixedLengthDecryptor::FixedLengthDecrypt RandomNumberGenerator rng,
const byte *  cipherText,
byte *  plainText
const [pure virtual]
 

decrypt a byte string, and return the length of plaintext

Precondition:
length of cipherText == CipherTextLength()

size of plainText == MaxPlainTextLength()

Returns:
the actual length of the plaintext, or 0 if decryption fails.

Implemented in TF_DecryptorBase.

Referenced by Decrypt().

DecodingResult PK_FixedLengthDecryptor::Decrypt RandomNumberGenerator rng,
const byte *  cipherText,
unsigned int  cipherTextLength,
byte *  plainText
const [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.

Implements PK_Decryptor.

Definition at line 609 of file cryptlib.cpp.

References FixedLengthDecrypt().

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

create a new decryption filter

Note:
caller is responsible for deleting the returned pointer

Definition at line 548 of file cryptlib.cpp.

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.

unsigned int PK_FixedLengthCryptoSystem::MaxPlaintextLength unsigned int  cipherTextLength  )  const [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).

Implements PK_CryptoSystem.

Definition at line 593 of file cryptlib.cpp.

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

calculate length of ciphertext given length of plaintext

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

Implements PK_CryptoSystem.

Definition at line 601 of file cryptlib.cpp.


The documentation for this class was generated from the following files:
Generated on Sun Mar 14 20:44:39 2004 for Crypto++ by doxygen 1.3.6-20040222