1
$\begingroup$

How can one generate a 'Generator Point' on an elliptic curve that has an extremely low order.

Take this Elliptic Curve from HTB Cyber Apocalypse 2024. The order of G is 11. How can one replicate this but for different custom curves.

Curve in question:

p = 6811640204116707417092117962115673978365477767365408659433165386030330695774965849821512765233994033921595018695941912899856987893397852151975650548637533
F = GF(p)
E = EllipticCurve(F, [726, 42])
G=E(926644437000604217447316655857202297402572559368538978912888106419470011487878351667380679323664062362524967242819810112524880301882054682462685841995367, 4856802955780604241403155772782614224057462426619061437325274365157616489963087648882578621484232159439344263863246191729458550632500259702851115715803253)

print(G.order()) #### Output is 11
$\endgroup$
2

1 Answer 1

2
$\begingroup$

If one does not get to choose the “custom” elliptic curve, the recipe would look like this:

  1. Find the order $n$ of the “custom” elliptic curve (using Schoof's algorithm or some variant of it);

  2. Hope that $n$ has some small prime factor $\ell$;

  3. If you take a random point $P$ on the curve, $G = [n/\ell] P$ will be of order $\ell$ with high probability (and if it isn't, you can pick a different $P$ and try again).

For the different problem of constructing an elliptic curve with a point of order $\ell$, there are better approaches, however (involving the modular curve $X_1(\ell)$).

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.