Crypto++

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
ElGamalObjectImpl< BASE, SCHEME_OPTIONS, KEY > Class Template Reference
Inheritance diagram for ElGamalObjectImpl< BASE, SCHEME_OPTIONS, KEY >:

List of all members.

## Public Types

typedef SCHEME_OPTIONS | SchemeOptions
typedef KEY::Element | Element
typedef Integer | Element

## Public Member Functions

size_t | FixedMaxPlaintextLength () const
size_t | FixedCiphertextLength () const
const DL_GroupParameters_GFP & | GetGroupParameters () const
DecodingResult | FixedLengthDecrypt (RandomNumberGenerator &rng, const byte *cipherText, byte *plainText) const
PrivateKey & | AccessPrivateKey ()
PublicKey & | AccessPublicKey ()
const KEY & | GetKey () const
KEY & | AccessKey ()
std::string | AlgorithmName () const
void | Derive (const DL_GroupParameters< Integer > &groupParams, byte *derivedKey, size_t derivedLength, const Integer &agreedElement, const Integer &ephemeralPublicKey, const NameValuePairs &derivationParams) const
size_t | GetSymmetricKeyLength (size_t plainTextLength) const
size_t | GetSymmetricCiphertextLength (size_t plainTextLength) const
size_t | GetMaxSymmetricPlaintextLength (size_t cipherTextLength) const
void | SymmetricEncrypt (RandomNumberGenerator &rng, const byte *key, const byte *plainText, size_t plainTextLength, byte *cipherText, const NameValuePairs &parameters) const
DecodingResult | SymmetricDecrypt (const byte *key, const byte *cipherText, size_t cipherTextLength, byte *plainText, const NameValuePairs &parameters) const
Element | AgreeWithEphemeralPrivateKey (const DL_GroupParameters< Element > &params, const DL_FixedBasePrecomputation< Element > &publicPrecomputation, const Integer &privateExponent) const
Element | AgreeWithStaticPrivateKey (const DL_GroupParameters< Element > &params, const Element &publicElement, bool validateOtherPublicKey, const Integer &privateExponent) const
virtual bool | ParameterSupported (const char *name) const
virtual bool | ParameterSupported (const char *name) const

## Static Public Member Functions

static std::string | StaticAlgorithmName ()
static const char * | StaticAlgorithmName ()

## Protected Member Functions

const DL_KeyAgreementAlgorithm < Integer > & | GetKeyAgreementAlgorithm () const
const DL_KeyDerivationAlgorithm < Integer > & | GetKeyDerivationAlgorithm () const
const DL_SymmetricEncryptionAlgorithm & | GetSymmetricEncryptionAlgorithm () const
BASE::KeyInterface & | AccessKeyInterface ()
const BASE::KeyInterface & | GetKeyInterface () const
HashIdentifier | GetHashIdentifier () const
size_t | GetDigestSize () const

## Detailed Description

### template<class BASE, class SCHEME_OPTIONS, class KEY>
class ElGamalObjectImpl< BASE, SCHEME_OPTIONS, KEY >

Definition at line 78 of file elgamal.h.

The documentation for this class was generated from the following file:

- elgamal.h