Problème de la résiduosité quadratique

Cet article est une ébauche concernant les mathématiques.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Consultez la liste des tâches à accomplir en page de discussion.

En théorie algorithmique des nombres, le problème de la résiduosité[note 1] quadratique est celui de distinguer, à l'aide de calculs, les résidus quadratiques modulo un nombre composé N fixé.

Ce problème est considéré comme étant calculatoirement difficile dans le cas général et sans information supplémentaire[1]. Par conséquent, il s'agit d'un problème important en cryptographie où il est utilisé comme hypothèse calculatoire comme indiqué dans la section Application.

Formulation

Soit N {\displaystyle N} un nombre composé de la forme particulière N = p q {\displaystyle N=pq} , où p {\displaystyle p} et q {\displaystyle q} sont deux nombres premiers distincts. L'application d'élévation au carré,

a ¯ ( mod N ) a 2 ¯ ( mod N ) {\displaystyle {\overline {a}}{\pmod {N}}\mapsto {\overline {a^{2}}}{\pmod {N}}}

est un endomorphisme du groupe des inversibles de l'anneau ℤ/Nℤ, et son noyau est isomorphe au groupe de Klein, d'ordre 4. Par conséquent, l'image de cette application est un sous-groupe d'indice 4, donc d'ordre (p-1)(q-1)/4. Ce sous-groupe est donc d'indice 2 dans celui des éléments dont le symbole de Jacobi vaut 1. Le symbole de Jacobi permet ainsi d'éliminer la moitié des éléments du groupe (ceux dont le symbole vaut -1 et qui ne sont donc pas des carrés), et le problème reste de déterminer, pour un élément arbitraire de la moitié restante, si c'est un carré ou pas (il a une chance sur deux d'en être un).

Application

Le problème de la résiduosité quadratique est utilisé comme hypothèse de complexité dans différents protocoles cryptographiques, comme le cryptosystème de Goldwasser-Micali, ou pour le générateur de nombres pseudo-aléatoires de Blum Blum Shub.

Calcul avec factorisation de N connue

Si la factorisation de N {\displaystyle N} est connue, le problème devient alors calculatoirement facile, grâce à la loi de réciprocité quadratique et au théorème des restes chinois. La procédure suivante détermine si x {\displaystyle x} est un carré modulo N {\displaystyle N} .

  1. Calculer x p := x {\displaystyle x_{p}:=x} mod p {\displaystyle p} et x q := x {\displaystyle x_{q}:=x} mod q {\displaystyle q} .
  2. Si x p ( p 1 ) / 2 = 1 {\displaystyle x_{p}^{(p-1)/2}=1} mod p {\displaystyle p} et x q ( q 1 ) / 2 = 1 {\displaystyle x_{q}^{(q-1)/2}=1} mod q {\displaystyle q} , alors x {\displaystyle x} est un résidu quadratique modulo N {\displaystyle N} .

Ce qui aboutit, en utilisant l'exponentiation modulaire rapide par exemple, à un algorithme de complexité O ( ( log N ) 2 ) {\displaystyle {\mathcal {O}}{\bigl (}(\log N)^{2}{\bigr )}} , ce qui est polynomial en la taille de l'entrée (ici log N {\displaystyle \approx \log N} ).

Notes et références

(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Quadratic residuosity problem » (voir la liste des auteurs).

Notes

  1. Une substantivation plus correcte serait résidualité. Le néologisme résiduosité a été adopté par la plupart des cryptographes.[réf. nécessaire]

Références

  1. (en) Victor Shoup, A computational introduction to number theory and algebra, Cambridge University Press, , 2e éd., 580 p. (ISBN 978-0-521-51644-0 et 0521516447, OCLC 277069279, lire en ligne), 12. Quadratic reciprocity and computing modular square roots, chap. 4 (« Testing quadratic residuosity »), p. 349.

Article connexe

Problème de la résiduosité supérieure

  • icône décorative Arithmétique et théorie des nombres
  • icône décorative Portail de la cryptologie
  • icône décorative Portail de l'informatique théorique