|
Crypto++
|
This file contains helper classes/functions for implementing public key algorithms. More...
#include "modarith.h"#include "filters.h"#include "eprecomp.h"#include "fips140.h"#include "argnames.h"#include <memory>Go to the source code of this file.
Classes | |
| class | TrapdoorFunctionBounds |
| _ More... | |
| class | RandomizedTrapdoorFunction |
| _ More... | |
| class | TrapdoorFunction |
| _ More... | |
| class | RandomizedTrapdoorFunctionInverse |
| _ More... | |
| class | TrapdoorFunctionInverse |
| _ More... | |
| class | PK_EncryptionMessageEncodingMethod |
| message encoding method for public key encryption More... | |
| class | TF_Base |
| _ More... | |
| class | PK_FixedLengthCryptoSystemImpl |
| _ More... | |
| class | TF_CryptoSystemBase |
| _ More... | |
| class | TF_DecryptorBase |
| _ More... | |
| class | TF_EncryptorBase |
| _ More... | |
| class | PK_SignatureMessageEncodingMethod |
| interface for message encoding method for public key signature schemes More... | |
| struct | PK_SignatureMessageEncodingMethod::HashIdentifierLookup |
| struct | PK_SignatureMessageEncodingMethod::HashIdentifierLookup::HashIdentifierLookup2 |
| class | PK_DeterministicSignatureMessageEncodingMethod |
| class | PK_RecoverableSignatureMessageEncodingMethod |
| class | DL_SignatureMessageEncodingMethod_DSA |
| class | DL_SignatureMessageEncodingMethod_NR |
| class | PK_MessageAccumulatorBase |
| class | PK_MessageAccumulatorImpl |
| class | TF_SignatureSchemeBase |
| _ More... | |
| class | TF_SignerBase |
| _ More... | |
| class | TF_VerifierBase |
| _ More... | |
| struct | TF_CryptoSchemeOptions |
| _ More... | |
| struct | TF_SignatureSchemeOptions |
| _ More... | |
| class | TF_ObjectImplBase |
| _ More... | |
| class | TF_ObjectImplExtRef |
| _ More... | |
| class | TF_ObjectImpl |
| _ More... | |
| class | TF_DecryptorImpl |
| _ More... | |
| class | TF_EncryptorImpl |
| _ More... | |
| class | TF_SignerImpl |
| _ More... | |
| class | TF_VerifierImpl |
| _ More... | |
| class | MaskGeneratingFunction |
| _ More... | |
| class | P1363_MGF1 |
| _ More... | |
| class | P1363_KDF2 |
| _ More... | |
| class | DL_BadElement |
| to be thrown by DecodeElement and AgreeWithStaticPrivateKey More... | |
| class | DL_GroupParameters |
| interface for DL group parameters More... | |
| class | DL_GroupParametersImpl |
| _ More... | |
| class | DL_Key |
| _ More... | |
| class | DL_PublicKey |
| interface for DL public keys More... | |
| class | DL_PrivateKey |
| interface for DL private keys More... | |
| class | DL_KeyImpl |
| _ More... | |
| class | DL_PrivateKeyImpl |
| _ More... | |
| class | DL_PrivateKey_WithSignaturePairwiseConsistencyTest |
| _ More... | |
| class | DL_PublicKeyImpl |
| _ More... | |
| class | DL_ElgamalLikeSignatureAlgorithm |
| interface for Elgamal-like signature algorithms More... | |
| class | DL_KeyAgreementAlgorithm |
| interface for DL key agreement algorithms More... | |
| class | DL_KeyDerivationAlgorithm |
| interface for key derivation algorithms used in DL cryptosystems More... | |
| class | DL_SymmetricEncryptionAlgorithm |
| interface for symmetric encryption algorithms used in DL cryptosystems More... | |
| class | DL_Base |
| _ More... | |
| class | DL_SignatureSchemeBase |
| _ More... | |
| class | DL_SignerBase |
| _ More... | |
| class | DL_VerifierBase |
| _ More... | |
| class | DL_CryptoSystemBase |
| _ More... | |
| class | DL_DecryptorBase |
| _ More... | |
| class | DL_EncryptorBase |
| _ More... | |
| struct | DL_SchemeOptionsBase |
| _ More... | |
| struct | DL_KeyedSchemeOptions |
| _ More... | |
| struct | DL_SignatureSchemeOptions |
| _ More... | |
| struct | DL_CryptoSchemeOptions |
| _ More... | |
| class | DL_ObjectImplBase |
| _ More... | |
| class | DL_ObjectImpl |
| _ More... | |
| class | DL_SignerImpl |
| _ More... | |
| class | DL_VerifierImpl |
| _ More... | |
| class | DL_EncryptorImpl |
| _ More... | |
| class | DL_DecryptorImpl |
| _ More... | |
| class | DL_SimpleKeyAgreementDomainBase |
| _ More... | |
| class | DL_KeyAgreementAlgorithm_DH |
| DH key agreement algorithm. More... | |
| class | PK_FinalTemplate |
| A template implementing constructors for public key algorithm classes. More... | |
| struct | EncryptionStandard |
| Base class for public key encryption standard classes. These classes are used to select from variants of algorithms. Note that not all standards apply to all algorithms. More... | |
| struct | SignatureStandard |
| Base class for public key signature standard classes. These classes are used to select from variants of algorithms. Note that not all standards apply to all algorithms. More... | |
| class | TF_ES |
| Trapdoor Function Based Encryption Scheme. More... | |
| class | TF_SS |
| Trapdoor Function Based Signature Scheme. More... | |
| class | DL_SS |
| Discrete Log Based Signature Scheme. More... | |
| class | DL_ES |
| Discrete Log Based Encryption Scheme. More... | |
Typedefs | |
|
typedef std::pair< const byte *, size_t > | HashIdentifier |
|
typedef EnumToType < CofactorMultiplicationOption, NO_COFACTOR_MULTIPLICTION > | NoCofactorMultiplication |
|
typedef EnumToType < CofactorMultiplicationOption, COMPATIBLE_COFACTOR_MULTIPLICTION > | CompatibleCofactorMultiplication |
|
typedef EnumToType < CofactorMultiplicationOption, INCOMPATIBLE_COFACTOR_MULTIPLICTION > | IncompatibleCofactorMultiplication |
Enumerations | |
| enum | CofactorMultiplicationOption { NO_COFACTOR_MULTIPLICTION, COMPATIBLE_COFACTOR_MULTIPLICTION, INCOMPATIBLE_COFACTOR_MULTIPLICTION } |
Functions | |
| void | P1363_MGF1KDF2_Common (HashTransformation &hash, byte *output, size_t outputLength, const byte *input, size_t inputLength, const byte *derivationParams, size_t derivationParamsLength, bool mask, unsigned int counterStart) |
This file contains helper classes/functions for implementing public key algorithms.
The class hierachies in this .h file tend to look like this:
x1
/ \
y1 z1
| |
x2<y1> x2<z1>
| |
y2 z2
| |
x3<y2> x3<z2>
| |
y3 z3
The "TF_" prefix means an implementation using trapdoor functions on integers. The "DL_" prefix means an implementation using group operations (in groups where discrete log is hard).
Definition in file pubkey.h.
1.7.5