The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Crypt::ECDSA::Point -- Elliptic curve points for EC cryptography

DESCRIPTION

These are for use with Crypt::ECDSA, a Math::BigInt based cryptography module. These routines work most efficiently if the GMP math library is installed, and in particular the point multiply function may be quite tedious without the GMP math library, which enables Math::BigInt::GMP.

METHODS

new
  Constructor.  Takes the following named pair arguments:
  
  X           => x coordinate,
  Y           => y coordinate,
  curve       => Crypt::ECDSA::Curve derived curve,
  order       => point order,
  is_infinity => set to 1 if this is to be the point at infinity  (optional)
X
  Returns or sets the point's x coordinate 
  
Y
  Returns or sets the point's y coordinate 
order
  returns or sets the point order, if known
  
order
  Returns or sets the Crypt::ECDSA::Curve upon which the point exists
is_point_at_infinity
  Returns 1 if the point is the point at infinity for the EC curve, 
  otherwise undef.
  
deep_copy
  Overloaded to '='
  Returns a new point that copies the internals of the point (a cloned copy 
  rather than just a reference).
  
add
  my $P3 = $P1 + $P2;

  Overloaded to '+'
  Returns the point that is the sum of two points on the curve
double
  my $double = $p->double(); 

  returns a point that is the point's double on the curve.
multiply
  my $Q = $G * $d;

  Multiply a point by a scalar (not a point by a point!)

  Overloaded to '*'
  Note: in order to be sure the proper multiply is done, I suggest that a mutiply
  of point $P by scalar $k be written $P * $k, not $k * $P.
is_equal_to
  if( $p1 == $p2) { ; }

  Overloaded to '=='
  Returns 1 if the points are equal (on the same curve as well).

AUTHOR

   William Herrera B<wherrera@skylightview.com>. 

SUPPORT

Questions, feature requests and bug reports should go to <wherrera@skylightview.com>.

COPYRIGHT

    Copyright (c) 2007 William Herrera. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

1 POD Error

The following errors were encountered while parsing the POD:

Around line 226:

=over without closing =back