Quick Navigator

 Search Site Miscellaneous Server Agreement Year 2038 Credits
 Math::Prime::Util::ECProjectivePoint(3) User Contributed Perl Documentation Math::Prime::Util::ECProjectivePoint(3)

# NAME

Math::Prime::Util::ECProjectivePoint - Elliptic curve operations for projective points

Version 0.73

# SYNOPSIS

# Create a point on a curve (a,b,n) with coordinates 0,1
my \$ECP = Math::Prime::Util::ECProjectivePoint->new(\$c, \$n, 0, 1);
# scalar multiplication by \$k.
\$ECP->mul(\$k);
# add two points on the same curve
say "P = O" if \$ECP->is_infinity();

# DESCRIPTION

This really should just be in Math::EllipticCurve.
To write.

# FUNCTIONS

## new

\$point = Math::Prime::Util::ECProjectivePoint->new(c, n, x, z);
Returns a new point on the curve defined by the Montgomery parameter c.

## n

Returns the "c", "d", or "n" values that describe the curve.

## d

Returns the precalculated value of "int( (c + 2) / 4 )".

## z

Returns the "x" or "z" values that define the point on the curve.

## f

Returns a possible factor found after "normalize".

Takes another point on the same curve as an argument and adds it this point.

## double

Double the current point on the curve.

## mul

Takes an integer and performs scalar multiplication of the point.

## is_infinity

Returns true if the point is (0,1), which is the point at infinity for the affine coordinates.

## copy

Returns a copy of the point.

## normalize

Performs an extended GCD operation to make "z=1". If a factor of "n" is found it is put in "f".

Math::EllipticCurve::Prime
This really should just be in a Math::EllipticCurve module.

# AUTHORS

Dana Jacobsen <dana@acm.org> Copyright 2012-2013 by Dana Jacobsen <dana@acm.org>
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
 2018-11-15 perl v5.28.1

Search for    or go to Top of page |  Section 3 |  Main Index

Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.