Factoring assumption

The factoring assumption states that there is no efficient algorithm that factors the product of two large, random, equal-length primes and . This is one of the oldest and most studied hardness assumptions in computational number theory and is the basis of RSA-based cryptography.

Assumption

For security parameter , let be independently uniform random -bit primes and . The factoring advantage of an adversary is

Factoring is hard if for all efficient , is negligible.

Known Results

  • RSA hardness implies factoring hardness, since the factors of give and hence the decryption exponent — RSA78; the converse is open in the standard model, and RSA ⇔ FAC holds in the generic ring model — AM09, DLO24
  • QR ⇒ FAC (for Blum moduli); the converse is open.
  • DCR ⇒ FAC; the converse is open.
  • Quantum computers can factor in polynomial time via Shor’s algorithm — Shor97

Variations

Strong RSA assumption

The strong RSA assumption requires that it is hard to compute any -th root of a random group element for an adversarially chosen , not just a fixed . This is a stronger assumption than standard RSA.

Factoring with known factor structure

Some protocols assume factoring is hard even given additional structural information about (e.g., with , so-called Blum integers). Blum integers are used in the Blum-Blum-Shub PRG.

Attacks

  • Trial division: — practical only for very small factors
  • Pollard’s algorithm: expected time
  • Elliptic curve method (ECM): efficient when is small; runs in
  • Quadratic sieve: — best algorithm for
  • General Number Field Sieve (GNFS): sub-exponential — best known classical algorithm for large
  • Quantum: Shor’s algorithm — polynomial time — Shor97

Participates in

Builds on Factoring assumption

Produces Factoring assumption