¿Por qué la mayoría de la criptografía depende de grandes pares de números primos, a diferencia de otros problemas?

9

La mayoría de los métodos actuales de criptografía dependen de la dificultad de factorizar números que son el producto de dos números primos grandes. Según tengo entendido, eso es difícil siempre y cuando el método utilizado para generar los números primos grandes no se pueda usar como un atajo para factorizar el número compuesto resultante (y que factorizar números grandes en sí es difícil).

Parece que los matemáticos encuentran mejores atajos de vez en cuando, y los sistemas de encriptación deben actualizarse periódicamente como resultado. (También existe la posibilidad de que la computación cuántica eventualmente haga que la factorización sea un problema mucho más fácil, pero eso no sorprenderá a nadie si la tecnología se pone al día con la teoría).

Algunos otros problemas han demostrado ser difíciles. Dos ejemplos que vienen a la mente son las variaciones en el problema de la mochila y el problema del vendedor ambulante.

Sé que Merkle – Hellman se ha roto, que Nasako – Murakami se mantiene seguro y que los problemas de la mochila pueden ser resistentes a la computación cuántica. (Gracias, Wikipedia.) No encontré nada sobre el uso del problema del vendedor ambulante para la criptografía.

Entonces, ¿por qué los pares de números primos grandes parecen gobernar la criptografía?

  • ¿Es simplemente porque actualmente es fácil generar pares de números primos grandes que son fáciles de multiplicar pero difíciles de factorizar?
  • ¿Es porque se ha demostrado que factorizar pares de números primos grandes es difícil en un grado predecible que es lo suficientemente bueno?
  • ¿Son útiles los pares de números primos grandes de una manera distinta a la dificultad, como la propiedad de trabajar tanto para el cifrado como para la firma criptográfica?
  • ¿El problema de generar conjuntos de problemas para cada uno de los otros tipos de problemas que son lo suficientemente difíciles para el propósito criptográfico en sí es demasiado difícil para ser práctico?
  • ¿Las propiedades de otros tipos de problemas son insuficientemente estudiadas para ser confiables?
  • Otro.
Steve
fuente
8
Primero, estoy bastante seguro de que la criptografía de curva elíptica se usa en la práctica, aunque no puedo recordar en qué situación. Sin embargo, tiene razón en que RSA se usa mucho más que otros criptosistemas. Creo que la razón se debe principalmente a que el cifrado RSA es una especie de estándar desde hace años, con una gran cantidad de software (con errores, por supuesto) que lo implementa, y con personas acostumbradas. Otros sistemas de encriptación (basados, por ejemplo, en curvas elípticas o enrejados) a veces son utilizables, pero necesita personas para adquirirlos, ¡y esto lleva tiempo! Cambio de hábitos ...
Bruno
3
@Bruno Bitcoin, por ejemplo, utiliza curvas elípticas para firmar transacciones.
Martin Berger

Respuestas:

9

Boaz Barak abordó esto en una publicación de blog

Mi conclusión de su publicación (más o menos) es que solo sabemos cómo diseñar primitivas criptográficas utilizando problemas computacionales que tienen cierta cantidad de estructura, que explotamos. Sin estructura, no sabemos qué hacer. Con demasiada estructura, el problema se vuelve eficientemente computable (por lo tanto, inútil para fines criptográficos). Parece que la cantidad de estructura tiene que ser la correcta.

Tyson Williams
fuente
Al leer ese artículo, pensé en otra posible razón por la que factorizar pares de números primos grandes sigue siendo el método de elección para la criptografía de clave pública: es realmente difícil encontrar un reemplazo. El número de matemáticos que entienden cualquier alternativa dada es pequeño, lo que (1) limita el número de personas que pueden proponer alternativas y (2) limita el número de personas que pueden analizar de manera creíble las propuestas para determinar si son viables. Los primos pueden no funcionar para siempre, pero funcionan por ahora, por lo que la inercia los mantiene en uso.
Steve
6

Todo lo que voy a decir es bien conocido (todos los enlaces son a Wikipedia), pero aquí va:

  1. (Z/ /pagsqZ)×

  2. Existen otros enfoques para la criptografía, en particular la criptografía basada en redes que dependen de ciertos problemas difíciles en las redes (por ejemplo, encontrar puntos con una norma pequeña en la red) para implementar la criptografía de clave pública. Curiosamente, algunos de estos sistemas son demostrablemente difíciles , es decir, pueden romperse si y solo si el problema difícil correspondiente en la teoría de redes puede resolverse. Esto está en contraste con, digamos RSA, que no ofrece la misma garantía . Tenga en cuenta que el enfoque basado en la red se conjetura que no es NP-hard (pero parece más difícil que el factoring entero por ahora).

  3. Existe una preocupación por separado para compartir claves, es decir , revelación secreta , que tiene propiedades de teoría de complejidad muy interesantes. No conozco los detalles, pero la teoría de los protocolos de conocimiento cero le permite a Alice revelarle a Bob su conocimiento de un secreto que es NP difícil de calcular (Graph Hamiltonian) sin revelar el secreto mismo (el camino en este caso).

Finalmente, es posible que desee consultar la página sobre criptografía post-cuántica para ver algunos enfoques alternativos a los criptosistemas de clave pública que dependen de problemas difíciles.

cody
fuente