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

TF_EncryptorBase Class Reference

#include <pubkey.h>

Inheritance diagram for TF_EncryptorBase:

TF_CryptoSystemBase< PK_FixedLengthEncryptor, TF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod > > PK_FixedLengthEncryptor TF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod > PK_Encryptor PK_FixedLengthCryptoSystem PK_CryptoSystem PublicKeyAlgorithm PK_CryptoSystem AsymmetricAlgorithm Algorithm Clonable List of all members.

Detailed Description

Definition at line 161 of file pubkey.h.

Public Member Functions

void Encrypt (RandomNumberGenerator &rng, const byte *plainText, unsigned int plainTextLength, byte *cipherText) const
 encrypt a byte string

unsigned int FixedMaxPlaintextLength () const
unsigned int FixedCiphertextLength () const
virtual BufferedTransformationCreateEncryptionFilter (RandomNumberGenerator &rng, BufferedTransformation *attachment=NULL) const
 create a new encryption filter

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

unsigned int MaxPlaintextLength (unsigned int cipherTextLength) const
 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

unsigned int CiphertextLength (unsigned int plainTextLength) const
 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 PublicKeyAccessPublicKey ()=0
virtual const PublicKeyGetPublicKey () 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


Protected Types

typedef RandomizedTrapdoorFunction TrapdoorFunctionInterface
typedef PK_EncryptionMessageEncodingMethod MessageEncodingInterface

Protected Member Functions

unsigned int PaddedBlockByteLength () const
unsigned int PaddedBlockBitLength () const
virtual const TrapdoorFunctionBoundsGetTrapdoorFunctionBounds () const=0
virtual const TrapdoorFunctionInterface & GetTrapdoorFunctionInterface () const=0
virtual const MessageEncodingInterface & GetMessageEncodingInterface () const=0


Member Function Documentation

void TF_EncryptorBase::Encrypt RandomNumberGenerator rng,
const byte *  plainText,
unsigned int  plainTextLength,
byte *  cipherText
const [virtual]
 

encrypt a byte string

Precondition:
CipherTextLength(plainTextLength) != 0 (i.e., plainText isn't too long)

size of cipherText == CipherTextLength(plainTextLength)

Implements PK_Encryptor.

Definition at line 112 of file pubkey.cpp.

References Algorithm::AlgorithmName(), Encrypt(), and SecBlock< T, A >::size().

Referenced by Encrypt().

BufferedTransformation * PK_Encryptor::CreateEncryptionFilter RandomNumberGenerator rng,
BufferedTransformation attachment = NULL
const [virtual, inherited]
 

create a new encryption filter

Note:
caller is responsible for deleting the returned pointer

Definition at line 505 of file cryptlib.cpp.

References PK_Encryptor::CreateEncryptionFilter().

Referenced by PK_Encryptor::CreateEncryptionFilter().

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.

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.

References PK_FixedLengthCryptoSystem::MaxPlaintextLength().

Referenced by PK_FixedLengthCryptoSystem::MaxPlaintextLength().

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::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.

References PK_FixedLengthCryptoSystem::CiphertextLength().

Referenced by PK_FixedLengthCryptoSystem::CiphertextLength().


The documentation for this class was generated from the following files:
Generated on Fri Aug 13 09:57:00 2004 for Crypto++ by doxygen 1.3.7