DL_GroupParameters_DSA Class Reference

DSA group parameters, these are GF(p) group parameters that are allowed by the DSA standard. More...

#include <gfpcrypt.h>

Inheritance diagram for DL_GroupParameters_DSA:

DL_GroupParameters_GFP DL_GroupParameters_IntegerBasedImpl< ModExpPrecomputation > DL_GroupParametersImpl< GROUP_PRECOMP, BASE_PRECOMP, DL_GroupParameters_IntegerBased >

List of all members.

Public Types

typedef GROUP_PRECOMP::Element Element
typedef GROUP_PRECOMP GroupPrecomputation
typedef BASE_PRECOMP BasePrecomputation

Public Member Functions

bool ValidateGroup (RandomNumberGenerator &rng, unsigned int level) const
void GenerateRandom (RandomNumberGenerator &rng, const NameValuePairs &alg)
bool IsIdentity (const Integer &element) const
void SimultaneousExponentiate (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const
bool GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) 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
void AssignFrom (const NameValuePairs &source)
const
DL_FixedBasePrecomputation
< Element > & 
GetBasePrecomputation () const
DL_FixedBasePrecomputation
< Element > & 
AccessBasePrecomputation ()
const IntegerGetModulus () const
const IntegerGetGenerator () const
void SetModulusAndSubgroupGenerator (const Integer &p, const Integer &g)
bool operator== (const DL_GroupParameters_IntegerBasedImpl< GROUP_PRECOMP, BASE_PRECOMP > &rhs) const
bool operator!= (const DL_GroupParameters_IntegerBasedImpl< GROUP_PRECOMP, BASE_PRECOMP > &rhs) const
const DL_GroupPrecomputation
< Element > & 
GetGroupPrecomputation () const

Protected Member Functions

int GetFieldType () const

Protected Attributes

GROUP_PRECOMP m_groupPrecomputation
BASE_PRECOMP m_gpc


Detailed Description

DSA group parameters, these are GF(p) group parameters that are allowed by the DSA standard.

Definition at line 364 of file gfpcrypt.h.


Member Function Documentation

bool DL_GroupParameters_DSA::ValidateGroup ( RandomNumberGenerator rng,
unsigned int  level 
) const

also checks that the lengths of p and q are allowed by the DSA standard

Definition at line 61 of file gfpcrypt.cpp.

void DL_GroupParameters_DSA::GenerateRandom ( RandomNumberGenerator rng,
const NameValuePairs alg 
)

parameters: (ModulusSize), or (Modulus, SubgroupOrder, SubgroupGenerator)

ModulusSize must be between DSA::MIN_PRIME_LENGTH and DSA::MAX_PRIME_LENGTH, and divisible by DSA::PRIME_LENGTH_MULTIPLE

Definition at line 26 of file gfpcrypt.cpp.

References RandomNumberGenerator::GenerateBlock(), DSA::GeneratePrimes(), NameValuePairs::GetIntValue(), NameValuePairs::GetValue(), NameValuePairs::GetValueWithDefault(), and Integer::Randomize().


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

Generated on Mon Oct 27 02:45:39 2008 for Crypto++ by  doxygen 1.5.7.1