Articulo de referencia

Problema de la resiliencia cuadrática

El problema de residuos cuadráticos ( QRP [ 1 ] ) en la teoría computacional de números consiste en decidir, dados los enteros a {\displaystyle a} y norte {\displaystyle N} , si...

El problema de residuos cuadráticos ( QRP [ 1 ] ) en la teoría computacional de números consiste en decidir, dados los enterosa{\displaystyle a}ynorte{\displaystyle N}, sia{\displaystyle a}es un residuo cuadrático módulonorte{\displaystyle N}o no. Aquínorte=pag1pag2{\displaystyle N=p_{1}p_{2}}para dos números primos desconocidospag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}, ya{\displaystyle a}está entre los números que no son obviamente residuos cuadráticos (ver más abajo).

El problema fue descrito por primera vez por Gauss en sus Disquisitiones Arithmeticae en 1801. Se cree que este problema es computacionalmente difícil . Varios métodos criptográficos se basan en su dificultad ; véase la sección  Aplicaciones .

Un algoritmo eficiente para el problema de la resiliencia cuadrática implica inmediatamente algoritmos eficientes para otros problemas de teoría de números , como decidir si un compuestonorte{\displaystyle N}de factorización desconocida es el producto de 2 o 3 primos. [ 2 ]

Formulación precisa

Dados los números enterosa{\displaystyle a}yT{\displaystyle T},a{\displaystyle a}Se dice que es un residuo cuadrático móduloT{\displaystyle T}si existe un número enterob{\displaystyle b}de tal manera que

ab2(modT){\displaystyle a\equiv b^{2}{\pmod {T}}}.

De lo contrario, decimos que es un no residuo cuadrático. CuandoT=pag{\displaystyle T=p}es un número primo, es costumbre usar el símbolo de Legendre :

(apag)={1 si a es un residuo cuadrático módulo pag y a0(modpag),1 si a es un módulo cuadrático no residual pag,0 si a0(modpag).{\displaystyle \left({\frac {a}{p}}\right)={\begin{cases}1&{\text{ si }}a{\text{ es un residuo cuadrático módulo }}p{\text{ y }}a\not \equiv 0{\pmod {p}},\\-1&{\text{ si }}a{\text{ es un no residuo cuadrático módulo }}p,\\0&{\text{ si }}a\equiv 0{\pmod {p}}.\end{cases}}}

Este es un carácter multiplicativo que significa(apag)=1{\displaystyle {\big (}{\tfrac {a}{p}}{\big )}=1}para exactamente(pag1)/2{\displaystyle (p-1)/2}de los valores1,,pag1{\displaystyle 1,\ldots ,p-1}, y es1{\displaystyle -1}para el resto.

Es fácil calcularlo utilizando la ley de reciprocidad cuadrática de una manera similar al algoritmo euclidiano ; véase el símbolo de Legendre .

Consideremos ahora algunos datos dadosnorte=pag1pag2{\displaystyle N=p_{1}p_{2}}dóndepag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}son dos primos desconocidos diferentes. Un dadoa{\displaystyle a}es un residuo cuadrático módulonorte{\displaystyle N}si y solo sia{\displaystyle a}es un residuo cuadrático módulo ambospag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}ymcd(a,norte)=1{\displaystyle \gcd(a,N)=1}.

Como no lo sabemospag1{\displaystyle p_{1}}opag2{\displaystyle p_{2}}no podemos calcular(apag1){\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}}y(apag2){\displaystyle {\big (}{\tfrac {a}{p_{2}}}{\big )}}Sin embargo, es fácil calcular su producto. Esto se conoce como el símbolo de Jacobi :

(anorte)=(apag1)(apag2){\displaystyle \left({\frac {a}{N}}\right)=\left({\frac {a}{p_{1}}}\right)\left({\frac {a}{p_{2}}}\right)}

Esto también se puede calcular de manera eficiente utilizando la ley de reciprocidad cuadrática para los símbolos de Jacobi.

