Ask Your Question

Alice's profile - activity

2022-04-14 10:57:26 +0200 received badge  Famous Question (source)
2020-01-01 19:46:25 +0200 received badge  Famous Question (source)
2018-12-23 12:34:53 +0200 received badge  Notable Question (source)
2018-10-29 15:13:07 +0200 received badge  Popular Question (source)
2018-10-29 15:13:07 +0200 received badge  Notable Question (source)
2017-10-20 08:46:35 +0200 received badge  Popular Question (source)
2017-02-28 11:19:45 +0200 asked a question Calculating k mod order of a point without discrete_log

I am trying to solve a discrete logarithm problem (it is an exercise I have to do - I am not trying to break someones system). I have k*P for some points and the orders of the points. I should use the Chinese Remainder Theorem to get k modulo the orders of the points multiplied. I have to get k modulo the order of each of the points first and then use the theorem like this:

CTR_list([list of k mod order of point for each point],[orders of points])

I can do this using discrete_log(k*P,P,P.order(),operation='+') for some of the points but for some of those with heigher orders it just takes too long to compute for me to get a result this week.

How can I calculate k mod ord(P) in a faster way for points of heigh order?

2017-02-28 11:06:26 +0200 commented question Overflow when defining points on elliptic curve

That is weird since I don't have a curve named E in my code. I just tried to say E10(x,y). But I have got the points I need now thanks to the answers

2017-02-26 14:42:43 +0200 received badge  Supporter (source)
2017-02-26 14:42:18 +0200 received badge  Scholar (source)
2017-02-26 14:31:43 +0200 commented answer Overflow when defining points on elliptic curve

Oh. I thought there was some smart command to get the generators of the cyclic subgroups or something like that. Thank you very much for your help

2017-02-26 14:31:01 +0200 commented answer Overflow when defining points on elliptic curve

Thank you very much! This is perfect and does the job immediately!

2017-02-25 12:26:49 +0200 commented answer Overflow when defining points on elliptic curve

That is very helpful. Thank you. I have defined G and found a generator point P. I know that there will be subgroups generated by points of the orders I want since G is cyclic. I am still learning SAGE so would you be so kind to explain how I can find those points using SAGE? I don't know a lot of commands but I am trying to learn

2017-02-23 19:09:51 +0200 commented answer Overflow when defining points on elliptic curve

Can you explain how you knew that would be a point on the curve and how to generate others? Every point I try is not on the curve. I just need to find points of orders 17, 31, 43, 23081. 4552451, 188515208046969049479851413 and 64490171990641492934559272183431339 that SAGE can handle doing calculations with

2017-02-23 13:27:27 +0200 asked a question Overflow when defining points on elliptic curve

I have the following elliptic curve in SAGE:

p1 = 2^256-189 
E10 = EllipticCurve(GF(p1),[-3,0])

I want to find points of different orders and multiply them with a number. However when I try to get SAGE to define or print a point like P=E10.points()[19] I get the following error:

Error in lines 1-1
Traceback (most recent call last):
  File "/projects/sage/sage-7.5/local/lib/python2.7/site-packages/smc_sagews/sage_server.py", line 982, in execute
    exec compile(block+'\n', '', 'single') in namespace, locals
  File "", line 1, in <module>
  File "/projects/sage/sage-7.5/local/lib/python2.7/site-packages/sage/schemes/elliptic_curves/ell_finite_field.py", line 214, in points
    v = self._points_via_group_structure()
  File "/projects/sage/sage-7.5/local/lib/python2.7/site-packages/sage/schemes/elliptic_curves/ell_finite_field.py", line 156, in _points_via_group_structure
    for m in range(1,ni[0]):
OverflowError: Python int too large to convert to C long

So far I have only suceeded in finding the point (0,0) of order 2 but I also need points of higher order. Is there any way to fix this overflow error or find points of different orders that SAGE can actually handle without getting overflow or is my curve just impossible to work with?

I started out trying to print the list of all points and their orders but that resulted in the error. Then I tried printing only one point and now I am simply trying to define the points without printing them (however I need to print k*P for some k later on for all the points).

I got the point (112810383992036387042877104932833846002363090508032041943368137894367452952778,85347934490306136025376423714596250175969011873639765034628869535783033211301) using E10.gens() but I can't define it getting the error:

ValueError: libGAP: Error, E: <n> must be a positive integer (not a integer (>= 2^60))

So I am suspecting that it is not possible to get any useful points on this curve. If so can anyone explain to me why it is so (with some references if possible)?

2016-09-29 21:29:36 +0200 received badge  Student (source)
2016-09-29 14:56:38 +0200 asked a question Solving an equation with modulo

I am trying to solve for k where p to the power of k is congruent to 1 modulo l. I have the following code:

p = 2^255-19;

l = 57896044618658097711785492504343953926634992332820282019728792003956564819949;

var('k')

sorted(solve_mod(p^k == 1, l))

but I get this really long error message when I try to run it. How do I solve this equation without getting errors?

I was trying to find the embedding degree for this elliptic curve:

sage: E = EllipticCurve(GF(p),[0,486662,0,1,0])