Taking p=29 to find out all the solution points of elliptic curve y^2=x^3+4x+20
Using the method of poor lifting to find the elliptic curve
First step: List, find out the results of 0~28 (0<=i<p) about equation x^3+4x+20 mod29
Available programs to complete this step:
The code is as follows:
#include <stdio.h>
int main ()
{
int i,y,z;
printf ("xx^3+4*x+20\n");
for (i = 0; i <; i++)
{
y = i*i*i + 4 * i + 20;
z = y% 29;
printf ("%d%d\n", I, z);
}
}
The calculation results are as follows:
The second step is to calculate the result of the square modulus 29 of I (0<=I<P)
The result of 0~28 Square mode 29 is:
The code is:
#include <stdio.h>
int main ()
{
int I, Y;
printf ("xx^2 mod 29\n");
for (i = 0; i <; i++)
{
y = I*i%29;
printf ("%d%d\n", i,y);
}
}
The third step, by comparing the results of i^3+4i+20 mod29 whether there is i^2 mod29 with it, and some words in "whether the square remaining of modulo 29" at the write Y, and the corresponding I write to the y column
X |
X^3+4X+20 MoD 29 |
Whether the square of modulo 29 remains |
Y |
0 |
20 |
Y |
7,22 |
1 |
25 |
Y |
5,24 |
2 |
7 |
Y |
6,23 |
3 |
1 |
Y |
1,28 |
4 |
13 |
Y |
10,19 |
5 |
20 |
Y |
7,22 |
6 |
28 |
Y |
12,17 |
7 |
14 |
N |
|
8 |
13 |
|
10,,19 |
9 |
2 |
N |
|
10 |
16 |
|
4,,25 |
11 |
3 |
N |
|
12 |
27 |
N |
|
13 |
7 |
|
6,23 |
14 |
7 |
|
6,,23 |
15 |
4 |
|
2,27 |
16 |
4 |
|
2,27 |
17 |
13 |
|
10,,19 |
18 |
8 |
N |
|
19 |
24 |
|
1316 |
20 |
9 |
|
3,26 |
21st |
27 |
N |
|
22 |
26 |
N |
|
23 |
12 |
N |
|
24 |
20 |
|
7,22 |
25 |
27 |
N |
|
26 |
10 |
N |
|
27 |
4 |
|
2,27 |
28 |
15 |
N |
|
Description |
First program Results |
Comparison of the first and second programs |
The corresponding 2 numbers add up to p. As in line 27th 7+22=29 |
Then the result is read out plus o point, that is,
(0,7) (0,22) (1,5) (1,24) (2,6) (2,23) (3,1) (3,28) (4,10) (4,19) (5,7) (5,22)
(6,12) (6,17) (8,10) (8,19) (10,4) (10,25) (13,6) (13,23) (14,6) (14,23) (15,2) (15,27)
(16,2) (16,27) (17,10) (17,19) (19,13) (19,16) (20,3) (20,26) (24,7) (24,22) (27,2) plus O-point (27,27)
A total of 37 solution points
37-bit prime, so this group is a cyclic group
Cryptography _ Elliptic Curve