Subgroups, Generators, Orders, And Cofactors
Elliptic Curves Over Finite Fields constructed the finite group
That construction produced affine points and the identity point . It also used the finite-field addition formulas with
to calculate
We will now continue those exact scalar multiplications around the point cloud. The resulting cycles give concrete meanings to curve order, point order, subgroup, generator, base point, and cofactor.
The main idea resembles the modular clock from Finite Fields and Modular Arithmetic. Repeatedly adding a fixed number moves around a finite clock; repeatedly adding a fixed curve point moves around a finite set of curve points. In both cases, the chosen step determines which positions we visit before returning to the start.
0.1. Curve Order: The Size of the Complete Group
The curve order is the number of points in the complete curve group, including . It is written
For the running curve, Chapter 6 found affine points. Therefore,
This number describes the whole curve group. It is not the field modulus and it is not automatically the order of every point.
Important
In the running example, is the number of field elements, while is the number of curve points. These numbers measure different objects.
0.2. Point Order: The Length of One Scalar Cycle
Scalar multiplication repeatedly adds the same point:
We also define . Now imagine the curve points as stops on a circular route. The point acts like a fixed step: begin at , add to move to the next stop, then add again, and keep going.
This route is an abstract picture of the group operation. It is not a geometric line drawn through the point cloud.
For , Chapter 6 already gave us the first two moves:
We do not need to memorize every coordinate encountered after that. Three landmarks reveal the structure of the route:
- At the halfway point, . This point is its own inverse because its -coordinate is zero.
- One step before completing the route, .
- Adding once more gives .
No earlier positive multiple is . The route therefore makes one complete lap after fourteen additions of .
The order of a point , written , is the smallest positive integer for which
Equivalently,
For the running point,
The two uses of the word order now answer different questions:
Curve order — total stops
How many points exist in the complete curve group? Here, .
Point order — lap length
How many times do we add this point before returning to ? Here, .
0.3. Generated Subgroups and Generators
The stops reached before a scalar cycle returns to form the subgroup generated by :
where . This subgroup contains exactly points.
A point is a generator of a group when its scalar multiples reach every element of :
In the route analogy, is the collection of stops reachable by repeatedly taking the -step. A generator of the whole group is a step that eventually visits every stop.
Every point generates its own subgroup, but it does not necessarily generate the complete curve group. For , one lap visits all curve points. Thus,
and is a generator of the whole curve group.
0.4. Select a Smaller Prime-Order Subgroup
Cryptographic systems commonly work inside a carefully selected large prime-order subgroup rather than requiring the base point to generate every point on the curve.
Our toy curve can demonstrate the same structure. Select the point already obtained by doubling in Chapter 6:
Multiples of are the even multiples of because
On the fourteen-stop route traced by , adding is like moving two stops at a time:
This new route visits every other stop. After seven -steps, the total movement is
No earlier -step returns to , so
The seven visited stops form . This is a proper subgroup: it lies inside the fourteen-point curve group but does not contain every curve point. The odd multiples belong to the complete group but are skipped by the -route.
0.5. Why Subgroup Orders Divide the Curve Order
The route analogy also suggests why subgroup sizes cannot be arbitrary. A subgroup must fit evenly inside the complete finite group: translated copies of the subgroup partition the complete group into equal-sized sets.
Lagrange's theorem states this precisely: in a finite group, the number of elements in a subgroup divides the number of elements in the complete group.
The notation
is read “ divides .” It means that can be divided by without leaving a remainder. Equivalently, there is some integer such that
For example,
because . In contrast,
because no integer multiplied by equals .
Now apply the theorem to an elliptic-curve point . Repeatedly adding produces the subgroup , and that subgroup contains exactly points. The complete curve group contains points. Lagrange's theorem therefore tells us that
Read this as:
The order of divides the order of the complete curve group.
Our curve has points, whose positive divisors are , , , and . Therefore, a point on this curve can only have one of those orders. Lagrange's theorem rules out an order such as , although it does not guarantee that a point of every possible divisor order must exist.
Our three useful step sizes make this visible:
- Adding visits all fourteen stops before returning, so .
- Adding visits every other stop, so .
- Adding jumps halfway around the route each time. The first step reaches and the second returns to , so .
The last example also connects to the doubling rule from Chapter 6. A point with is its own inverse, so
The point orders , , and all divide the curve order , just as Lagrange's theorem requires.
0.6. The Public Base Point
A cryptographic parameter set designates one public generator of its selected subgroup, conventionally written
This selected generator is called the base point. It is not secret and is not chosen separately by each user. Its exact coordinates are part of the public curve parameters.
The terms describe two related ideas:
Generator — mathematical property
Its multiples reach every point in the group or subgroup being discussed.
Base point — public role
It is the generator that a parameter set designates for everyone to use.
For our toy parameter set, we choose
as the base point of the order- subgroup above. Its subgroup order is conventionally named
The base point generates the selected subgroup ; it does not need to generate the entire curve group.
0.7. Cofactor
Because the subgroup order divides the curve order, the cofactor
is an integer. Equivalently,
For the selected subgroup of the running curve,
Think of as answering: How many equal-sized copies of the selected subgroup fit inside the complete curve group? Here, two seven-point cosets fill the fourteen-point group:
The value therefore does not mean that only two curve points lie outside the subgroup. It counts two equal-sized cosets, one of which is itself.
Production curves use an enormous prime and usually a small cofactor. The running values and reproduce that structure at a scale we can enumerate, but they provide no security.
0.8. The Complete Toy Parameter Set
We can now collect the quantities developed across Chapters 5, 6, and 7. Reading down the table moves from the coordinate system, to the complete curve, to the selected route through that curve:
| Symbol | Meaning | Running value |
|---|---|---|
| Prime field modulus | ||
| Curve coefficients | ||
| Complete curve order | ||
| Public base point | ||
| Order of and | ||
| Cofactor |
The curve equation and the values
form a complete toy analogue of the public domain parameters used by real elliptic-curve systems.
0.9. The Base Field and the Scalar Field
Our parameter set now contains two different prime numbers that play two different roles:
The first prime controls the coordinates of curve points. The second prime controls the scalars that act on the selected subgroup. Keeping those roles separate is essential when reading or implementing elliptic-curve cryptography.
0.9.1. The Base Field : Where Coordinates Live
The curve is defined over the base field . Its coefficients and every affine point coordinate are elements of that field:
For the running curve, , so
In particular, the base point
has coordinates
The point itself is not a field element. It is an ordered pair of field elements that satisfies the curve equation. More precisely,
and because we selected the subgroup generated by ,
Whenever we add points, double a point, or calculate new point coordinates, the coordinate formulas use arithmetic in : values are reduced modulo .
0.9.2. The Subgroup Order and the Letter
We named the order of the selected subgroup :
General ECC specifications commonly use for this quantity. Pairing-based cryptography and many cryptographic libraries commonly use , especially when emphasizing that the subgroup order is prime. The letters differ, but they can describe the same quantity:
For our selected subgroup,
The defining property of this order is
No smaller positive scalar sends back to . The value is therefore both the order of the point and the number of points in the subgroup .
0.9.3. The Scalar Field : Where Scalars Live
Because the selected subgroup has prime order , integers modulo form another finite field:
This is called the scalar field. A scalar used with the base point belongs to this field:
For the running subgroup,
Why do scalars wrap around modulo ? Because . Adding to any scalar does not change the resulting point:
With , for example,
and
The scalar values through therefore describe every distinct multiple of . Scalar multiplication connects an element of the scalar field to a point in the subgroup:
The operation does not mean that is multiplied by the individual coordinates of . It means that the group point is repeatedly added, using an efficient scalar-multiplication algorithm.
0.9.4. Two Fields, Two Different Jobs
The base field and scalar field use the same kind of modular arithmetic, but they contain different kinds of values and usually have different moduli:
Base field — coordinates
Contains the curve coefficients and point coordinates. Coordinate arithmetic is reduced modulo .
Scalar field — scalars
Contains the numbers that multiply subgroup points. Scalar arithmetic is reduced modulo .
For the toy parameter set,
| Question | Answer |
|---|---|
| Where do and live? | |
| Where does the point live? | |
| What is the order of ? | |
| Where does a scalar live? | |
| Where does the result live? |
The relationship between the two primes comes through the size of the curve group:
In our example,
There is no requirement that divide , and the scalar field is not generally a subset of the base field. Here, does not divide : and are separate fields with separate jobs.
Important
Coordinates are reduced modulo . Scalars are reduced modulo . Mixing up these moduli means performing arithmetic in the wrong field.
0.9.5. How This Prepares Us for Pairings
The subgroup in this chapter is a general elliptic-curve subgroup. We do not call it yet, because the names and describe specific roles inside a pairing construction.
Later, Pairing-Based Cryptography will build on the same pattern. A pairing setup has a group called whose points commonly have coordinates in , another group called whose points are commonly represented using an extension field, and scalars for both groups in . This chapter supplies the base-field, scalar-field, subgroup, order, and generator concepts needed to distinguish those objects.
0.10. From a Public Point to Protocols
The choice of gives every participant the same public starting point. In the simplest prime-order model, a private scalar is selected from
and scalar multiplication produces a public point
The complete scalar field includes , but a private key must be nonzero: would produce the identity instead of a useful public key. For the toy subgroup, only the six nonzero private scalars through are possible, so anyone can recover by trying every option. Production subgroups instead use an enormous prime order . This gives the elliptic-curve discrete-logarithm problem a prohibitively large search space, while prime order avoids nontrivial smaller subgroups inside .
Construct
Count the complete curve group
Follow the scalar cycle of a point
Identify its generated subgroup
Select a public base point
Record its order and cofactor
Distinguish the base field from the scalar field
This completes the mathematical foundation. Continue with Elliptic-Curve Protocols to use these objects to build keys, signatures, key agreement, encryption, and threshold protocols.