Cryptography _ Elliptic Curve

Source: Internet
Author: User

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

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.