Sin embargo,(anorte){\displaystyle {\big (}{\tfrac {a}{N}}{\big )}}no puede decirnos en todos los casos sia{\displaystyle a}es un residuo cuadrático módulonorte{\displaystyle N}¡O no! Más precisamente, si(anorte)=1{\displaystyle {\big (}{\tfrac {a}{N}}{\big )}=-1}entoncesa{\displaystyle a}es necesariamente un no residuo cuadrático módulo opag1{\displaystyle p_{1}}opag2{\displaystyle p_{2}}, en cuyo caso hemos terminado. Pero si(anorte)=1{\displaystyle {\big (}{\tfrac {a}{N}}{\big )}=1}entonces es el caso quea{\displaystyle a}es un residuo cuadrático módulo ambospag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}o un no residuo cuadrático módulo ambospag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}No podemos distinguir estos casos sabiendo solo eso.(anorte)=1{\displaystyle {\big (}{\tfrac {a}{N}}{\big )}=1}.

Esto conduce a la formulación precisa del problema del residuo cuadrático:

Problema: Dados los números enterosa{\displaystyle a}ynorte=pag1pag2{\displaystyle N=p_{1}p_{2}}, dóndepag1{\displaystyle p_{1}}ypag2{\displaystyle p_{2}}son primos desconocidos distintos, y donde(anorte)=1{\displaystyle {\big (}{\tfrac {a}{N}}{\big )}=1}determinar sia{\displaystyle a}es un residuo cuadrático módulonorte{\displaystyle N}O no.

Distribución de residuos

Sia{\displaystyle a}se extrae uniformemente al azar de entre los números enteros0,,norte1{\displaystyle 0,\ldots ,N-1}de tal manera que(anorte)=1{\displaystyle {\big (}{\tfrac {a}{N}}{\big )}=1}, esa{\displaystyle a}más a menudo un residuo cuadrático o un no residuo cuadrático módulonorte{\displaystyle N}¿

Como se mencionó anteriormente, para exactamente la mitad de las opciones dea{1,,pag11}{\displaystyle a\in \{1,\ldots ,p_{1}-1\}}, entonces(apag1)=1{\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}=1}y para el resto tenemos(apag1)=1{\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}=-1}Por extensión, esto también se aplica a la mitad de las opciones dea{1,,norte1}pag1Z{\displaystyle a\in \{1,\ldots ,N-1\}\setminus p_{1}\mathbb {Z} }. De manera similar parapag2{\displaystyle p_{2}}. Del álgebra básica se deduce que esta partición(Z/norteZ)×{\displaystyle (\mathbb {Z} /N\mathbb {Z} )^{\times }}en 4 partes de igual tamaño, dependiendo del signo de(apag1){\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}}y(apag2){\displaystyle {\big (}{\tfrac {a}{p_{2}}}{\big )}}.

Lo permitidoa{\displaystyle a}en el problema del residuo cuadrático dado como arriba constituyen exactamente esas dos partes correspondientes a los casos(apag1)=(apag2)=1{\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}={\big (}{\tfrac {a}{p_{2}}}{\big )}=1}y(apag1)=(apag2)=1{\displaystyle {\big (}{\tfrac {a}{p_{1}}}{\big )}={\big (}{\tfrac {a}{p_{2}}}{\big )}=-1}. En consecuencia, exactamente la mitad de las posiblesa{\displaystyle a}son residuos cuadráticos y los restantes no lo son.

Aplicaciones

La intratabilidad del problema de la residuo cuadrática es la base de la seguridad del generador de números pseudoaleatorios Blum Blum Shub . También produce el criptosistema de clave pública Goldwasser-Micali , [ 3 ] [ 4 ] así como el esquema Cocks basado en identidad .

Véase también

Referencias

  1. Kaliski, Burt (2011). "Problema de residuo cuadrático". Enciclopedia de criptografía y seguridad . pág.  1003. doi : 10.1007/978-1-4419-5906-5_429 . ISBN 978-1-4419-5905-8.
  2. Adleman, L. (1980). "Sobre la distinción entre números primos y compuestos". Actas del 21.º Simposio IEEE sobre Fundamentos de la Informática (FOCS), Syracuse, NY . págs. 387–408 . doi : 10.1109/SFCS.1980.28 . ISSN 0272-5428 .  
  3. S. Goldwasser, S. Micali (1982). "Cifrado probabilístico y cómo jugar al póker mental manteniendo en secreto toda la información parcial". Actas del decimocuarto simposio anual de la ACM sobre Teoría de la Computación - STOC '82 . págs. 365–377 . doi : 10.1145/800070.802212 . ISBN  0897910702. S2CID 10316867 . 
  4. S. Goldwasser, S. Micali (1984). "Cifrado probabilístico" . Journal of Computer and System Sciences . 28 (2): 270– 299. doi : 10.1016/0022-0000(84)90070-9 .