Clave Pública. Criptografía-ULL

Documentos relacionados
05. Criptografía de clave pública

Criptografía de clave pública

Criptografía asimétrica o de clave pública

Aritmética Modular MATEMÁTICA DISCRETA I. F. Informática. UPM. MATEMÁTICA DISCRETA I () Aritmética Modular F. Informática.

Capítulo 13 Cifrado Asimétrico con Mochilas

Ampliación Matemática Discreta. Justo Peralta López

Lección 3: Sistemas de Cifra con Clave Pública

Algoritmos de cifrado

Sistema criptográfico de llave publica RSA. Análisis y diseño de algoritmos Jose F. Torres M.

Criptografía Susana Puddu

1. Introducción Cifrado de Hill RSA ElGamal Firma DSA Test de Miller-Rabin...

SEGURIDAD EN SISTEMAS DE INFORMACION. TEMA 2 - parte 2. Criptografia asimétrica

CRIPTOGRAFIA DE CLAVE SECRETA. El emisor y el receptor conocen y usan la misma clave secreta para cifrar y descifrar mensajes.

ASIMETRICA IV LOG DISCRETOS CRIPTO II UT II N 06

pública Índice RSA Firma Digital Características Comparativa cifrado simétrico vs. asimétrico Operaciones de Cifrado y Descifrado Funciones Hash

Aritmética II. Leandro Marín. Septiembre

Objetivos formativos de Álgebra

CRIPTOGRAFÍA 5º CURSO DE INGENIERÍA INFORMÁTICA

CRIPTOGRAFÍA 5º CURSO DE INGENIERÍA INFORMÁTICA

2. Obtener, por ensayo y error, una aproximación del entero más grande. Sugerencia: leer n y escribir n y n+1. (Puede ser muy largo el ensayo).

CRYPT4YOU TABLA DE CONTENIDOS DOCUMENTO ANEXO A LA LECCIÓN 1 DEL CURSO "EL ALGORITMO RSA" EJERCICIOS Y PRÁCTICAS PROPUESTOS Y RESUELTOS

Una introducción básica. Denise Goya Seminario feb/2009

10 CRIPTOGRAFÍA, PROTECCIÓN DE DATOS Y APLICACIONES c RA-MA

Álgebra y Matemática Discreta

Firmas digitales 2. Tema 4: Firmas digitales. Tema 4: Firmas digitales

Seguridad matemática en la Sociedad de la Información

Rompiendo llaves RSA expĺıcitamente con OpenSSL

Test de primalidad, aplicación a la criptografía

TEMARIOS PRUEBAS SEMESTRALES 2015 PRIMER SEMESTRE DEPARTAMENTO DE MATEMÁTICA

PROBLEMAS RESUELTOS DE PREPARACIÓN PARA OPOSICIONES. Problemas 02

Experiencia en el Grado en Ingeniería Informática para reforzar conceptos algebraicos a través de la Programación de Ordenadores

El sistema RSA. Estímulo del Talento Matemático. Real Academia de Ciencias

Características y uso. Recordando. La criptografia define una función de

C - Criptografía

Teoría de Números. UCR ECCI CI-1204 Matemática Discretas Prof. M.Sc. Kryscia Daviana Ramírez Benavides

10 CRIPTOGRAFÍA, PROTECCIÓN DE DATOS Y APLICACIONES c RA-MA

Capítulo 8 Teoría de la Complejidad Algorítmica

Redes de comunicación

Clase 2: Criptografía

Si la variable independiente x con un valor inicial a que le da un valor final b a la diferencia b-a se le llama incremento de la variable y se

Asignatura: Horas: Total (horas): Obligatoria Teóricas 3.0 Semana 3.0 Optativa X Prácticas Semanas 48.0 de elección

Matemáticas para proteger la Información

Bachillerato Internacional. Matemáticas Nivel Medio. Programa para el curso 1º ( )

Dominios Euclideos. Eugenio Miranda Palacios

Seguridad Informática

Principio del buen orden: Todo subconjunto no vacío de N tiene un primer elemento

Seguridad Informática

ÍNDICE. Unidad I Conjuntos 10. Unidad II Sistemas de numeración 70. Presentación... 9

Criptografía de clave pública. El sistema RSA

3. ARITMÉTICA MODULAR Congruencias de números enteros. Águeda Mata y Miguel Reyes, Dpto. de Matemática Aplicada, FI-UPM.

Funciones aritméticas. Una propiedad importante que le pedimos a una función aritmética es que sea sea multiplicativa,

FACTORIZACIÓN DE ENTEROS

Algoritmos de cifrado Definir el problema con este tipo de cifrado

