Fundamentos matematicos para la criptografia asimetrica

61
CRIPTOGRAFÍA CLÁSICA Teoría de Números Docente: Juan Carlos Broncano Torres FISE-UTP Lima-Perú

Transcript of Fundamentos matematicos para la criptografia asimetrica

Page 1: Fundamentos matematicos para la criptografia asimetrica

CRIPTOGRAFÍA CLÁSICA

Teoría de Números

Docente: Juan Carlos Broncano Torres FISE-UTP Lima-Perú

Page 2: Fundamentos matematicos para la criptografia asimetrica

Los Enteros Módulo n

La aritmética modular fue introducida en 1801 por Carl Friedrich Gauss en su libro Disquisitiones Arithmeticae. Algunas veces se le llama, sugerentemente, aritmética del reloj, ya que los números «dan la vuelta» tras alcanzar cierto valor llamado módulo.

Definición de congruencia

http://www.numbertheory.org/php/php.html

Page 3: Fundamentos matematicos para la criptografia asimetrica
Page 4: Fundamentos matematicos para la criptografia asimetrica
Page 5: Fundamentos matematicos para la criptografia asimetrica

Clases residuales módulo m

Page 6: Fundamentos matematicos para la criptografia asimetrica
Page 7: Fundamentos matematicos para la criptografia asimetrica

Suma y producto en Zm

Así podemos ver que las demás operaciones aritméticas modulares se definen como:

Page 8: Fundamentos matematicos para la criptografia asimetrica

Si m es un número primo p, entonces todos los elementos de Zp salvo el cero tienen inverso.

Page 9: Fundamentos matematicos para la criptografia asimetrica

Cualquier medio de transmisión es inseguro

Máximo común divisor

Page 10: Fundamentos matematicos para la criptografia asimetrica

Algoritmo de Euclides

El algoritmo de Euclides se basa en la aplicación sucesiva del siguiente lema:

Este resultado lo podemos usar para obtener un algoritmo para calcular el máximo común divisor de dos números.

Page 11: Fundamentos matematicos para la criptografia asimetrica
Page 12: Fundamentos matematicos para la criptografia asimetrica

Algoritmo Extendido de Euclides.

El siguiente teorema establece la llamada “Identidad de Etienne Bezout” aunque el resultado lo descubrió primero el francés Claude Gaspard Bachet de Méziriac (1581-1638).

Page 13: Fundamentos matematicos para la criptografia asimetrica
Page 15: Fundamentos matematicos para la criptografia asimetrica
Page 16: Fundamentos matematicos para la criptografia asimetrica
Page 17: Fundamentos matematicos para la criptografia asimetrica

Algoritmo para el cálculo del teorema chino de los restos congruentes

Page 18: Fundamentos matematicos para la criptografia asimetrica
Page 19: Fundamentos matematicos para la criptografia asimetrica

Existencia del inverso por Primalidad

Teorema fundamental de la aritmética

Nota: Observe que el número 1 no es ni primo ni compuesto. Esto garantiza la unicidad de la factorización.

Page 20: Fundamentos matematicos para la criptografia asimetrica

POTENCIAS mod m

Page 21: Fundamentos matematicos para la criptografia asimetrica
Page 22: Fundamentos matematicos para la criptografia asimetrica

Teorema de Euler

El teorema de Euler es uno de los grandes hitos en la desarrollo de la teoría de números. Fue probado por Euler en 1760. Este teorema extiende el teorema “pequeño” de Fermat a un módulo arbitrario.

Euler parece que no usaba una notación funcional para esta función; él usó en algún momento la notación “πn”.

Gauss introdujo la notación “ ϕ(n)” aunque también se usa “Ø(n) ”. Sylverter introdujo la notación “Totient (n)” que a veces aparece en la literatura actual.

Page 23: Fundamentos matematicos para la criptografia asimetrica

Este teorema nos permite calcular ϕ(n) de manera directa, si conocemos la factorización prima de n.

Ejemplo

ϕ(15) = ϕ(3∗5) = ϕ(3)* ϕ(5)=(3-1)(5-1) = 2∗4 = 8

Page 24: Fundamentos matematicos para la criptografia asimetrica

Este teorema también puede formularse del siguiente modo:

Ejemplo

Este teorema parece algo extraño, ¿para qué usar fracciones si podemos calcular ϕ(n) con enteros?. Es cierto. Pero esta forma de expresar ϕ será de mucha utilidad más adelante cuando aparezcan los factores (1 -1/pi) en productos infinitos.

Page 25: Fundamentos matematicos para la criptografia asimetrica

De este Teorema podemos deducir como calcular el inverso multiplicativo en :

Cálculo de inversos con Teorema Euler

Page 26: Fundamentos matematicos para la criptografia asimetrica

¿Qué hacemos si no se conoce φ(n)?

Si no conocemos ϕ (n) o no queremos usar los teoremas de Euler o Fermat, siempre podremos encontrar el inverso de a en el cuerpo n usando el Algoritmo Extendido de Euclides.

Algoritmo Extendido de Euclides

Page 27: Fundamentos matematicos para la criptografia asimetrica

Exponenciación Rápida

Ejemplo

Page 28: Fundamentos matematicos para la criptografia asimetrica
Page 29: Fundamentos matematicos para la criptografia asimetrica

ORDEN DEL GRUPO MULTIPLICATIVO: Z*m

Orden de integrantes del grupo multiplicativo Z*m Sea a ∈ Z*m. Se define ord(a) al mínimo entero positivo t tal que: Ejemplo:

Page 30: Fundamentos matematicos para la criptografia asimetrica

Generadores de grupos Cíclico

G = { an | n ∈ Z }. Dado que un grupo generado por un elemento de G es, en sí mismo

