|
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< TFI, MEI > |
| _ More...
|
|
class | PK_FixedLengthCryptoSystemImpl< BASE > |
| _ More...
|
|
class | TF_CryptoSystemBase< INTERFACE, BASE > |
| _ 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< H > |
|
class | PK_DeterministicSignatureMessageEncodingMethod |
|
class | PK_RecoverableSignatureMessageEncodingMethod |
|
class | DL_SignatureMessageEncodingMethod_DSA |
|
class | DL_SignatureMessageEncodingMethod_NR |
|
class | PK_MessageAccumulatorBase |
|
class | PK_MessageAccumulatorImpl< HASH_ALGORITHM > |
|
class | TF_SignatureSchemeBase< INTERFACE, BASE > |
| _ More...
|
|
class | TF_SignerBase |
| _ More...
|
|
class | TF_VerifierBase |
| _ More...
|
|
struct | TF_CryptoSchemeOptions< T1, T2, T3 > |
| _ More...
|
|
struct | TF_SignatureSchemeOptions< T1, T2, T3, T4 > |
| _ More...
|
|
class | TF_ObjectImplBase< BASE, SCHEME_OPTIONS, KEY_CLASS > |
| _ More...
|
|
class | TF_ObjectImplExtRef< BASE, SCHEME_OPTIONS, KEY > |
| _ More...
|
|
class | TF_ObjectImpl< BASE, SCHEME_OPTIONS, KEY_CLASS > |
| _ More...
|
|
class | TF_DecryptorImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | TF_EncryptorImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | TF_SignerImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | TF_VerifierImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | MaskGeneratingFunction |
| _ More...
|
|
class | P1363_MGF1 |
| _ More...
|
|
class | P1363_KDF2< H > |
| _ More...
|
|
class | DL_BadElement |
| to be thrown by DecodeElement and AgreeWithStaticPrivateKey More...
|
|
class | DL_GroupParameters< T > |
| interface for DL group parameters More...
|
|
class | DL_GroupParametersImpl< GROUP_PRECOMP, BASE_PRECOMP, BASE > |
| _ More...
|
|
class | DL_Key< T > |
| _ More...
|
|
class | DL_PublicKey< T > |
| interface for DL public keys More...
|
|
class | DL_PrivateKey< T > |
| interface for DL private keys More...
|
|
class | DL_KeyImpl< PK, GP, O > |
| _ More...
|
|
class | DL_PrivateKeyImpl< GP > |
| _ More...
|
|
class | DL_PrivateKey_WithSignaturePairwiseConsistencyTest< BASE, SIGNATURE_SCHEME > |
| _ More...
|
|
class | DL_PublicKeyImpl< GP > |
| _ More...
|
|
class | DL_ElgamalLikeSignatureAlgorithm< T > |
| interface for Elgamal-like signature algorithms More...
|
|
class | DL_KeyAgreementAlgorithm< T > |
| interface for DL key agreement algorithms More...
|
|
class | DL_KeyDerivationAlgorithm< T > |
| 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< KI > |
| _ More...
|
|
class | DL_SignatureSchemeBase< INTERFACE, KEY_INTERFACE > |
| _ More...
|
|
class | DL_SignerBase< T > |
| _ More...
|
|
class | DL_VerifierBase< T > |
| _ More...
|
|
class | DL_CryptoSystemBase< PK, KI > |
| _ More...
|
|
class | DL_DecryptorBase< T > |
| _ More...
|
|
class | DL_EncryptorBase< T > |
| _ More...
|
|
struct | DL_SchemeOptionsBase< T1, T2 > |
| _ More...
|
|
struct | DL_KeyedSchemeOptions< T1, T2 > |
| _ More...
|
|
struct | DL_SignatureSchemeOptions< T1, T2, T3, T4, T5 > |
| _ More...
|
|
struct | DL_CryptoSchemeOptions< T1, T2, T3, T4, T5 > |
| _ More...
|
|
class | DL_ObjectImplBase< BASE, SCHEME_OPTIONS, KEY > |
| _ More...
|
|
class | DL_ObjectImpl< BASE, SCHEME_OPTIONS, KEY > |
| _ More...
|
|
class | DL_SignerImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | DL_VerifierImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | DL_EncryptorImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | DL_DecryptorImpl< SCHEME_OPTIONS > |
| _ More...
|
|
class | DL_SimpleKeyAgreementDomainBase< T > |
| _ More...
|
|
class | DL_KeyAgreementAlgorithm_DH< ELEMENT, COFACTOR_OPTION > |
| DH key agreement algorithm. More...
|
|
class | PK_FinalTemplate< BASE > |
| 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< STANDARD, KEYS, ALG_INFO > |
| Trapdoor Function Based Encryption Scheme. More...
|
|
class | TF_ES< STANDARD, KEYS, ALG_INFO > |
| Trapdoor Function Based Encryption Scheme. More...
|
|
class | TF_SS< STANDARD, H, KEYS, ALG_INFO > |
| Trapdoor Function Based Signature Scheme. More...
|
|
class | TF_SS< STANDARD, H, KEYS, ALG_INFO > |
| Trapdoor Function Based Signature Scheme. More...
|
|
class | DL_SS< KEYS, SA, MEM, H, ALG_INFO > |
| Discrete Log Based Signature Scheme. More...
|
|
class | DL_SS< KEYS, SA, MEM, H, ALG_INFO > |
| Discrete Log Based Signature Scheme. More...
|
|
class | DL_ES< KEYS, AA, DA, EA, ALG_INFO > |
| Discrete Log Based Encryption Scheme. More...
|
|
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
- x1, y1, z1 are abstract interface classes defined in cryptlib.h
- x2, y2, z2 are implementations of the interfaces using "abstract policies", which are pure virtual functions that should return interfaces to interchangeable algorithms. These classes have "Base" suffixes.
- x3, y3, z3 hold actual algorithms and implement those virtual functions. These classes have "Impl" suffixes.
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.