Sid Makes Sense

Subgroups, Generators, Orders, And Cofactors

8 min read

Core analogy: Treat the finite curve group as a circular route.

  • Curve order #E\#E: total number of stops in the complete group.
  • Point order ord(P)\operatorname{ord}(P): lap length—the first positive nn with nP=OnP=\mathcal{O}.
  • Generated subgroup P\langle P\rangle: all stops reachable by repeatedly taking the PP-step.
  • Generator: a point whose multiples reach every element of the group being discussed.
  • Base point GG: the public generator selected by a parameter set.
  • Subgroup order nn: n=ord(G)n=\operatorname{ord}(G).
  • Cofactor hh: number of subgroup-sized cosets in the full group: #E=hn,h=#En.\#E=hn, \qquad h=\frac{\#E}{n}.

Lagrange's theorem guarantees that a point's order divides the curve order.

Running example

P=(1,5)P=(1,5) takes a 14-stop lap and generates the whole curve. Choosing G=2P=(3,3)G=2P=(3,3) skips every other stop, producing a prime-order subgroup with

#E=14,n=7,h=2.\#E=14, \qquad n=7, \qquad h=2.

Protocol bridge: A private scalar kk produces the public point Q=kGQ=kG; production systems make nn enormous.