Agenda. Alicia y Betito se vuelven públicos. A manera de conclusiones

DIVISIBILIDAD: Resultados

Estudio, diseño y evaluación de protocolos de autentificación para redes inalámbricas

Semana 12: Encriptación. Criptografía

Relaciones de orden. Definición 1. Llamamos conjunto ordenado a un par (E, ) donde E es un conjunto y es un orden definido en E

TALLER DE MATEMÁTICAS 1 ECUACIONES POLINÓMICAS

BOLETINES DE PROBLEMAS DE

Criptografía y Seguridad en Comunicaciones

1 NÚMEROS REALES Representación sobre la recta Entre dos números cualesquiera pertenecientes a él hay infinitos números racionales.

MATEMÁTICAS. PRIMERO DE E.S.O.

01. Dados varios números, los clasifica en los distintos campos numéricos. 02. Interpreta raíces y las relaciona con su notación exponencial.

Clase 1: Primalidad. Matemática Discreta - CC3101 Profesor: Pablo Barceló. P. Barceló Matemática Discreta - Cap. 5: Teoría de números 1 / 32

Contenidos IB-Test Matemática NM 2014.

CENTRO UNIVERSITARIO MONTEJO A.C. SECUNDARIA Temario Matemáticas 1

ASIMETRICA I CRIPTO II UT II N 03

Tema 1.- Nociones preliminares: grupos, anillos, cuerpos. Divisibilidad

Criptologia Asimétrica. Desventajas llave secreta

CRIPTOGRAFÍA APLICADA

TEORIA DE NUMEROS. Temas: MAXIMO COMUN DIVISOR ALGORITMO MCD(A,B) IDENTIDAD DE BEZOUT ALGORITMO ST(A,B) EL TEOREMA FUNDAMENTAL DE LA ARITMETICA.

Capítulo 7 Teoría de los Números

Aritmética modular. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Aritmética modular 1 / 16

CUESTIONARIO TEÓRICO / a) Qué quiere decir que un número natural sea divisible por otro?. Escribe simbólicamente

CONTENIDOS MÍNIMOS SEPTIEMBRE. DEPARTAMENTO DE MATEMÁTICAS

Tutoría Completa - Curso de Matemática para 1, 2 y 3 Básico

ECUACIONES. Ecuaciones. Indicadores. Contenido ECUACIÓN

6. PROGRAMACIÓN DEL CURSO 4º A DE E. S. O.

Vulnerabilidades Criptográficas. Pablo Prol Sobrado Alexandre Ramilo Conde

Una Introducción Matemática a la Criptografía (para mis alumnos de Álgebra I)

Álgebra I Práctica 4 - Números enteros (Parte 2)

CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA

TEMARIO PRESENTACIÓN 7 MÓDULO I 17 EXPRESIONES ALGEBRAICAS 19

Expresión decimal. Aproximación y estimación. Notación científica. Polinomios. Divisibilidad de polinomios. Regla de Ruffini.

Sistemas de Cifra en Flujo

Preliminares Métodos de Ajuste de Curvas AJUSTE DE CURVAS AJUSTE DE CURVAS

18 Experimentos aleatorios. Sucesos y espacio muestral. Frecuencia y probabilidad de un suceso.

UNIVERSIDAD NACIONAL DE LA PLATA

INDICE Teoría de conjuntos y figuras II. Relaciones y operaciones en un conjunto

Ecuaciones e inecuaciones. Sistemas de ecuaciones e inecuaciones

COMPLEMENTO DEL TEÓRICO

Ejercicios de Álgebra Básica. Curso 2015/16

1 Con juntos de Números: Axiomas 1

Conjuntos Numéricos I

Criptografía. Diplomado- TI (2) Criptografía. Diplomado-TI (2) 9 de enero de 2012

UNIVERSIDAD DEL CAUCA FACULTAD DE INGENIERIA ELECTRÓNICA Y TELECOMUNICACIONES PROGRAMA DE INGENIERIA DE SISTEMAS

Generación de variables aleatorias discretas Método de la Transformada Inversa

CRIPTO II UT I N 01 BASES TEORICAS I

I.E.S. DE INGENIO Avda. de los Artesanos, INGENIO POC-PC EVALUACIÓN CONTENIDOS MÍNIMOS CURSO CURSO: 1º BACH.

Transcripción:

Clave Pública

Clave Pública UsuarioA Cifrado E B Mensaje cifrado C Mensaje cifrado C Descifrado D B Usuario B Clave Pública de B Clave Privada de B Mensaje original M Mensaje original M

