|
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 |
| The algorithm name. More...
|
|
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 ¶meters) const |
|
DecodingResult | SymmetricDecrypt (const byte *key, const byte *cipherText, size_t cipherTextLength, byte *plainText, const NameValuePairs ¶meters) const |
|
virtual const DL_GroupParameters_GFP & | GetGroupParameters () const =0 |
|
Element | AgreeWithEphemeralPrivateKey (const DL_GroupParameters< Element > ¶ms, const DL_FixedBasePrecomputation< Element > &publicPrecomputation, const Integer &privateExponent) const |
|
Element | AgreeWithStaticPrivateKey (const DL_GroupParameters< Element > ¶ms, const Element &publicElement, bool validateOtherPublicKey, const Integer &privateExponent) const |
|
virtual Element | AgreeWithEphemeralPrivateKey (const DL_GroupParameters< Element > ¶ms, const DL_FixedBasePrecomputation< Element > &publicPrecomputation, const Integer &privateExponent) const=0 |
|
virtual Element | AgreeWithStaticPrivateKey (const DL_GroupParameters< Element > ¶ms, const Element &publicElement, bool validateOtherPublicKey, const Integer &privateExponent) const=0 |
|
virtual bool | ParameterSupported (const char *name) const |
|
virtual void | Derive (const DL_GroupParameters< Integer > &groupParams, byte *derivedKey, size_t derivedLength, const Integer &agreedElement, const Integer &ephemeralPublicKey, const NameValuePairs &derivationParams) const=0 |
|
virtual bool | ParameterSupported (const char *name) const |
|
virtual size_t | GetSymmetricKeyLength (size_t plaintextLength) const =0 |
|
virtual size_t | GetSymmetricCiphertextLength (size_t plaintextLength) const =0 |
|
virtual size_t | GetMaxSymmetricPlaintextLength (size_t ciphertextLength) const =0 |
|
virtual void | SymmetricEncrypt (RandomNumberGenerator &rng, const byte *key, const byte *plaintext, size_t plaintextLength, byte *ciphertext, const NameValuePairs ¶meters) const =0 |
|
virtual DecodingResult | SymmetricDecrypt (const byte *key, const byte *ciphertext, size_t ciphertextLength, byte *plaintext, const NameValuePairs ¶meters) const =0 |
|
template<class BASE, class SCHEME_OPTIONS, class KEY>
class ElGamalObjectImpl< BASE, SCHEME_OPTIONS, KEY >
ElGamal key agreement and encryption schemes default implementation.
- Template Parameters
-
BASE | Base class implementation |
SCHEME_OPTIONS | Scheme options |
KEY | ElGamal key classes |
- Since
- Crypto++ 1.0
Definition at line 107 of file elgamal.h.