#include <eccrypto.h>
Inheritance diagram for DL_PublicKey_EC< EC >:
Definition at line 142 of file eccrypto.h.
Public Types | |
typedef EC::Point | Element |
typedef DL_GroupParameters_EC< EC > | GroupParameters |
Public Member Functions | |
void | Initialize (const DL_GroupParameters_EC< EC > ¶ms, const Element &Q) |
void | Initialize (const EC &ec, const Element &G, const Integer &n, const Element &Q) |
void | BERDecodePublicKey (BufferedTransformation &bt, bool parametersPresent, size_t size) |
decode subjectPublicKey part of subjectPublicKeyInfo, without the BIT STRING header | |
void | DEREncodePublicKey (BufferedTransformation &bt) const |
encode subjectPublicKey part of subjectPublicKeyInfo, without the BIT STRING header | |
bool | Validate (RandomNumberGenerator &rng, unsigned int level) const |
check this object for errors | |
bool | GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const |
void | AssignFrom (const NameValuePairs &source) |
bool | SupportsPrecomputation () const |
| |
void | Precompute (unsigned int precomputationStorage=16) |
do precomputation | |
void | LoadPrecomputation (BufferedTransformation &storedPrecomputation) |
retrieve previously saved precomputation | |
void | SavePrecomputation (BufferedTransformation &storedPrecomputation) const |
save precomputation for later use | |
const DL_GroupParameters< Element > & | GetAbstractGroupParameters () const |
DL_GroupParameters< Element > & | AccessAbstractGroupParameters () |
const DL_FixedBasePrecomputation< Element > & | GetPublicPrecomputation () const |
DL_FixedBasePrecomputation< Element > & | AccessPublicPrecomputation () |
bool | operator== (const DL_PublicKeyImpl< DL_GroupParameters_EC< EC > > &rhs) const |
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 |
bool | BERDecodeAlgorithmParameters (BufferedTransformation &bt) |
bool | DEREncodeAlgorithmParameters (BufferedTransformation &bt) const |
const DL_GroupParameters_EC< EC > & | GetGroupParameters () const |
DL_GroupParameters_EC< EC > & | AccessGroupParameters () |
void | BERDecode (BufferedTransformation &bt) |
decode this object from a BufferedTransformation, using BER (Basic Encoding Rules) | |
void | DEREncode (BufferedTransformation &bt) const |
encode this object into a BufferedTransformation, using DER (Distinguished Encoding Rules) | |
void | Save (BufferedTransformation &bt) const |
save key into a BufferedTransformation | |
void | Load (BufferedTransformation &bt) |
load key from a BufferedTransformation | |
virtual void | BEREncode (BufferedTransformation &bt) const |
encode this object into a BufferedTransformation, using BER |
bool DL_PublicKeyImpl< DL_GroupParameters_EC< EC > >::Validate | ( | RandomNumberGenerator & | rng, | |
unsigned int | level | |||
) | const [inline, virtual, inherited] |
check this object for errors
level | denotes the level of thoroughness: 0 - using this object won't cause a crash or exception (rng is ignored) 1 - this object will probably function (encrypt, sign, etc.) correctly (but may not check for weak keys and such) 2 - make sure this object will function correctly, and do reasonable security checks 3 - do checks that may take a long time |
Implements CryptoMaterial.
Definition at line 845 of file pubkey.h.
References DL_PublicKeyImpl< GP >::GetAbstractGroupParameters(), and DL_PublicKeyImpl< GP >::GetPublicPrecomputation().
void DL_PublicKeyImpl< DL_GroupParameters_EC< EC > >::Precompute | ( | unsigned int | precomputationStorage = 16 |
) | [inline, virtual, inherited] |
do precomputation
The exact semantics of Precompute() is varies, but typically it means calculate a table of n objects that can be used later to speed up computation.
Reimplemented from CryptoMaterial.
Definition at line 864 of file pubkey.h.
References DL_PublicKeyImpl< GP >::AccessAbstractGroupParameters(), DL_PublicKeyImpl< GP >::AccessPublicPrecomputation(), and DL_PublicKeyImpl< GP >::GetAbstractGroupParameters().
void ASN1CryptoMaterial< PublicKey >::Load | ( | BufferedTransformation & | bt | ) | [inline, virtual, inherited] |
Reimplemented from CryptoMaterial.
Reimplemented in InvertibleRSAFunction.
Definition at line 240 of file asn.h.
References ASN1Object::BERDecode().
virtual void ASN1Object::BEREncode | ( | BufferedTransformation & | bt | ) | const [inline, virtual, inherited] |
encode this object into a BufferedTransformation, using BER
this may be useful if DEREncode() would be too inefficient
Definition at line 1579 of file cryptlib.h.
Referenced by ASN1CryptoMaterial< PublicKey >::Save().