competencias del alumno en las técnicas computacionales empleadas en criptografía. Así como brindar facilidad en los manejos esenciales a los desarrollos criptográficos. Que es la Criptografía
La criptografía clásica se le considera como
un arte, un conjunto de herramientas heurísticas relacionadas con garantizar la comunicación secreta para los militares y el gobierno. (antes de los 80)
La Criptografía Moderna se define como la ciencia de escribir
mensajes en forma cifrada o en código. Entonces la criptografía:
Es una ciencia que ayuda
a asegurar a que los sistemas informáticos sean más seguros para la gente común en todo el mundo. Cifrar o Encriptar Se dice cifrar, no encriptar. De acuerdo a la Real Academia Española, la palabra encriptar no existe. Desafortunadamente, esta palabra es utilizada como un anglicismo de la palabra “encryption” y en el mundo de la seguridad de la información muchos profesionales la emplean como si fuera un término correcto. Tipos de Cifrado • Simétricas: También llamada cifrado de clave privada, es un método de cifrado en el cual se usa una misma clave para cifrar y descifrar mensajes en presencia de una espía que puede monitorear toda la conversación entre ellas. • Asimétricas: Es una fórmula matemática que utiliza dos llaves, una pública y la otra privada. La llave pública es aquella a la que cualquier persona puede tener acceso, mientras que la llave privada es aquella que sólo la persona que la recibe es capaz de descifrar. Configuración de Cifrado, clave privada 1
Clave compartida privada
Configuración de Cifrado, clave privada 2
La misma persona
Clave compartida privada
Formalización de un esquema de cifrado 1. El algoritmo de generación de clave Gen es un algoritmo probabilístico que genera una clave k elegida de acuerdo con alguna distribución. 2. El algoritmo de cifrado Enc toma como entrada una clave k y un mensaje m y da salida a un texto cifrado c. Denotado por Enck(m). 3. El algoritmo de descifrado Dec toma como entrada una clave k y un texto cifrado c y da salida a un texto plano m. Denotado por Deck(c). Deck(Enck(m)) = m Auguste Kerckhoffs • Fue un lingüista y criptógrafo holandés que fue profesor de idiomas en la Escuela de Estudios Comerciales Avanzados en París a fines del siglo XIX • En su segundo principio estableció que: “El sistema no debe ser secreto, y no debe ser un problema que este caiga en manos del enemigo” • La seguridad de cifrado debe residir exclusivamente en la clave y no en el algoritmto de cifrado, y este ultimo debe ser criptoanalizado para conocer sus vulnerabilidades si los hubiere. Argumentos a favor de Auguste Kerckhoffs • Es mucho mas fácil para las partes mantener en secreto una clave corta que mantener el secreto el algoritmo • Es mas fácil cambiar una clave corta que cambiar todo un algoritmo • Es mucho mas fácil tener que todos tengan el mismo algoritmo de cifrado que todos tengan su propio algoritmo de cifrado.
Con respecto al ultimo tema, será un algoritmo de cifrado de confianza
Historia de cifrado • En el cifrado “Clásico”, vamos haber algunos de los cifrados clásicos y demonstrar que tan inseguros son: • Cifrado de julio cesar también conocido como cifrado por desplazamiento, es un tipo de cifrado por sustitución en el que una letra en el texto original es reemplazada por otra letra que se encuentra un número fijo de posiciones más adelante en el alfabeto. Veamos la implementación de este algoritmo Ver Video Criptoanálisis al Cifrado de Julio Cesar El primer criptoanálisis aplicable sería el método de complementación al componente original, es decir, probar las 27 permutaciones posibles obtenidas como resultado de desplazar una posición cada vez las letras de una palabra del criptograma.
El segundo criptoanálisis es el análisis de frecuencias, en donde se estudia la
frecuencia relativa de aparición de las diferentes letras del texto cifrado, para compararlas con una descripción estadística que hayamos obtenido del lenguaje, en el que sospechemos o sepamos que se encuentra el mensaje original. Análisis de frecuencias
Por ejemplo, para un texto
en español lo suficientemente representativo, se ha obtenido la siguiente distribución de frecuencias. Tarea • Desarrollar un Algoritmo de Criptoanálisis en JavaScript, que permita ingresar un texto cifrado y que muestre las 27 permutaciones restantes. Ejemplo: • Se ingresa: ANA • Muesta: • 1. BÑB • 2. COC • 3. DPD • Permutaciones 4. EQE • 5. FRF • …