Crypto++  8.6
Free C++ class library of cryptographic schemes
Public Types | Public Member Functions | List of all members
EcPrecomputation< ECP > Class Reference

ECP precomputation specialization. More...

+ Inheritance diagram for EcPrecomputation< ECP >:

Public Types

typedef ECP EllipticCurve
 
- Public Types inherited from DL_GroupPrecomputation< ECP::Point >
typedef ECP::Point Element
 

Public Member Functions

bool NeedConversions () const
 
Element ConvertIn (const Element &P) const
 Converts an element between representations. More...
 
Element ConvertOut (const Element &P) const
 Converts an element between representations. More...
 
const AbstractGroup< Element > & GetGroup () const
 
Element BERDecodeElement (BufferedTransformation &bt) const
 Decodes element in DER format. More...
 
void DEREncodeElement (BufferedTransformation &bt, const Element &v) const
 Encodes element in DER format. More...
 
void SetCurve (const ECP &ec)
 Set the elliptic curve. More...
 
const ECPGetCurve () const
 Get the elliptic curve. More...
 
- Public Member Functions inherited from DL_GroupPrecomputation< ECP::Point >
virtual bool NeedConversions () const
 Determines if elements needs conversion. More...
 
virtual const AbstractGroup< Element > & GetGroup () const=0
 Retrieves AbstractGroup interface. More...
 

Detailed Description

ECP precomputation specialization.

Implementation of DL_GroupPrecomputation<ECP::Point> with input and output conversions for Montgomery modular multiplication.

See also
DL_GroupPrecomputation, ModularArithmetic, MontgomeryRepresentation

Definition at line 126 of file ecp.h.

Member Function Documentation

◆ ConvertIn()

Element EcPrecomputation< ECP >::ConvertIn ( const Element v) const
inlinevirtual

Converts an element between representations.

Parameters
velement to convert
Returns
an element converted to an alternate representation for internal use

ConvertIn is used when an element must convert between representations.

Reimplemented from DL_GroupPrecomputation< ECP::Point >.

Definition at line 135 of file ecp.h.

◆ ConvertOut()

Element EcPrecomputation< ECP >::ConvertOut ( const Element v) const
inlinevirtual

Converts an element between representations.

Parameters
velement to convert
Returns
an element converted from an alternate representation

Reimplemented from DL_GroupPrecomputation< ECP::Point >.

Definition at line 137 of file ecp.h.

◆ BERDecodeElement()

Element EcPrecomputation< ECP >::BERDecodeElement ( BufferedTransformation bt) const
inlinevirtual

Decodes element in DER format.

Parameters
btBufferedTransformation object
Returns
element in the group

Implements DL_GroupPrecomputation< ECP::Point >.

Definition at line 140 of file ecp.h.

◆ DEREncodeElement()

void EcPrecomputation< ECP >::DEREncodeElement ( BufferedTransformation bt,
const Element P 
) const
inlinevirtual

Encodes element in DER format.

Parameters
btBufferedTransformation object
PElement to encode

Implements DL_GroupPrecomputation< ECP::Point >.

Definition at line 141 of file ecp.h.

◆ SetCurve()

void EcPrecomputation< ECP >::SetCurve ( const ECP ec)
inline

Set the elliptic curve.

Parameters
ecECP derived class

SetCurve() is not inherited

Definition at line 146 of file ecp.h.

◆ GetCurve()

const ECP& EcPrecomputation< ECP >::GetCurve ( ) const
inline

Get the elliptic curve.

Returns
ECP curve

GetCurve() is not inherited

Definition at line 155 of file ecp.h.


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