Quadratic residuosity problem
The quadratic residuosity problem (QRP[1]) in computational number theory is to decide, given integers [math]\displaystyle{ a }[/math] and [math]\displaystyle{ N }[/math], whether [math]\displaystyle{ a }[/math] is a quadratic residue modulo [math]\displaystyle{ N }[/math] or not. Here [math]\displaystyle{ N = p_1 p_2 }[/math] for two unknown primes [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math], and [math]\displaystyle{ a }[/math] is among the numbers which are not obviously quadratic non-residues (see below).
The problem was first described by Gauss in his Disquisitiones Arithmeticae in 1801. This problem is believed to be computationally difficult. Several cryptographic methods rely on its hardness, see § Applications.
An efficient algorithm for the quadratic residuosity problem immediately implies efficient algorithms for other number theoretic problems, such as deciding whether a composite [math]\displaystyle{ N }[/math] of unknown factorization is the product of 2 or 3 primes.[2]
Precise formulation
Given integers [math]\displaystyle{ a }[/math] and [math]\displaystyle{ T }[/math], [math]\displaystyle{ a }[/math] is said to be a quadratic residue modulo [math]\displaystyle{ T }[/math] if there exists an integer [math]\displaystyle{ b }[/math] such that
- [math]\displaystyle{ a \equiv b^2 \pmod T }[/math].
Otherwise we say it is a quadratic non-residue. When [math]\displaystyle{ T = p }[/math] is a prime, it is customary to use the Legendre symbol:
- [math]\displaystyle{ \left( \frac{a}{p} \right) = \begin{cases} 1 & \text{ if } a \text{ is a quadratic residue modulo } p \text{ and } a \not\equiv 0\pmod{p}, \\ -1 & \text{ if } a \text{ is a quadratic non-residue modulo } p, \\ 0 & \text{ if } a \equiv 0 \pmod{p}. \end{cases} }[/math]
This is a multiplicative character which means [math]\displaystyle{ \big(\tfrac{a}{p}\big) = 1 }[/math] for exactly [math]\displaystyle{ (p-1)/2 }[/math] of the values [math]\displaystyle{ 1,\ldots,p-1 }[/math], and it is [math]\displaystyle{ -1 }[/math] for the remaining.
It is easy to compute using the law of quadratic reciprocity in a manner akin to the Euclidean algorithm; see Legendre symbol.
Consider now some given [math]\displaystyle{ N = p_1 p_2 }[/math] where [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math] are two different unknown primes. A given [math]\displaystyle{ a }[/math] is a quadratic residue modulo [math]\displaystyle{ N }[/math] if and only if [math]\displaystyle{ a }[/math] is a quadratic residue modulo both [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math] and [math]\displaystyle{ \gcd(a, N) = 1 }[/math].
Since we don't know [math]\displaystyle{ p_1 }[/math] or [math]\displaystyle{ p_2 }[/math], we cannot compute [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) }[/math] and [math]\displaystyle{ \big(\tfrac{a}{p_2}\big) }[/math]. However, it is easy to compute their product. This is known as the Jacobi symbol:
- [math]\displaystyle{ \left(\frac{a}{N}\right) = \left(\frac{a}{p_1}\right)\left(\frac{a}{p_2}\right) }[/math]
This also can be efficiently computed using the law of quadratic reciprocity for Jacobi symbols.
However, [math]\displaystyle{ \big(\tfrac{a}{N}\big) }[/math] cannot in all cases tell us whether [math]\displaystyle{ a }[/math] is a quadratic residue modulo [math]\displaystyle{ N }[/math] or not! More precisely, if [math]\displaystyle{ \big(\tfrac{a}{N}\big) = -1 }[/math] then [math]\displaystyle{ a }[/math] is necessarily a quadratic non-residue modulo either [math]\displaystyle{ p_1 }[/math] or [math]\displaystyle{ p_2 }[/math], in which case we are done. But if [math]\displaystyle{ \big(\tfrac{a}{N}\big) = 1 }[/math] then it is either the case that [math]\displaystyle{ a }[/math] is a quadratic residue modulo both [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math], or a quadratic non-residue modulo both [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math]. We cannot distinguish these cases from knowing just that [math]\displaystyle{ \big(\tfrac{a}{N}\big) = 1 }[/math].
This leads to the precise formulation of the quadratic residue problem:
Problem: Given integers [math]\displaystyle{ a }[/math] and [math]\displaystyle{ N = p_1 p_2 }[/math], where [math]\displaystyle{ p_1 }[/math] and [math]\displaystyle{ p_2 }[/math] are distinct unknown primes, and where [math]\displaystyle{ \big(\tfrac{a}{N}\big) = 1 }[/math], determine whether [math]\displaystyle{ a }[/math] is a quadratic residue modulo [math]\displaystyle{ N }[/math] or not.
Distribution of residues
If [math]\displaystyle{ a }[/math] is drawn uniformly at random from integers [math]\displaystyle{ 0,\ldots,N-1 }[/math] such that [math]\displaystyle{ \big(\tfrac{a}{N}\big) = 1 }[/math], is [math]\displaystyle{ a }[/math] more often a quadratic residue or a quadratic non-residue modulo [math]\displaystyle{ N }[/math]?
As mentioned earlier, for exactly half of the choices of [math]\displaystyle{ a \in \{1,\ldots,p_1-1\} }[/math], then [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) = 1 }[/math], and for the rest we have [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) = -1 }[/math]. By extension, this also holds for half the choices of [math]\displaystyle{ a \in \{1,\ldots,N-1\} \setminus p_1\mathbb{Z} }[/math]. Similarly for [math]\displaystyle{ p_2 }[/math]. From basic algebra, it follows that this partitions [math]\displaystyle{ (\mathbb{Z}/N\mathbb{Z})^{\times} }[/math] into 4 parts of equal size, depending on the sign of [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) }[/math] and [math]\displaystyle{ \big(\tfrac{a}{p_2}\big) }[/math].
The allowed [math]\displaystyle{ a }[/math] in the quadratic residue problem given as above constitute exactly those two parts corresponding to the cases [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) = \big(\tfrac{a}{p_2}\big) = 1 }[/math] and [math]\displaystyle{ \big(\tfrac{a}{p_1}\big) = \big(\tfrac{a}{p_2}\big) = -1 }[/math]. Consequently, exactly half of the possible [math]\displaystyle{ a }[/math] are quadratic residues and the remaining are not.
Applications
The intractability of the quadratic residuosity problem is the basis for the security of the Blum Blum Shub pseudorandom number generator. It also yields the public key Goldwasser–Micali cryptosystem,[3][4] as well as the identity based Cocks scheme.
See also
References
- ↑ Kaliski, Burt (2011). "Quadratic Residuosity Problem". Encyclopedia of Cryptography and Security. p. 1003. doi:10.1007/978-1-4419-5906-5_429. ISBN 978-1-4419-5905-8.
- ↑ Adleman, L. (1980). "On Distinguishing Prime Numbers from Composite Numbers". pp. 387–408. doi:10.1109/SFCS.1980.28.
- ↑ S. Goldwasser, S. Micali (1982). "Probabilistic encryption & how to play mental poker keeping secret all partial information". Proceedings of the fourteenth annual ACM symposium on Theory of computing - STOC '82. pp. 365–377. doi:10.1145/800070.802212. ISBN 0897910702.
- ↑ S. Goldwasser, S. Micali (1984). "Probabilistic encryption". Journal of Computer and System Sciences 28 (2): 270–299. doi:10.1016/0022-0000(84)90070-9.
Original source: https://en.wikipedia.org/wiki/Quadratic residuosity problem.
Read more |