Calculating the order of an Elliptic Curve fails. Hi. I would like to calculate the order of the base point on an Elliptic Curve. Some curves are successful while some fail. Here are two examples and their parameters. The first example is successful, the second is not.

Example 1.

p = 10562920556476600174223203553624763158759224241690200395609486946570543757980521851146458516500451409335864053457189473296570712977858859585999979839497081

a = 1

b = 0

E = EllipticCurve(GF(p), [a, b])

Gx = 7001153264502603531568809091006890066238093206490706740054133060198019760090859987689015805782317128823647585142349315457499198272662472818714043462452903

Gy = 5379780378477219053711555876878459214243674711784518156355184015695786277532464885846858297098947964642836892714492422913471742703229817151186461774623684

G = E(Gx, Gy)

Q = G.order()

Q = 5532044755580494717

Example 2.

p = 8245498483844445086274997696534494324318871629323439587180432555305925857658196874670618312457436840885370130522487176480691396150486059031119600012524801

a = 1

b = 0

E = EllipticCurve(GF(p), [a, b])

Gx = 7273571546843413099993191994471155206649636421268389195048812757571665656628711965470673099293494650775090608549703675296316887753017258939382696588767431

Gy = 3529068830277582088596828423990199939817342479929127252014627303069162247307070606247527579307935679046819531543049464667736359244475241042487530444236684

G = E(Gx, Gy)

Q = G.order()

* Warning: MPQS: number too big to be factored with MPQS, giving up.

both these two curves are working curves. but why does sage fail to calculate the second curves order of G? Is it a limitation of sage itself? Is there any other way to calculate the order without using MPQS method?

edit retag close merge delete