#include <point.h>
Public Types | |
| typedef Polynomial | polynomial_type |
| The type of the field over which the elliptic curve is defined. | |
Public Member Functions | |
| point (void) | |
| Construct the point at infinity (zero). | |
| point (std::string x, std::string y) | |
| Construct a point (x, y) from the strings x and y. | |
| point (polynomial_type const &x, polynomial_type const &y) | |
| Construct a point (x, y) from the polynomials x and y. | |
| point & | operator= (point const &p1) |
| Copy constructor. | |
| point & | operator+= (point const &p1) |
| Add point p1 to this point. | |
| void | MULTIPLY_and_assign (point const &pnt, mpz_class const &scalar) |
| Multiply the point pnt with scalar and assign the result to this object. | |
| mpz_class | order (order_algorithm algorithm=order_default) const |
| Calculate the order of this point. | |
| bool | operator== (point const &p1) const |
| Compare for equality. | |
| bool | operator!= (point const &p1) const |
| Compare for inequality. | |
| bool | check (void) const |
| Check if the current point is a solution of the elliptic curve. | |
| polynomial_type const & | get_x (void) const |
| Retrieve the value of the x coordinate. | |
| polynomial_type const & | get_y (void) const |
| Retrieve the value of the y coordinate. | |
| bool | is_zero (void) const |
| Return if this is the point at infinity or not. | |
| void | print_on (std::ostream &os) const |
| Print the coordinates of this point to an ostream. | |
This class represents a point (x,y) on the elliptic curve x3 + ax2 + b = y2 + xy where x, y, a and b are of the type Polynomial, elements of F2m.
|
|||||
|
The type of the field over which the elliptic curve is defined.
|
|
||||||||||
|
Construct the point at infinity (zero).
|
|
||||||||||||||||
|
Construct a point (x, y) from the strings x and y. The strings are passed directly to two variables of type polynomial_type. |
|
||||||||||||||||
|
Construct a point (x, y) from the polynomials x and y.
|
|
||||||||||
|
Check if the current point is a solution of the elliptic curve.
|
|
||||||||||
|
Retrieve the value of the x coordinate. This value is only valid when is_zero returns false. |
|
||||||||||
|
Retrieve the value of the y coordinate. This value is only valid when is_zero returns false. |
|
||||||||||
|
Return if this is the point at infinity or not.
|
|
||||||||||||||||
|
Multiply the point pnt with scalar and assign the result to this object.
|
|
||||||||||
|
Compare for inequality.
|
|
||||||||||
|
Add point p1 to this point.
|
|
||||||||||
|
Copy constructor.
|
|
||||||||||
|
Compare for equality.
|
|
||||||||||
|
Calculate the order of this point.
|
|
||||||||||
|
Print the coordinates of this point to an ostream.
|