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

ECP precomputation specialization. More...

#include <ecp.h>

+ 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
 Determines if elements needs conversion.
 
Element ConvertIn (const Element &P) const
 Converts an element between representations.
 
Element ConvertOut (const Element &P) const
 Converts an element between representations.
 
const AbstractGroup< Element > & GetGroup () const
 Retrieves AbstractGroup interface.
 
Element BERDecodeElement (BufferedTransformation &bt) const
 Decodes element in DER format.
 
void DEREncodeElement (BufferedTransformation &bt, const Element &v) const
 Encodes element in DER format.
 
void SetCurve (const ECP &ec)
 Set the elliptic curve.
 
const ECPGetCurve () const
 Get the elliptic curve.
 

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 Typedef Documentation

◆ EllipticCurve

typedef ECP EcPrecomputation< ECP >::EllipticCurve

Definition at line 129 of file ecp.h.

Constructor & Destructor Documentation

◆ ~EcPrecomputation()

virtual EcPrecomputation< ECP >::~EcPrecomputation ( )
inlinevirtual

Definition at line 131 of file ecp.h.

Member Function Documentation

◆ NeedConversions()

bool EcPrecomputation< ECP >::NeedConversions ( ) const
inlinevirtual

Determines if elements needs conversion.

Returns
true if the element needs conversion, false otherwise

NeedConversions determines if an element must convert between representations.

Reimplemented from DL_GroupPrecomputation< ECP::Point >.

Definition at line 134 of file ecp.h.

◆ 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.

◆ GetGroup()

const AbstractGroup< Element > & EcPrecomputation< ECP >::GetGroup ( ) const
inlinevirtual

Retrieves AbstractGroup interface.

Returns
GetGroup() returns the AbstractGroup interface

Implements DL_GroupPrecomputation< ECP::Point >.

Definition at line 139 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: