Criptografía de clave pública

Documentos relacionados
Capítulo 13 Cifrado Asimétrico con Mochilas

Criptografía y Seguridad de Datos Introducción a la Criptografía: Confidencialidad de los mensajes

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

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

Si lo escondo, lo encuentras? Aritmética del reloj Mª Joaquina Berral Yerón, Inmaculada Serrano Gómez

Un Poco de Historia Criptografía, Criptografía Clásica

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

Matemáticas para proteger la Información

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

Redes de comunicación

DIVISIBILIDAD: Resultados

ASIMETRICA I CRIPTO II UT II N 03

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

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

Objetivos formativos de Álgebra

PROBLEMAS RESUELTOS DE PREPARACIÓN PARA OPOSICIONES. Problemas 02

Criptografía básica. (extracto de ponencia Administración Electrónica ) EUITIO Universidad de Oviedo. Alejandro Secades Gómez

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

Ingeniería en Informática

Lección 12 Seguridad y criptografía. Universidad de Oviedo / Dpto. de Informática

CRIPTOGRAFÍA. 1. Introducción. 11 de noviembre de 2003

Algoritmos de cifrado Definir el problema con este tipo de cifrado

Seguridad Informática

Modelos Matemáticos en Ciberseguridad

El algoritmo RSA. Aula Virtual Crypt4you. Dr. Jorge Ramió Aguirre Universidad Politécnica de Madrid

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

4.2 Números primos grandes. MATE 3041 Profa. Milena R. Salcedo Villanueva

Métodos Encriptación. Tópicos en Sistemas de Computación Módulo de Seguridad

El universo de los números primos

Criptografía. Por. Daniel Vazart P.

Criptografía y firma digital

ASIMETRICA IV LOG DISCRETOS CRIPTO II UT II N 06

MANUAL DE CONFIGURACIÓN DEL CERTIFICADO DIGITAL EN OUTLOOK 2010

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

T E M A. Algoritmos de criptografía simétrica. [2.1] Cómo estudiar este tema? [2.2] Cifradores de bloque. [2.3] Cifradores de flujo

CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA

(CAST5, BLOWFISH,AES, AES192, AES256, TWOFISH)

Evidentemente, la superficie es un triángulo rectángulo de base 1 y altura también la unidad, por tanto su área es 1/2.

Fundamentos Matemáticos del Cifrado Asimétrico. Banco de Guatemala

Teoría de Números. Divisibilidad. Olimpiada de Matemáticas en Tamaulipas

FIABILIDAD, CONFIDENCIALIDAD, INTEGRIDAD Y DISPONIBILIDAD

CRIPTOGRAFIA, ESTEGANOGRAFIA Y WATERMARKING

TEMA 40: Criptografía: Sistemas de clave simétrica y asimétrica, certificados digitales. Legislación en materia de firma electrónica.

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

Complejidad computacional (Análisis de Algoritmos)

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

CRIPTO 101- RSA y la aritmética modular I

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

CONFIGURACIÓN DEL CERTIFICADO DIGITAL EN OUTLOOK EXPRESS 6.0

Tema: Funciones hash y firma digital

TALLER DE DETECTIVES: DESCIFRANDO MENSAJES SECRETOS. 1. Introducción

UNIVERSIDAD NACIONAL DE LA PLATA

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

VULNERABILIDADES CRIPTOGRÁFICAS. Por Alexandre Ramilo Conde y Pablo Prol Sobrado

Redes de Ordenadores 3º Doble Tit. Informática y Telemática. Trabajo

ALGORITMOS DE ENCRIPTACIÓN, DESENCRIPTACIÓN - EVALUACIÓN Y VERIFICACIÓN

FIRMA DIGITAL. Trabajo realizado por Manuel Iranzo

FACTORIZACIÓN DE ENTEROS

3. Algoritmo DES (Data Encription Standard)

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

TEMA 2. POLINOMIOS Y FRACCIONES ALGEBRAICAS

Criptografía de Clave secreta: Cifrado en flujo. Amparo Fúster Sabater Instituto de Física Aplicada C.S.I.C.

CRIPTOGRAFIA. Universidad Tecnológica Centroamericana

Criptografía Básica. Reinaldo Mayol Arnao Centro de Tecnologías de Información Universidad de Los Andes 2006

Bases de la Firma Electrónica: Criptografía

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

MANUAL DE CONFIGURACIÓN DEL CERTIFICADO DIGITAL EN OUTLOOK EXPRESS 6.0

GUIA DE CATEDRA Matemática Empresarial Guía N.3 F. Elaboración 09 abril /11 F. 1 Revisión 09/04/11 Pagina 1 de 8

Manual para crear Llaves Privadas y Públicas en Windows.

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

Introducción a la Programación Dinámica. El Problema de la Mochila

Derivada de la función compuesta. Regla de la cadena

Apuntes de Seguridad I

Semana 13: Encriptación. Cifrado simétrico

Unidad II. 2.1 Concepto de variable, función, dominio, condominio y recorrido de una función.

Julio César Mendoza T. Ingeniería de Sistemas Quito

Organización de Computadoras. Clase 2

Matemáticas 2.º Bachillerato. Intervalos de confianza. Contraste de hipótesis

FACULTAD DE INGENIERIA SYLLABUS

Tema2: La criptografía para la protección. de comunicaciones

Clave Pública y Clave Privada

Conceptos previos. Algoritmos de cifrado: DES, AES, IDEA, RC5

Dra. Elsa Estévez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur

La Firma Digital. Seguridad en Redes TCP/IP. Tabla de Contenidos

Materia: Matemática de Octavo Tema: Raíces de un polinomio. Marco teórico

Criptografía y Seguridad en Comunicaciones

1 Aritmética Modular y Criptografía

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Contenidos. Capítulo 1 Grimaldi. Introducción Reglas. Combinación. Coeficiente. Permutación. Ejercicios 20/05/2014. sin repeticiones con repeticiones

TEMA 6: DIVISIÓN DE POLINOMIOS RAÍCES MATEMÁTICAS 3º ESO

sobre un intervalo si para todo de se tiene que. Teorema 1 Sean y dos primitivas de la función en. Entonces,

Anillo de polinomios con coeficientes en un cuerpo

Capítulo 3. Qué es un Prestador de Servicios de Certificación?

Algebra Lineal. Gustavo Rodríguez Gómez. Verano 2011 INAOE. Gustavo Rodríguez Gómez (INAOE) Algebra Lineal Verano / 21

Transcripción:

Modelo de comunicación cifrada Texto Base ------------- ------ Cifrado Cifra ---------- ---------- ------ Descifrado Texto Base ------------- ---------- Intruso

Terminología Texto base (B, P): mensaje acifrar Texto cifrado (C): resultado del cifrado Claves (K, K ): cadena alfanumérica usada en el cifrado y descifrado Notación: E: algoritmo de cifrado; C = E[B; K] D: algoritmo de descifrado; B = D[C; K ] D, E: funciones matemáticas de texto y clave Propiedad básica: formar un criptosistema: B = D[E[B; K]; K ] Fundamentos de un buen método criptográfico: algoritmo de cifrado público y robusto, claves largas (y secretas) Cuanto más larga es la clave, mayor es el número de intentos necesarios a fuerza bruta

Criptografía de clave secreta Claves K, K sólo conocidas por A y B (frecuentemente K = K ) Algoritmos estándar: DES (Digital Encription System): IBM-NAS, de 1975 hasta ahora AES (Advanced Encription Standard): Rijmen-Daemen, desde ahora Problema: necesidad de intercambio previo de claves Requiere contacto físico Imposible en mundo WWW Alternativa Diffie-Hellman (1976): criptosistema donde Clave decifrado pública; clave de descifrado d privada No derivables una de otra

I Esquema: hay un algoritmo de cifrado E[P; KE] y otro de descifrado D[C; KD] sobre claves KE, KD distintas que verifican 1. D[E[B; KE]; KD] = B 2. Es muy difícil deducir KD desde E, KE y D 3. D no puede romperse mediante un ataque de texto seleccionado El primer requisito es imprescindible para la utilidad del sistema El segundo requisito es obvio El tercero es fundamental: Como E y KE son públicos, el atacante puede general tantos pares (B, C) de texto base y cifrado como quiera

II Funcionamiento general: una persona, Ana (A), que quiere recibir mensajes establece dos algoritmos EA, DA, con sus claves KE y KD A hace públicos EA y KA para que se pueda comunicar con ella Si otra persona, Benito (B), quiere comunicar un mensaje P a A, Obtiene EA y KA Cifra P con EA y KA y obtiene C = EA[P; KA] Envía C a A Ventaja: posibilidad inmediata de establecer comunicaciones cifradas con cualquier otro usuario del sistema Inconvenientes: luego!! Cómo llevar a la práctica este esquema? 1ª idea: método de la mochila 2ª idea: método RSA

Método de la mochila I Primer algoritmo de clave pública; autores: Merkle y Hellman Idea: problema de lamochila Se tiene una lista de M objetos O1, O2,..., de valores V1, V2,..., y pesos W1, W2,..., y una mochila que aguanta un peso máximo P Dado un valor V, se quiere decidir si hay un subconjunto de objetos de peso a lo sumo P y de valor V Solución muy sencilla, pero coste para M objetos y peso P = MP = M2^logP => coste exponencial => cómputo difícil para M, P grandes No se conocen algoritmos mejores De hecho la mochila es un problema NP

Método de la mochila II Variante para Merkle-Hellman: problema de la suma Se tiene una lista L de M números S1, S2,..., y un valor V, y se quiere decidir si hay un subconjunto de números cuya suma sea V Variante de la mochila: pesos iguales a 1, valores S1, S2,..., y peso máximo M También es NP Pero... cómo usar esto para el cifrado?

