Crypto++  8.0
Free C++ class library of cryptographic schemes
Public Types | List of all members
DL_GroupParameters_LUC_DefaultSafePrime Class Reference

GF(p) group parameters that default to safe primes. More...

+ Inheritance diagram for DL_GroupParameters_LUC_DefaultSafePrime:

Public Types

typedef NoCofactorMultiplication DefaultCofactorOption
 
- Public Types inherited from DL_GroupParameters_IntegerBasedImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC >
typedef DL_GroupPrecomputation_LUC ::Element Element
 
- Public Types inherited from DL_GroupParametersImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC, DL_GroupParameters_IntegerBased >
typedef DL_GroupPrecomputation_LUC GroupPrecomputation
 
typedef DL_GroupPrecomputation_LUC ::Element Element
 
typedef DL_BasePrecomputation_LUC BasePrecomputation
 
- Public Types inherited from DL_GroupParameters< Integer >
typedef Integer Element
 

Additional Inherited Members

- Public Member Functions inherited from DL_GroupParameters_LUC
bool IsIdentity (const Integer &element) const
 Determines if an element is an identity. More...
 
void SimultaneousExponentiate (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const
 
Element MultiplyElements (const Element &a, const Element &b) const
 
Element CascadeExponentiate (const Element &element1, const Integer &exponent1, const Element &element2, const Integer &exponent2) const
 
bool GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const
 Get a named value. More...
 
- Public Member Functions inherited from DL_GroupParameters_IntegerBasedImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC >
bool GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const
 Get a named value. More...
 
void AssignFrom (const NameValuePairs &source)
 Assign values to this object. More...
 
const DL_FixedBasePrecomputation< Element > & GetBasePrecomputation () const
 Retrieves the group precomputation. More...
 
DL_FixedBasePrecomputation< Element > & AccessBasePrecomputation ()
 Retrieves the group precomputation. More...
 
const IntegerGetModulus () const
 
const IntegerGetGenerator () const
 
void SetModulusAndSubgroupGenerator (const Integer &p, const Integer &g)
 
bool operator== (const DL_GroupParameters_IntegerBasedImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC > &rhs) const
 
bool operator!= (const DL_GroupParameters_IntegerBasedImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC > &rhs) const
 
- Public Member Functions inherited from DL_GroupParametersImpl< DL_GroupPrecomputation_LUC, DL_BasePrecomputation_LUC, DL_GroupParameters_IntegerBased >
const DL_GroupPrecomputation< Element > & GetGroupPrecomputation () const
 Retrieves the group precomputation. More...
 
const DL_FixedBasePrecomputation< Element > & GetBasePrecomputation () const
 Retrieves the group precomputation. More...
 
DL_FixedBasePrecomputation< Element > & AccessBasePrecomputation ()
 Retrieves the group precomputation. More...
 
- Public Member Functions inherited from DL_GroupParameters_IntegerBased
void Initialize (const DL_GroupParameters_IntegerBased &params)
 Initialize a group parameters over integers. More...
 
void Initialize (RandomNumberGenerator &rng, unsigned int pbits)
 Create a group parameters over integers. More...
 
void Initialize (const Integer &p, const Integer &g)
 Initialize a group parameters over integers. More...
 
void Initialize (const Integer &p, const Integer &q, const Integer &g)
 Initialize a group parameters over integers. More...
 
void BERDecode (BufferedTransformation &bt)
 Decode this object from a BufferedTransformation. More...
 
void DEREncode (BufferedTransformation &bt) const
 Encode this object into a BufferedTransformation. More...
 
void GenerateRandom (RandomNumberGenerator &rng, const NameValuePairs &alg)
 
const IntegerGetSubgroupOrder () const
 Retrieves the subgroup order. More...
 
Integer GetGroupOrder () const
 Retrieves the order of the group. More...
 
bool ValidateGroup (RandomNumberGenerator &rng, unsigned int level) const
 Check the group for errors. More...
 
bool ValidateElement (unsigned int level, const Integer &element, const DL_FixedBasePrecomputation< Integer > *precomp) const
 Check the element for errors. More...
 
bool FastSubgroupCheckAvailable () const
 
void EncodeElement (bool reversible, const Element &element, byte *encoded) const
 
unsigned int GetEncodedElementSize (bool reversible) const
 Retrieves the encoded element's size. More...
 
Integer DecodeElement (const byte *encoded, bool checkForGroupMembership) const
 Decodes the element. More...
 
Integer ConvertElementToInteger (const Element &element) const
 Converts an element to an Integer. More...
 
Integer GetMaxExponent () const
 Retrieves the maximum exponent for the group. More...
 
OID GetAlgorithmID () const
 
void SetSubgroupOrder (const Integer &q)
 
- Public Member Functions inherited from ASN1CryptoMaterial< DL_GroupParameters< Integer > >
void Save (BufferedTransformation &bt) const
 DER encode ASN.1 object. More...
 
void Load (BufferedTransformation &bt)
 BER decode ASN.1 object. More...
 
- Public Member Functions inherited from ASN1Object
virtual void BEREncode (BufferedTransformation &bt) const
 Encode this object into a BufferedTransformation. More...
 
- Public Member Functions inherited from DL_GroupParameters< Integer >
bool Validate (RandomNumberGenerator &rng, unsigned int level) const
 Check this object for errors. More...
 
bool GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const
 Get a named value. More...
 
bool SupportsPrecomputation () const
 Determines whether the object supports precomputation. More...
 
void Precompute (unsigned int precomputationStorage=16)
 Perform precomputation. More...
 
void LoadPrecomputation (BufferedTransformation &storedPrecomputation)
 Retrieve previously saved precomputation. More...
 
void SavePrecomputation (BufferedTransformation &storedPrecomputation) const
 Save precomputation for later use. More...
 
virtual const ElementGetSubgroupGenerator () const
 Retrieves the subgroup generator. More...
 
virtual void SetSubgroupGenerator (const Element &base)
 Sets the subgroup generator. More...
 
virtual Element ExponentiateBase (const Integer &exponent) const
 Exponentiates the base. More...
 
virtual Element ExponentiateElement (const Element &base, const Integer &exponent) const
 Exponentiates an element. More...
 
virtual Integer GetCofactor () const
 Retrieves the cofactor. More...
 
virtual void EncodeElement (bool reversible, const Element &element, byte *encoded) const=0
 Encodes the element. More...
 
virtual void SimultaneousExponentiate (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const=0
 Exponentiates a base to multiple exponents. More...
 
- Public Member Functions inherited from GeneratableCryptoMaterial
void GenerateRandomWithKeySize (RandomNumberGenerator &rng, unsigned int keySize)
 Generate a random key or crypto parameters. More...
 
- Public Member Functions inherited from CryptoMaterial
virtual void ThrowIfInvalid (RandomNumberGenerator &rng, unsigned int level) const
 Check this object for errors. More...
 
void DoQuickSanityCheck () const
 Perform a quick sanity check. More...
 
- Public Member Functions inherited from NameValuePairs
template<class T >
bool GetThisObject (T &object) const
 Get a copy of this object or subobject. More...
 
template<class T >
bool GetThisPointer (T *&ptr) const
 Get a pointer to this object. More...
 
template<class T >
bool GetValue (const char *name, T &value) const
 Get a named value. More...
 
template<class T >
GetValueWithDefault (const char *name, T defaultValue) const
 Get a named value. More...
 
std::string GetValueNames () const
 Get a list of value names that can be retrieved. More...
 
bool GetIntValue (const char *name, int &value) const
 Get a named value with type int. More...
 
int GetIntValueWithDefault (const char *name, int defaultValue) const
 Get a named value with type int, with default. More...
 
bool GetWord64Value (const char *name, word64 &value) const
 Get a named value with type word64. More...
 
word64 GetWord64ValueWithDefault (const char *name, word64 defaultValue) const
 Get a named value with type word64, with default. More...
 
template<class T >
void GetRequiredParameter (const char *className, const char *name, T &value) const
 Retrieves a required name/value pair. More...
 
void GetRequiredIntParameter (const char *className, const char *name, int &value) const
 Retrieves a required name/value pair. More...
 
- Static Public Member Functions inherited from DL_GroupParameters_IntegerBased
static std::string StaticAlgorithmNamePrefix ()
 
- Static Public Member Functions inherited from NameValuePairs
static void ThrowIfTypeMismatch (const char *name, const std::type_info &stored, const std::type_info &retrieving)
 Ensures an expected name and type is present. More...
 

Detailed Description

GF(p) group parameters that default to safe primes.

Since
Crypto++ 2.1

Definition at line 254 of file luc.h.


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