En teoría de grupos, un grupo cíclico es un grupo que puede ser generado por un solo elemento; es decir, hay un elemento a del grupo G (llamado "generador" de G), tal que todo elemento de G puede ser expresado como una potencia de a. En otras palabras, G es cíclico, con generador a, si

Grupo cíclico

Page 31: Fundamentos matematicos para la criptografia asimetrica

Propiedades del grupo Cíclico Z*m

Page 32: Fundamentos matematicos para la criptografia asimetrica

RAÍCES PRIMITIVAS Y LOGARITMO DISCRETO

Raíces Primitivas

Page 33: Fundamentos matematicos para la criptografia asimetrica
Page 34: Fundamentos matematicos para la criptografia asimetrica
Page 35: Fundamentos matematicos para la criptografia asimetrica

Logaritmo discreto o Indicador

Page 36: Fundamentos matematicos para la criptografia asimetrica
Page 37: Fundamentos matematicos para la criptografia asimetrica
Page 38: Fundamentos matematicos para la criptografia asimetrica
Page 39: Fundamentos matematicos para la criptografia asimetrica
Page 40: Fundamentos matematicos para la criptografia asimetrica

Algoritmo Shanks : Baby-step giant step

Page 41: Fundamentos matematicos para la criptografia asimetrica

Algoritmo Baby-step giant step

Page 42: Fundamentos matematicos para la criptografia asimetrica
Page 43: Fundamentos matematicos para la criptografia asimetrica

RESIDUOS CUADRÁTICOS

Congruencias cuadráticas módulo m

Page 44: Fundamentos matematicos para la criptografia asimetrica
Page 45: Fundamentos matematicos para la criptografia asimetrica

Criterio de Euler

Page 46: Fundamentos matematicos para la criptografia asimetrica
Page 47: Fundamentos matematicos para la criptografia asimetrica
Page 48: Fundamentos matematicos para la criptografia asimetrica

Símbolos de Legendre y Jacobi

El símbolo de Legendre nos permite establecer si un número a es o no es residuo cuadrático módulo un primo p, mediante un cálculo automático. La ley de la reciprocidad cuadrática, una de las joyas de la teoría de números, simplifica notablemente este cálculo.

El símbolo de Jacobi es una generalización del símbolo de Legendre que permite una simplificación del cálculo cuando el módulo no es primo.

Los estudios en residuos cuadráticos de Euler fueron extendidos por Legendre. El símbolo de Legendre nos proporciona una serie de reglas para el cálculo automático. Estas reglas en el fondo, son aplicaciones simplificadas del criterio de Euler.

Page 49: Fundamentos matematicos para la criptografia asimetrica

En algunos textos se usa una definición alternativa: Si p es primo impar

Page 50: Fundamentos matematicos para la criptografia asimetrica

Ley de Reciprocidad Cuadrática

Page 51: Fundamentos matematicos para la criptografia asimetrica
Page 52: Fundamentos matematicos para la criptografia asimetrica

Símbolo de Jacobi

Page 53: Fundamentos matematicos para la criptografia asimetrica

Algoritmo SIJ((a; n)), que calcula el símbolo de Jacobi (a/n)

Page 54: Fundamentos matematicos para la criptografia asimetrica

Raíces cuadradas modulares

Evidentemente, la raíz cuadrada de un valor entero módulo n existe, si y sólo si, dicho valor entero es resto cuadrático módulo n. Además, en el caso de que exista, se puede demostrar que dicha raíz cuadrada no es única. Existen diversos algoritmos para el cálculo de raíces cuadradas módulo n. Para presentarlos, se distinguirán los dos casos posibles que se pueden presentar: que el entero n sea un número primo o bien que sea un número compuesto.

Raíz cuadrada módulo n, con n primo

En el caso de que n sea un número primo, se puede demostrar que todo valor entero a, que sea resto cuadrático módulo n, tiene dos raíces cuadradas de la forma r módulo n y tales que:

Existen algoritmos capaces de calcular estas raíces de forma eficiente, aunque tienen una complejidad computacional bastante elevada. A continuación, se pasa a explicar uno de ellos, debido a L.M. Adleman, Manders y G.L. Miller.

Page 55: Fundamentos matematicos para la criptografia asimetrica

Se debe tener en cuenta que, n ≠2 y el valor entero a tiene que estar comprendido entre 0 < a < n, siendo a resto cuadrático módulo n.

Algoritmo para el cálculo de raíces cuadradas módulo primo

Page 56: Fundamentos matematicos para la criptografia asimetrica
Page 57: Fundamentos matematicos para la criptografia asimetrica
Page 58: Fundamentos matematicos para la criptografia asimetrica

Raíz cuadrada módulo n, con n compuesto

En este punto se describe el cálculo de raíces cuadradas módulo n, en el caso de que n sea un número compuesto de la forma:

con p y q factores primos de n. En estas condiciones, se puede demostrar que todo valor entero a, con 0 < a < n que sea resto cuadrático módulo n, tiene cuatro raíces cuadradas módulo n. Estas, son de la forma ±x y ±y módulo n y tales que:

verificándose que:

En estas condiciones, las raíces ±x mod n se denominan no gemelas, al igual que las raíces ±y mod n. Cualesquiera otras dos raíces se denominan gemelas. Las raíces cuadradas de a módulo n pueden calcularse de forma eficiente si se suponen conocidos los factores primos p y q de n.

Page 59: Fundamentos matematicos para la criptografia asimetrica

Algoritmo para el cálculo de raíces cuadradas módulo compuesto

Page 60: Fundamentos matematicos para la criptografia asimetrica
Page 61: Fundamentos matematicos para la criptografia asimetrica