[back] [prev] [next] [index] [root]
EccPointIsOnCurve
Checks whether a point is on a given elliptic curve.
Syntax:
b := EccPointIsOnCurve(K,ec,point);
finite field |
K |
|
list |
ec |
|
list |
point |
|
boolean |
b |
|
See also: EccPointsAdd, EccIntPointMult, EccEncryptEccDecrypt, FF
Description:
Checks whether a point P=[x,y] is on the elliptic curve E over
a finite field K. E is
either given by a list of two or five elements of K or integers. If
the equation of E is y^2=x^3+a_4 x+a_6 the curve is represented
by [a_4,a_6], if the equation of E is
y^2+a_1 xy+a_3y=x^3+a_2x^2+a_4 x+a_6 then the representation is
[a_1,a_2,a_3,a_4,a_6]. Points on the curve are given by a pair of
elements of K or integers; the point at infinity is represented by
the empty list [\;].
Example:
kash> K := FF(11);
Finite field of size 11
kash> ec := [0,0,0,1,6];
[ 0, 0, 0, 1, 6 ]
kash> EccPointIsOnCurve(K,ec,[2,7]);
true
kash> EccPointIsOnCurve(K,ec,[1,1]);
false
kash> EccPointIsOnCurve(K,ec,[]);
> true
<- back[back] [prev] [next] [index] [root]