#include <cryptlib.h>
Inheritance diagram for PK_Encryptor:
Definition at line 1141 of file cryptlib.h.
Public Member Functions | |
virtual void | Encrypt (RandomNumberGenerator &rng, const byte *plaintext, unsigned int plaintextLength, byte *ciphertext, const NameValuePairs ¶meters=g_nullNameValuePairs) const =0 |
encrypt a byte string | |
virtual BufferedTransformation * | CreateEncryptionFilter (RandomNumberGenerator &rng, BufferedTransformation *attachment=NULL, const NameValuePairs ¶meters=g_nullNameValuePairs) const |
create a new encryption 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 | |
virtual bool | ParameterSupported (const char *name) const =0 |
this object supports the use of the parameter with the given name | |
virtual unsigned int | FixedCiphertextLength () const |
return fixed ciphertext length, if one exists, otherwise return 0 | |
virtual unsigned int | FixedMaxPlaintextLength () const |
return maximum plaintext length given the fixed ciphertext length, if one exists, otherwise return 0 | |
CryptoMaterial & | AccessMaterial () |
returns a reference to the crypto material used by this object | |
const CryptoMaterial & | GetMaterial () const |
returns a const reference to the crypto material used by this object | |
virtual PublicKey & | AccessPublicKey ()=0 |
virtual const PublicKey & | GetPublicKey () 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 Clonable * | Clone () const |
this is not implemented by most classes yet | |
Classes | |
class | InvalidPlaintextLength |
exception thrown when trying to encrypt plaintext of invalid length More... |
|
encrypt a byte string
Implemented in TF_EncryptorBase, DL_EncryptorBase< T >, DL_EncryptorBase< SCHEME_OPTIONS::Element >, and DL_EncryptorBase< Integer >. Referenced by PK_DefaultEncryptionFilter::Put2(). |
|
create a new encryption filter
Definition at line 564 of file cryptlib.cpp. |
|
maximum length of plaintext for a given ciphertext length
Implemented in PK_FixedLengthCryptoSystemImpl< PK_Encryptor >, PK_FixedLengthCryptoSystemImpl< PK_Decryptor >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< Integer > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< SCHEME_OPTIONS::Element > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< T > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< Integer > >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< SCHEME_OPTIONS::Element > >, and DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< T > >. Referenced by PK_DefaultDecryptionFilter::Put2(). |
|
calculate length of ciphertext given length of plaintext
Implemented in PK_FixedLengthCryptoSystemImpl< PK_Encryptor >, PK_FixedLengthCryptoSystemImpl< PK_Decryptor >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< Integer > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< SCHEME_OPTIONS::Element > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< T > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< Integer > >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< SCHEME_OPTIONS::Element > >, and DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< T > >. Referenced by PK_DefaultEncryptionFilter::Put2(). |
|
this object supports the use of the parameter with the given name some possible parameter names: EncodingParameters, KeyDerivationParameters Implemented in TF_CryptoSystemBase< PK_Decryptor, TF_Base< TrapdoorFunctionInverse, PK_EncryptionMessageEncodingMethod > >, TF_CryptoSystemBase< PK_Encryptor, TF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod > >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< Integer > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< SCHEME_OPTIONS::Element > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< T > >, DL_CryptoSystemBase< PK_Decryptor, DL_PrivateKey< Integer > >, DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< SCHEME_OPTIONS::Element > >, and DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< T > >. |
|
return fixed ciphertext length, if one exists, otherwise return 0
Reimplemented in ElGamalObjectImpl< DL_DecryptorBase< Integer >, SchemeOptions, SchemeOptions::PrivateKey >, ElGamalObjectImpl< DL_EncryptorBase< Integer >, SchemeOptions, SchemeOptions::PublicKey >, TF_CryptoSystemBase< PK_Decryptor, TF_Base< TrapdoorFunctionInverse, PK_EncryptionMessageEncodingMethod > >, and TF_CryptoSystemBase< PK_Encryptor, TF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod > >. Definition at line 1129 of file cryptlib.h. Referenced by PK_Decryptor::FixedLengthDecrypt(). |