Clave Pública Clave pública Cálculo difícil Cálculo fácil Clave privada Función unidireccional: Transformación de fácil aplicación, pero de difícil inversión. FU con trampa: inversión fácil si se tiene cierta información adicional (clave privada).

Clave Pública Problemas base intratables: Factorización (RSA) Dado N encontrar sus factores primos Residuosidad cudrática (Rabin) Dado B=x 2 (mod p), calcular B 1/2 (mod p) Logaritmos discretos (ElGamal) Dado y=a x (mod p), calcular x Logaritmos discretos sobre curvas elípticas Dados B y P puntos de una curva elíptica yxb=p, calcular x

Clave Pública Cada usuario tiene: una clave privada para descifrar y una clave pública para que los demás cifren mensajes y se los envíen. De esa forma: Cualquiera puede cifrar mensajes y enviárselo a otro usuario sin necesidad de contacto previo Sólo el usuario que posee la correspondiente clave privada puede descifrar el mensaje

Clave Pública: RSA Información privada: p, primo q, primo φ(n)=(p-1)(q-1) d, entero primo con φ(n) Información pública: n=p q e, inverso de d módulo φ(n)

Clave Pública: RSA M i C i = M ie (mod n) cifrado C i M i = C i d (mod n) descifrado cifrado 2 con e=7, n=143 128 = 2 7 (mod 143) descifrado 128 con φ=10 12 y d=103 2 = 128 103 (mod 143)

Clave Pública: RSA Clave Pública: RSA Teorema de Euler: a ø(n) mod N = 1 Siempre que mcd(a,n)=1 En RSA se tiene que: N=p.q ø(n)=(p-1)(q-1) Los parámetros e & d son inversos mod ø(n) Por tanto e.d=1+k.ø(n) para algún k Luego por tanto ( siempre en aritmética mod N ) C d = (M e ) d = M 1+k.ø(N) = M 1.(M ø(n) ) k = M 1.(1) k = M 1 = M

Clave Pública: RSA Cuestiones a resolver en la implementación: Generación seudoaleatoria de p, q y d Aplicación de tests de primalidad a p y q Aplicación del algoritmo de Euclides para la elección de d, y el cálculo del inverso e Codificación numérica del mensaje inicial Exponenciación rápida para el cifrado y el descifrado

Test de primalidad de Lehman y Peralta 1. Comprobar que n no es divisible por ningún primo pequeño (2,3,5,7,11). 2. Elegir 100 enteros aleatorios a 1,a 2,...,a 100 entre 1 y n-1. 3. Para cada i calcular a (n-1)/2 i (mod n): Si para todo i, a (n-1)/2 i 1(mod n), entonces n es compuesto Si existe i tal que a (n-1)/2 i 1(mod n) y a (n-1)/2 i -1 (mod n), entonces n es compuesto Si para todo i, a (n-1)/2 i 1(mod n) ó a (n-1)/2 i -1 (mod n), entonces n es primo

RSA: Codificación del mensaje Para cifrar un mensaje es necesario codificarlo previamente en un sistema numérico en base b y dividirlo en bloques de tamaño j tal que b j <n<b j+1

Clave Pública: RSA Seguridad: Basada en el problema de la factorización del producto de dos grandes números primos Nunca compartir módulos n con otros usuarios Usar p, q, d y e suficientemente grandes Usar p y q de similar longitud, pero con bastante diferencia Usar primos fuertes, e.d. tales que: p-1 tiene un gran divisor primo r p+1 tiene un gran divisor primo s r-1 tiene un gran divisor t

Clave Pública: Cifrado de ElGamal Se basa en el problema de los logaritmos discretos Algoritmo: Se escoge un número primo n y dos números aleatorios p y x menores que n. Se calcula y = p x (mod n) La clave pública es (p, y, n), y la privada es x. Para cifrar el mensaje m se escoge un número aleatorio secreto k primo relativo con (n-1), y se calcula: a = p k (mod n) b = y k m(modn) El par (a, b) es el texto cifrado, Para descifrar se calcula m = b * a -x (mod n)

Clave Pública: Cifrado de Rabin Se basa en el problema de la residuosidad cuadrática. Primero se escogen dos números privados primos, p y q, ambos congruentes con 3 módulo 4 (los dos últimos bits a 1). La clave pública es su producto, n = pq. Para cifrar un mensaje m, se calcula: c = m 2 (mod n)

Clave Pública: Cifrado de la Mochila Problema NP- completo de la mochila, MERKLE-HELLMAN (1978) GRAHAM-SHAMIR (1984) La mayoría de sus implementaciones han sido rotas por criptoanálisis

