Crypto++
5.6.5
Free C++ class library of cryptographic schemes
|
_ More...
Public Types | |
typedef GP::Element | Element |
![]() | |
typedef GP::Element | Element |
![]() | |
typedef GP | GroupParameters |
Public Member Functions | |
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... | |
void | AssignFrom (const NameValuePairs &source) |
Assign values to this object. 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... | |
const DL_GroupParameters < Element > & | GetAbstractGroupParameters () const |
Retrieves abstract group parameters. More... | |
DL_GroupParameters< Element > & | AccessAbstractGroupParameters () |
Retrieves abstract group parameters. More... | |
const DL_FixedBasePrecomputation < Element > & | GetPublicPrecomputation () const |
DL_FixedBasePrecomputation < Element > & | AccessPublicPrecomputation () |
bool | operator== (const DL_PublicKeyImpl< GP > &rhs) const |
![]() | |
bool | GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const |
void | AssignFrom (const NameValuePairs &source) |
virtual const Element & | GetPublicElement () const |
virtual void | SetPublicElement (const Element &y) |
virtual Element | ExponentiatePublicElement (const Integer &exponent) const |
virtual Element | CascadeExponentiateBaseAndPublicElement (const Integer &baseExp, const Integer &publicExp) const |
![]() | |
OID | GetAlgorithmID () const |
Retrieves the OID of the algorithm. More... | |
bool | BERDecodeAlgorithmParameters (BufferedTransformation &bt) |
bool | DEREncodeAlgorithmParameters (BufferedTransformation &bt) const |
const GP & | GetGroupParameters () const |
GP & | AccessGroupParameters () |
![]() | |
void | BERDecode (BufferedTransformation &bt) |
Decode this object from a BufferedTransformation. More... | |
void | DEREncode (BufferedTransformation &bt) const |
Encode this object into a BufferedTransformation. More... | |
virtual void | BERDecodePublicKey (BufferedTransformation &bt, bool parametersPresent, size_t size)=0 |
decode subjectPublicKey part of subjectPublicKeyInfo, without the BIT STRING header | |
virtual void | DEREncodePublicKey (BufferedTransformation &bt) const =0 |
encode subjectPublicKey part of subjectPublicKeyInfo, without the BIT STRING header | |
![]() | |
void | Save (BufferedTransformation &bt) const |
DER encode ASN.1 object. More... | |
void | Load (BufferedTransformation &bt) |
BER decode ASN.1 object. More... | |
![]() | |
virtual void | BEREncode (BufferedTransformation &bt) const |
Encode this object into a BufferedTransformation. More... | |
![]() | |
virtual void | ThrowIfInvalid (RandomNumberGenerator &rng, unsigned int level) const |
Check this object for errors. More... | |
void | DoQuickSanityCheck () const |
Perform a quick sanity check. More... | |
![]() | |
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 > | |
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... | |
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... | |
Additional Inherited Members | |
![]() | |
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... | |
|
inlinevirtual |
Check this object for errors.
rng | a RandomNumberGenerator for objects which use randomized testing |
level | the level of thoroughness |
There are four levels of thoroughness:
Level 0 does not require a RandomNumberGenerator. A NullRNG() can be used for level 0. Level 1 may not check for weak keys and such. Levels 2 and 3 are recommended.
Implements CryptoMaterial.
|
inlinevirtual |
Get a named value.
name | the name of the object or value to retrieve |
valueType | reference to a variable that receives the value |
pValue | void pointer to a variable that receives the value |
GetVoidValue() retrives the value of name if it exists.
Implements NameValuePairs.
|
inlinevirtual |
Assign values to this object.
This function can be used to create a public key from a private key.
Implements CryptoMaterial.
|
inlinevirtual |
Determines whether the object supports precomputation.
Reimplemented from CryptoMaterial.
|
inlinevirtual |
Perform precomputation.
precomputationStorage | the suggested number of objects for the precompute table |
NotImplemented |
The exact semantics of Precompute() varies, but it typically means calculate a table of n objects that can be used later to speed up computation.
If a derived class does not override Precompute(), then the base class throws NotImplemented.
Reimplemented from CryptoMaterial.
|
inlinevirtual |
Retrieve previously saved precomputation.
storedPrecomputation | BufferedTransformation with the saved precomputation |
NotImplemented |
Reimplemented from CryptoMaterial.
|
inlinevirtual |
Save precomputation for later use.
storedPrecomputation | BufferedTransformation to write the precomputation |
NotImplemented |
Reimplemented from CryptoMaterial.
|
inlinevirtual |
Retrieves abstract group parameters.
Implements DL_Key< GP::Element >.
|
inlinevirtual |
Retrieves abstract group parameters.
Implements DL_Key< GP::Element >.