|
Crypto++ 8.9
Free C++ class library of cryptographic schemes
|
#include <luc.h>
Inheritance diagram for DL_BasePrecomputation_LUC:Public Member Functions | |
| bool | IsInitialized () const |
| Determines whether this object is initialized. | |
| void | SetBase (const DL_GroupPrecomputation< Element > &group, const Integer &base) |
| Set the base element. | |
| const Integer & | GetBase (const DL_GroupPrecomputation< Element > &group) const |
| Get the base element. | |
| void | Precompute (const DL_GroupPrecomputation< Element > &group, unsigned int maxExpBits, unsigned int storage) |
| Perform precomputation. | |
| void | Load (const DL_GroupPrecomputation< Element > &group, BufferedTransformation &storedPrecomputation) |
| Retrieve previously saved precomputation. | |
| void | Save (const DL_GroupPrecomputation< Element > &group, BufferedTransformation &storedPrecomputation) const |
| Save precomputation for later use. | |
| Integer | Exponentiate (const DL_GroupPrecomputation< Element > &group, const Integer &exponent) const |
| Exponentiates an element. | |
| Integer | CascadeExponentiate (const DL_GroupPrecomputation< Element > &group, const Integer &exponent, const DL_FixedBasePrecomputation< Integer > &pc2, const Integer &exponent2) const |
| Exponentiates an element. | |
Additional Inherited Members | |
Public Types inherited from DL_FixedBasePrecomputation< Integer > | |
| typedef Integer | Element |
|
inlinevirtual |
|
inlinevirtual |
Determines whether this object is initialized.
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Set the base element.
| group | the group |
| base | element in the group |
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Get the base element.
| group | the group |
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Perform precomputation.
| group | the group |
| maxExpBits | used to calculate the exponent base |
| storage | the suggested number of objects for the precompute table |
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.
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Retrieve previously saved precomputation.
| group | the group |
| storedPrecomputation | BufferedTransformation with the saved precomputation |
| NotImplemented |
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Save precomputation for later use.
| group | the group |
| storedPrecomputation | BufferedTransformation to write the precomputation |
| NotImplemented |
Implements DL_FixedBasePrecomputation< Integer >.
|
virtual |
Exponentiates an element.
| group | the group |
| exponent | the exponent |
Implements DL_FixedBasePrecomputation< Integer >.
|
inlinevirtual |
Exponentiates an element.
| pc1 | the first the group precomputation |
| exponent1 | the first exponent |
| pc2 | the second the group precomputation |
| exponent2 | the first exponent2 |
CascadeExponentiateBaseAndPublicElement raises the public element to the base element and precomputation.
Implements DL_FixedBasePrecomputation< Integer >.