Clave Pública: Cifrado de la Mochila El problema de la mochila puede plantearse en los siguientes términos: sea W={w 1, w 2,..., w n } un conjunto finito dado de números enteros, y sea s= w i1 +... + w it, con i1<...< it, una subsuma de elementos de W. Se trata de determinar el subconjunto {w i1,...,w it } de W, conocido W y s.

Clave Pública: Cifrado de la Mochila Problema fácil de la mochila. Sucesión supercreciente: w 1 < w 2 <... < w k <... tq se verifica que w i+1 > w 1 +...+ w i, para todo i. Ej: 3,5,11,22,45,88,180,357,712. Si tenemos s= 1356: 1356 mayor que 712, 1356 712=644 entre 357 y 712, 644 357=287 entre 180 y 357, 287 180=107 entre 88 y 180, 107 88=19 entre 11 y 22, 19 11=8 entre 5 y 11, 8 5=3 entre 3 y 5, 3 3=0

Clave Pública: Cifrado de la Mochila Dado C entero positivo, W = (w 1,..., w n ) un vector con componentes w i enteros positivos para todo i. Se trata de encontrar M = (m 1,..., m n ), m i = 0 ó 1, 1< i < n, Tal que C = W.M ó C = w 1 m 1 +... + w n m n Ej: Sea n = 5, C = 14 y W = (l, l0, 5, 22, 3), entonces M = (1,1,0,0,1).

Cifrado de la Mochila 1) Se escoge un vector simple W' = (w 1 ',..., w n '). Esto permite una solución sencilla de: C'= W'.M. 2) Se elige un entero u tq u >2w n ' > w 1 '+... + w n ' 3) Se elige un entero v tal que mcd(u, v)=1 y el inverso del mismo número v -1 (mod u) se obtiene de v.v -1 ( mod u) = 1. 4) El vector W' se transforma en W=vW' (mod u), donde, w i = w i ' (mod u) Así, resolver C = W.M es difícil, pero si se conoce la información adicional v -1 y u el problema es más sencillo, pues se puede convertir el problema C = W.M en el C' = W'.M, fácil de resolver ya que C'=v -1 C= v -1 WM= v -1 (vw')m=w'm(mod u)

Cifrado de la Mochila El cifrado sería el siguiente: Sea E A el algoritmo cifrado que utiliza la clave pública de A, y D A el algoritmo de descifrado que utiliza la clave privada de A (W', u, v -1 ). El mensaje inicial se trocea en bloques de n bits (cardinal de W) M = (m 1,..., m n ) y cada bloque se cifra según: C = E A (M) = W.M. El mensaje C se descifra calculando: D A (C) = Algoritmo Simple (v -1 C (mod u),w') = M.

Cifrado de la Mochila Sea W = (1, 2, 5, 9), u = 20 y v = 7. Entonces v -1 = 3 el vector W se convierte en el W' = v.w ó w i '= v. w i (mod u). La clave privada es ((1, 2, 5, 9), 3, 20). W' = (7.l, 7.2, 7.5, 7.9 )(mod 20) = (7, 14, l5, 3), que es la clave pública. Sea C = 13, el mensaje, que corresponde al vector binario M = (1,1,0,1). C' = E A (M) = 7 +14 +3 = 24 D A (C') = D A (24)= Algoritmo Simple (3.24 (mod 20), W')= Algoritmo Simple (12, W')= 1 + 2 + 9 = 13

Clave Pública: Curvas Elípticas Basado en el PLD Elíptico: Dados P, Q puntos de una curva, encontrar entero x tal que xp=q Curva eliptica y2+axy+by=x3+cx2+dx+e, con a,b,c,d,e K, grupo abeliano aditivo con identidad O y suma P+Q=R: Si P Q,-Q (donde si P = (x,y), -P = (-x,y)) se traza una recta entre P y Q, y -R es el tercer punto de intersección de la recta con la curva Si P=Q, -R es el punto de intersección de la recta tangente en P si lo hay, y si no R=P

Clave Pública: Curvas Elípticas 1. Clave privada de A: entero aleatorio a A 2. Clave pública de A: punto a A P 3. Mensaje original: punto Q m 4. Mensaje cifrado: puntos {k A P,Q m +k A (a A P)} siendo k A un entero aleatorio

Clave Pública: Otros Cifrados Cifrado de Rabin: Basado en el PRC Cifrado de Merkle-Hellman: Basado en el Problema de la Mochila Cifrado de Mc-Eliece: Basado en el Problema de la Decodificación de Códigos Lineales

Clave Pública o Clave Secreta? Es entonces la solución a todos nuestros problemas la criptografía de clave pública? NO El principal inconveniente proviene de su lentitud. Solución? Cifrados híbridos