PublicKeyAlgorithm Class Reference

#include <cryptlib.h>

Inheritance diagram for PublicKeyAlgorithm:

AsymmetricAlgorithm Algorithm Clonable PK_Encryptor PK_Verifier DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< Integer > > DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< SCHEME_OPTIONS::Element > > DL_CryptoSystemBase< PK_Encryptor, DL_PublicKey< T > > PK_FixedLengthCryptoSystemImpl< PK_Encryptor > DL_SignatureSchemeBase< PK_Verifier, DL_PublicKey< SCHEME_OPTIONS::Element > > DL_SignatureSchemeBase< PK_Verifier, DL_PublicKey< T > > TF_SignatureSchemeBase< PK_Verifier, TF_Base< TrapdoorFunction, PK_SignatureMessageEncodingMethod > > DL_EncryptorBase< Integer > DL_EncryptorBase< SCHEME_OPTIONS::Element > DL_EncryptorBase< T > TF_CryptoSystemBase< PK_Encryptor, TF_Base< RandomizedTrapdoorFunction, PK_EncryptionMessageEncodingMethod > > DL_VerifierBase< SCHEME_OPTIONS::Element > DL_VerifierBase< T > TF_VerifierBase AlgorithmImpl< DL_EncryptorBase< Integer >, SchemeOptions::AlgorithmInfo > AlgorithmImpl< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo > TF_EncryptorBase AlgorithmImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo > TwoBases< TF_VerifierBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > > DL_ObjectImplBase< DL_EncryptorBase< Integer >, SchemeOptions, SchemeOptions::PublicKey > DL_ObjectImplBase< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > TwoBases< TF_EncryptorBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > > DL_ObjectImplBase< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > AlgorithmImpl< TwoBases< TF_VerifierBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > >, SCHEME_OPTIONS::AlgorithmInfo > ElGamalObjectImpl< DL_EncryptorBase< Integer >, SchemeOptions, SchemeOptions::PublicKey > DL_ObjectImpl< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > AlgorithmImpl< TwoBases< TF_EncryptorBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > >, SCHEME_OPTIONS::AlgorithmInfo > DL_ObjectImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > TF_ObjectImplBase< TwoBases< TF_VerifierBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > >, SCHEME_OPTIONS, PublicKeyCopier< SCHEME_OPTIONS::Keys >::KeyClass > ElGamal::EncryptorImpl DL_PublicObjectImpl< DL_EncryptorBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS > TF_ObjectImplBase< TwoBases< TF_EncryptorBase, PublicKeyCopier< SCHEME_OPTIONS::Keys > >, SCHEME_OPTIONS, PublicKeyCopier< SCHEME_OPTIONS::Keys >::KeyClass > DL_PublicObjectImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS > TF_ObjectImpl< TF_VerifierBase, SCHEME_OPTIONS, PublicKeyCopier< SCHEME_OPTIONS::Keys > > DL_EncryptorImpl< SCHEME_OPTIONS > TF_ObjectImpl< TF_EncryptorBase, SCHEME_OPTIONS, PublicKeyCopier< SCHEME_OPTIONS::Keys > > DL_VerifierImpl< SCHEME_OPTIONS > TF_VerifierImpl< SCHEME_OPTIONS > TF_EncryptorImpl< SCHEME_OPTIONS > List of all members.

Detailed Description

interface for asymmetric algorithms using public keys

Definition at line 1069 of file cryptlib.h.

Public Member Functions

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


The documentation for this class was generated from the following file:
Generated on Thu Mar 30 22:12:21 2006 for Crypto++ by  doxygen 1.4.6