Cryptography Reference
In-Depth Information
y := numtheory:-msqrt(z, p);
if y <> 0 then
EP := [op(EP), [x, y], [x, -y mod p]]
else
EP := [op(EP), [x, y]]
end if;
end if;
end do;
[0, op(EP)]
end proc:
Example 11.4 Let us compute the list of all points on the elliptic curve over
F 2017
given by the equation y 2
x 3
669. We do not print the list as it is too
long but we will plot the curve to appreciate its appearance:
=
+
578 x
+
> ep :=EllipticPoints(EllipticCurve(578, 669, 2017)):
nops(%);
2087
We see that the curve has exactly 2087 points. Next we plot it:
> epp := plots:-pointplot(ep[2 .. -1], symbol = solidcircle, symbolsize = 9):
> plots:-display(epp);
 
Search WWH ::




Custom Search