Overview
This section describes the group structure of elliptic curves. Hereinafter, Zn denotes a cyclic group of order n.
Hankerson et al. (2006)Darrel Hankerson, Alfred J. Menezes, and Scott Vanstone. Guide to Elliptic Curve Cryptography. Springer Professional Computing. New York, 2006. Springer. give the following theorem to describe the group structure of E(Fp):
Theorem 1: group structure of an elliptic curve
Let E be an elliptic curve over a finite field Fp. Then, E(Fp) is isomorphic to Zn1⊕Zn2, where n1 and n2 are unique positive integers such that n2∣n1 and n2∣p−1.
Furthermore, they give the following statement:
It holds that #E(Fp)=n1n2. If n2=1, then E(Fp) is a cyclic group. If n2>1 is a small integer, E(Fp) is said to be almost cyclic.
Example
We consider the elliptic curve E:y2=x3+1 over F5 of Example 1
:Addition_of_points_example_1, where we’ve shown the order of each element of E(F5). According to this corollary
:Element_order
, it holds that ∣P∣=∣⟨P⟩∣, in other words, the order of each element P∈E(Fp) is equal to the order of the cyclic subgroup generated by P. As each point on E (except the point O ) has an order of 2,3,orspace6, the curve E contains cyclic groups of these orders. For example, it’ss
⟨(0,1)⟩:(0,1)→(0,4)→O
or
⟨(2,2)⟩:(2,2)→(0,4)→(4,0)→(0,1)→(2,3)→O.
This example shows that the choice of the point that generates the cyclic subgroup is of great importance. For the intractability of ECC algorithms, we usually want subgroups with high order n, so in the most favorable case, #E(Fp) is prime itself because then the entire group is a cyclic group by this corollary
:cyclicGrp_Corollary_3, and thus each point of (except O ) is a generator of order n.