Método de la mochila III B posee una gran lista L de objetos con pesos particulares y distintos, t que hace pública => clave = Lista L Supongamos que la lista es L1 = [575, 436, 1586, 1030, 1921, 569, 721, 1183, 1570] 9 elementos => cifrado en bloques de 9 bits SiA quiere cifrar el bloque 101100111, calcula Y = 575 * 1 + 436 * 0 + 1586 * 1 + 1030 * 1 + 1921 * 0 + 569 * 0 + 721 * 1 + 1183 * 1 + 1570 * 1 = 575 + 1586 + 1030 + 721 + 1183 + 1570 = 6665 B descifra este bloque resolviendo el problema de la suma Para cada bloque encuentra qué números suman el mensaje La combinación le da el bloque de texto base

Método de la mochila IV Enfoque criptográfico: el problema de la suma es NP Esfuerzo de computación exponencial Descifrado no factible computacionalmente si listas largas Consecuencia: el destinatario puede descifrar el mensaje!! Truco práctico: la lista pública es una variante de una lista supercreciente: Si > S1 + S2 +... + Si-1 El problema de la suma es aquí muy fácil Algoritmo para sucesiones supercrecientes: si la suma es S su cadena de bits X1...XN se obtiene como sigue: para i de N a 1: sis>=si: S=S Si;Xi=1; else: i = 0;

Método de la mochila V Ejemplo: si la lista es L2 = [2, 5, 9, 21, 45, 103, 215, 450, 946], y S = 1643, la evolución es 1643 > = 946 => X9 = 1 y 1643 946 = 697 697 > = 450 => X8 = 1 y 697 450 = 247 247 > = 215 => X7 = 1, y 247 215 = 32 32 < 103 => X6 = 0 32 < 45 => X5 = 0 32 > = 21 => X4 = 1, y 32 21 = 11 11>=9=>X3=1,y11 9=2 2 < 5 => X2 = 0 2>=2=>X1=1, quedaeltextoinicial101100111

Método de la mochila VI Truco de Merkle: Transformar una sucesión supercreciente L2 en una L1 que no lo es, y de manera invertible Ejemplo de trap door (puerta trasera): permiten un descifrado fácil a los iniciados Transformación de sucesión SC a sucesión pública SP: mediante Módulo M > SC1 + SC2 +... SCN, Multiplicador: P, donde mcd(p, M) = 1 => existe Q tal que PQ % M = 1 Entonces SPi = SCi * P % M Clave pública: SP1,.., SPN Clave privada: P, que permite obtener Q y SC1,.., SCN

Descifrado: en dos pasos Método de la mochila VII Multiplicar li cada bloque de C por Q módulo M Resolver problema de la suma supercreciente Efecto de multiplicar: se obtiene el cifrado equivalente respecto a SC: Si C = SPa +... + SPt, C * Q % M = SPa * Q % M +... + SPt * Q % M = SIa * P * Q % M +... + SIt * P * Q % M = (SIa +... + SIt) * (P * Q % M) = SIa +... + SIt Implementación práctica: Sucesiones de unos 250 términos Términos de unos 200 a 400 bits, Multiplicador de unos 200 bits

Método de la mochila VIII Merkle ofreció 100 dólares a quién pudiera romper el algoritmo en su primera versión Adi Shamir lo consiguió Merkle reforzó el algoritmo, ofreciendo ahora 1.000 dólares Ron Rivest los ganó Merkle no llegó a ofrecer 10.000000 dólares Leon Adleman se quedó con las ganas Consecuencias: El algoritmo de la mochila no se usa, Pero establece la posibilidad de algoritmos de clave pública Otros muchos algoritmos se han publicado El más usado es RSA

RSA I Descubierto en 1978 por Rivest, Shamir, Adleman, muy amplio uso Fundamento en teoría de números Pasos previos al cifrado: Se escogen dos primos P, Q de más de 100 cifras Se calculan N = PQ, y Z = (P-1)(Q-1) Se escoge un número D primo relativo con Z Se encuentra un número E con ED congruente con 1 módulo Z Para cifrar un texto base: Se divide en bloques B de K bits donde 2^K < N => como un número en base dos, cada bloque B es < que N B se cifra calculando C = B^E [%N] C se descifra calculando B = C^D CD[%N]

RSA II El cifrado y el descifrado son inversos uno de otro: pequeño teorema de Fermat Si M y N son primos relativos, M^f(N) % N = 1 con f(n) = función fi de Euler = número de enteros < N y primos relativos con N Entonces: C^D %N = B^(ED) %N = B^(1+kZ) %N = B%N ((B^Z)%N)^k = B!! Para el cifrado se necesitan N y E: forman la parte pública Para el descifrado d se necesitan D (y N): forma la parte privada

Seguridad de RSA Fortaleza de RSA: dificultad de factorizar un número grande Se conoce N pero no P o Q; trap door: N = PQ De conocerse: Z se calcula inmediatamente D se calcula mediante el algoritmo de Euclides a partir de Z y E Factorización: problema muy estudiado en Teoría de Números Más de 300 años y grandes talentos Problema: si N grande, P y Qsongrandes Cómo garantizar en tiempo razonable que son primos? Solución: usar pseudoprimos Números de generación rápida con muy baja probabilidad de ser compuestos