Some integer factorization algorithms using elliptic curves
Lenstra’s integer factorization algorithm is asymptotically one of the fastest known algorithms, and is ideally suited for parallel computation. We suggest a way in which the algorithm can be speeded up by the addition of a second phase. Under some plausible assumptions, the speedup is of order log(p), where p is the factor which is found. In practice the speedup is significant. We mention some refinements which give greater speedup, an alternative way of implementing a second phase, and the connection with Pollard’s “p-1” factorization algorithm.
💡 Research Summary
The paper revisits Lenstra’s elliptic‑curve factorization method (ECM) and proposes a concrete enhancement that adds a second phase to the standard algorithm. In the original ECM, a random elliptic curve (E) over (\mathbb{Z}_N) and a point (P) are chosen, and the algorithm repeatedly computes multiples (kP) where the integer (k) is the product of all prime powers up to a smoothness bound (B). If a prime factor (p) of (N) satisfies that (p-1) is (B)-smooth, the group order (|E(\mathbb{F}_p)|) divides (k) and the computation of (\gcd(N, x(kP)-x(P))) reveals (p). When (|E(\mathbb{F}_p)|) contains a prime factor slightly larger than (B), the original algorithm typically aborts and restarts with a new curve, which can be wasteful.
The authors observe that many “near‑misses” occur: the order of the curve modulo (p) often has a large prime factor just beyond the bound (B). To capture these cases, they introduce a second phase that continues the search beyond the initial smoothness limit without discarding the work already performed. Two concrete implementations are described:
- Prime‑factor augmentation – After the first phase produces a point (Q = kP), the algorithm multiplies (Q) by a small prime (q) chosen from the interval (