20 DE MAYO DE 2010
SEGURIDAD INFORMÁTICA | LICENCIATURA EN INGENIERÍA EN
SISTEMAS Y COMPUTACIÓN
FISC CIFRADO DE INFORMACIÓN
Universidad Tecnológica de Panamá
Centro Regional de Chiriquí
Facultad de Ingeniería de Sistemas Computacionales
Licenciat...
Índice General
1. Introducción
2. Definiciones
2.1. Criptografía
2.2. Texto Claro y Cifrado
2.3. Cifrador
2.4. Clave
2.5. ...
6. Conclusiones
7. Anexo
7.1. Servicios de Seguridad
7.1.1. Confidencialidad del mensaje
7.1.2. Integridad del mensaje
7.1...
1. Introducción
La seguridad es un aspecto muy importante en cualquier red.
La seguridad en la red se consigue principalme...
2.3. Cifrador
Los algoritmos de cifrado y descifrado se denominan cifradores. El término
cifrador también se usa para refe...
Cifrado con Clave Asimétrica 3
Para compararlos se puede pensar en una caja con cerradura. En clave simétrica,
la misma ll...
Servicios de seguridad relacionados con el mensaje o entidad 4
2.7. Confidencialidad del mensaje
Confidencialidad del mens...
cuenta a otra, el banco debe haber comprobado que el cliente ha pedido
realmente la transferencia
2.11. Autenticación de e...
Estructura común de los protocolos de seguridad 5
para todo el mundo, que no lo están como veremos, el emisor y receptor
n...
3.1. Cifradores Tradicionales
Son orientados a carácter. Aunque actualmente están obsoletos, los
cifradores actuales han e...
3.1.1.2. Cifrador Polialfabético
Cada carácter puede tener un sustituto distinto. La
redacción entre un carácter en el tex...
Cifrador de Desplazamiento para la Palabra “Hello” 7
3.1.3. Cifradores por Transposición
No hay sustitución de caracteres;...
3.2. Cifradores Modernos Simples
Deben ser orientados a bit. Esto es así porque la información a cifrar no
es solo texto; ...
El cifrado XOR es, como su nombre indica, un algoritmo de cifrado simple,
basado en los siguientes conceptos:
A 0 = A,
A A...
La clave en un cifrado de rotación está compuesto por el tamaño del bloque
y el ángulo de rotación. Se puede girar a la iz...
Entrada de 6 bits 11
3.2.4. Cifrador por Trasposición: P-box
Una P-box (permutation box) para bits paraleliza el cifrador ...
3.3. Cifradores Modernos Iterativos
Los cifradores actuales se denominan cifradores iterativos, porque tienen
múltiples it...
Las permutaciones inicial y final son permutaciones directas sin clave y son
inversas entre sí. La permutación toma un val...
3.3.1.2. Triple DES
Los críticos de DES se quejan de que la clave es demasiado corta.
Para alargar la clave, se implementó...
National Institute of Standards and Technology (NIST) eligió el algoritmo
Rinjdael, denominado así por sus dos inventores ...
Estructura de cada iteración Cada iteración de AES, excepto la última, es un
cifrador complejo con cuatro operaciones reve...
3.3.3. Otros Cifradores
Durante las últimas dos décadas se han diseñado y usado unos pocos
cifradores de bloque simétricos...
1. Elige dos números primos muy grandes, p y q. Recuerde que un número
primo es uno que solo puede ser dividido por 1 y po...
Texto en claro: 5
C = 5^13 mod 77 = 26 Texto cifrado: 26
El receptor recibe el texto cifrado 26 y usa la clave privada 37 ...
Como se puede ver, tanto el receptor como el emisor alcanzan el mismo valor (K)
sin que el receptor conozca x y sin que el...
3. El emisor envía 21 al receptor.
4. El receptor envía 4 al emisor.
5. El emisor calcula la clave simétrica K= (4)^3 mod ...
Las claves públicas, al igual que las secretas, deben ser distribuidas para ser
útiles.
El cifrado y descifrado ayuda a lo...
 Se puede dividir los cifradores en dos amplias categorías: clave simétrica y clave
asimétrica. En los primeros, el emiso...
7.1.2. Integridad del mensaje
El cifrado y descifrado proporciona el sector o confidencialidad, pero no
integridad. Sin em...
7.1.5. Autentificación de entidad o identificación
La autenticación de entidad es una técnica diseñada para permitir a una...
8. Referencias Bibliográficas
Transmisión de datos y redes de comunicación 4ta Edición. Capítulo 26
o Behrouz A. Forouzan
...
Upcoming SlideShare
Loading in...5
×

Cifrado de información joaquín de león nuris del cid_edilberto de gracia

454

Published on

Published in: Education
1 Comment
0 Likes
Statistics
Notes
  • por favor codigo de cifrado ejemplos gacais
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
454
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
16
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Cifrado de información joaquín de león nuris del cid_edilberto de gracia"

  1. 1. 20 DE MAYO DE 2010 SEGURIDAD INFORMÁTICA | LICENCIATURA EN INGENIERÍA EN SISTEMAS Y COMPUTACIÓN FISC CIFRADO DE INFORMACIÓN
  2. 2. Universidad Tecnológica de Panamá Centro Regional de Chiriquí Facultad de Ingeniería de Sistemas Computacionales Licenciatura en Ingeniería en Sistemas y Computación Seguridad en Tecnología de Computación Parcial #2 Cifrado de Información Estudiantes: De Gracia, Edilberto 4-744-2500 De León, Joaquín 4-738-1413 Del Cid, Nuris 4-741-1573 Facilitador: Profesor René Saldaña Fecha de Entrega: Jueves, 20 de junio de 2010. I Semestre
  3. 3. Índice General 1. Introducción 2. Definiciones 2.1. Criptografía 2.2. Texto Claro y Cifrado 2.3. Cifrador 2.4. Clave 2.5. Dos Categorías 2.6. Servicio de Seguridad 2.7. Confidencialidad del mensaje 2.8. Integridad del mensaje 2.9. Autenticación del mensaje 2.10. No repudio del mensaje 2.11. Autenticación de entidad 2.12. Protocolos de Seguridad en Internet 3. Criptografía con Clave Asimétrica 3.1. Cifradores Tradicionales 3.1.1. Cifradores por Sustitución 3.1.1.1. Cifrador Polialfabético 3.1.1.2. Cifrador Monoalfabético 3.1.2. Cifrador por Desplazamiento 3.1.3. Cifradores por Transposición 3.2. Cifradores Modernos Simples 3.2.1. Cifrador XOR 3.2.2. Cifrador por Rotación 3.2.3. Cifrador por Sustitución_ S-box 3.2.4. Cifrador por Trasposición: P-box 3.3. Cifradores Modernos Iterativos 3.3.1. Data Encription Standard (DES) 3.3.2. Función DES 3.3.3. Triple DES 3.3.4. Advanced Encription Standard (AES) 3.3.5. Otros Cifradores 4. Criptografía con Clave Asimétrica 4.1. RSA 4.2. Diffie-Hellman 5. Recomendaciones
  4. 4. 6. Conclusiones 7. Anexo 7.1. Servicios de Seguridad 7.1.1. Confidencialidad del mensaje 7.1.2. Integridad del mensaje 7.1.3. Autenticación del mensaje 7.1.4. No repudio del mensaje: Firma Digital 7.1.5. Autentificación de entidad o identificación 7.2. Gestión de claves 7.2.1. Distribución de claves simétricas 7.2.2. Distribución de clave pública 8. Referencias Bibliográficas
  5. 5. 1. Introducción La seguridad es un aspecto muy importante en cualquier red. La seguridad en la red se consigue principalmente mediante el use de criptografía. La criptografía, sin embargo, es solo la base de la seguridad. Es necesario complementarla con servicios de seguridad. La criptografía, sin embargo, es solo la base de la seguridad. 2. Definiciones Para poder comprender los temas tratados, se presentan algunos términos y taxonomías asociados con la criptografía. 2.1. Criptografía Una palabra de origen griego que significa "escritura secreta". Sin embargo, actualmente se usa el término para definir la ciencia y el arte de transformar mensajes para hacerlos seguros e inmunes a ataque. La Figura 1 muestra los componentes involucrados en la criptografía. Componentes de la Criptografía 1 2.2. Texto Claro y Cifrado El mensaje original, antes de ser transformado, se denomina texto en claro. Después de su transformación, se denomina texto cifrado. Un algoritmo de cifrado transforma el texto en claro. En texto cifrado; un algoritmo de descifrado transforma el texto cifrado en texto en claro. El emisor usa el algoritmo de cifrado y el receptor el algoritmo de descifrado.
  6. 6. 2.3. Cifrador Los algoritmos de cifrado y descifrado se denominan cifradores. El término cifrador también se usa para referirse a distintas categorías de algoritmos de criptografía. No es necesario que cada par emisor receptor tenga su propio cifrador exclusivo para asegurar la comunicación. Por el contrario, un mismo cifrador puede servir para millones de pares de comunicación. 2.4. Clave Es un número (o conjunto de números) con el que opera el algoritmo de cifrado. Para cifrar un mensaje, es necesario un algoritmo de cifrado, una clave de cifrado y el texto en claro. Para descifrarlo, hace falta un algoritmo de descifrado, una clave de descifrado y el texto cifrado. 2.5. Dos Categorías Se puede dividir a los algoritmos de criptografía (cifradores) en dos grupos: algoritmos de clave simétrica (también denominados de clave secreta) y de clave asimétrica (también denominados de clave pública). 2.5.1. Cifrado con clave simétrica En el cifrado con clave simétrica, se usa la misma clave en ambos extremos de la comunicación, para cifrar en el emisor y para descifrar en el emisor. La clave es compartida como se muestra en la Figura. Cifrado con Clave Simétrica 2 2.5.2. Cifrado con clave asimétrica En el cifrado con clave asimétrica o pública hay dos claves: clave privada y clave pública. La clave privada se almacena en el receptor. La clave pública se anuncia públicamente. La clave pública se usa para cifrar mensajes, por lo que cualquiera puede enviar un mensaje cifrado con ella. Sin embargo, para descifrar el mensaje hace falta la clave privada, que solo tiene el receptor, como se muestra en la Figura.
  7. 7. Cifrado con Clave Asimétrica 3 Para compararlos se puede pensar en una caja con cerradura. En clave simétrica, la misma llave cierra) abre la caja, por lo que emisor y receptor deben tener la llave o una copia. En clave asimétrica, el emisor se cierra con una llave, pero para abrir hacen falta dos llaves. 2.6. Servicio de Seguridad La criptografía tiene muchas aplicaciones en seguridad, pero son necesarios servicios de más alto nivel. La seguridad de la red puede proporcionar típicamente los cinco servicios que se muestran en la Figura. Cuatro de ellos están relacionados con los mensajes que se intercambian usando la red: confidencialidad. Integridad, autenticación y no repudio. El quinto proporciona autenticación de entidad o identificación.
  8. 8. Servicios de seguridad relacionados con el mensaje o entidad 4 2.7. Confidencialidad del mensaje Confidencialidad del mensaje, o privacidad, significa que el emisor y el receptor esperan confidencialidad. El mensaje transmitido solo debe tener sentido para el receptor esperado. Para los demás, el mensaje debe ser basura. Cuando un cliente se comunica con su banco, espera que la comunicación sea totalmente confi- dencial. 2.8. Integridad del mensaje Significa que los datos deben llegar al receptor exactamente igual que fueron emitidos. No debe haber cambios durante la transmisión, ni accidentales ni maliciosos. A medida que hay más intercambios monetarios en Internet, la integridad es crucial. Por ejemplo, sería desastroso que una transferencia de 100 € terminará siendo una transferencia de 100.000 €. La integridad del mensaje debe mantenerse en una comunicación segura. 2.9. Autenticación del mensaje Es un servicio más allá de la integridad del mensaje. En la autenticación del mensaje, el receptor necesita estar seguro de la identidad del emisor y de que un impostor no ha enviado un mensaje. 2.10. No repudio del mensaje Significa que un emisor no debe ser capaz de negar el envío de un mensaje que efectivamente envió. La carga de la prueba cae sobre el receptor. Por ejemplo, cuando un cliente envía un mensaje para transferir dinero de una
  9. 9. cuenta a otra, el banco debe haber comprobado que el cliente ha pedido realmente la transferencia 2.11. Autenticación de entidad En la autenticación de entidad (o identificación de usuario) la entidad o usuario es verificada antes de acceder a los recursos del sistema (por ejemplo ficheros). Por ejemplo, un estudiante que necesita acceder a los recursos de la universidad tiene que autenticarse durante el proceso de entrada. Esto protege los intereses de la universidad y del estudiante. 2.12. Protocolos de Seguridad en Internet Los aspectos de seguridad anteriores deben aplicarse en los niveles del modelo Internet. Para ello se usan protocolos que se aplican en los niveles de red, transporte y aplicación como veremos en este capítulo. En todos estos protocolos hay aspectos comunes a considerar. Primero es necesario crear un código de autenticación del mensaje (MAC). Después es necesario cifrar el mensaje y, probablemente, el MAC. Esto significa que, con variaciones pequeñas, cada protocolo que veremos toma un paquete del nivel adecuado y crea un nuevo paquete que está autenticado y cifrado. La Figura muestra esta idea general. Observe que la cabecera o la cola del protocolo de seguridad puede estar incluida o no en el proceso de cifrado. Observe también que algunos protocolos pueden necesitar más información en el paquete seguro; la figura muestra solo la idea general. Un aspecto común en todos estos protocolos son los parámetros de seguridad. Incluso una estructura simplificada como la de la Figura sugiere que el emisor y el receptor deben conocer varias piezas de información, parámetros de seguridad, antes de poderse enviar datos seguros. En particular, necesita conocer qué algoritmos deben usar para autenticación y cifrado. Incluso si estos algoritmos estuvieran predefinidos
  10. 10. Estructura común de los protocolos de seguridad 5 para todo el mundo, que no lo están como veremos, el emisor y receptor necesita al menos dos claves: una para el Mac y otra para el cifrado descifrado. En otras palabras, la complejidad de estos protocolos no está en la forma de calcular el Mac o en la forma de cifrar; está en el hecho de que antes del poder calcular el Mac y realizar cifrado, es necesario crear un conjunto de parámetros de seguridad entre el emisor y el receptor. A primera vista, parece como sí usar uno de estos protocolos debiera involucrar un número infinito de pasos. Para limitar estos pasos se puede usar cifrado con clave pública sí cada persona tiene un par de claves: privada y pública. El número de pasos se puede reducir en uno o dos. En la versión en un paso, se puede usar claves de sesión para crear el Mac y cifrar juntos datos y Mac. Las claves de sesión y la lista de algoritmos se pueden enviar con el paquete pero cifrados con clave pública. En la versión con dos pasos, se establecen primer los parámetros usando cifrado con clave pública y luego se usan los parámetros de seguridad para enviar los datos. Esta es la aproximación usada en IPSec y SSL/TLS. También veremos en este capítulo un protocolo frecuente, la red privada virtual (VPN), que usa IPSec. Por Ultimo, al final de capítulo, veremos los cortafuegos, un mecanismo para evítar el ataque sobre la red de la organización. 3. Criptografía con Clave Asimétrica La criptografía con clave simétrica comenzó hace miles de años cuando la gente necesitaba intercambiar secretos. Todavía se usa cifrado con clave simétrica en la seguridad de nuestras redes. Sin embargo, los cifradores actuales son mucho más complejos.
  11. 11. 3.1. Cifradores Tradicionales Son orientados a carácter. Aunque actualmente están obsoletos, los cifradores actuales han evolucionado a partir de ellos. Los cifradores tradicionales de clave simétrica se pueden agrupar en dos grandes categorías: cifradores por sustitución y cifradores por transposición. 3.1.1. Cifradores por Sustitución Un cifrador por sustitución cambia un símbolo por otro. Sí los símbolos del texto en claro son caracteres alfabéticos, se cambia un carácter con otro. 3.1.1.1. Cifrador Monoalfabético Un cifrador por sustitución cambia un símbolo por otro. En un cifrador monoalfabético, un carácter (o un símbolo) en el texto en claro siempre se cambia por mismo carácter (o símbolo) en el texto cifrado, independientemente de su posición en el texto. Por ejemplo sí el algoritmo dice que el carácter A del texto en claro se cambia por el carácter D, todos los caracteres A se cambiarán por caracteres D. Clasificación de los Cifradores Tradicionales 6
  12. 12. 3.1.1.2. Cifrador Polialfabético Cada carácter puede tener un sustituto distinto. La redacción entre un carácter en el texto en claro y un carácter en el texto cifrado es una relación uno a muchos. Por ejemplo, el carácter A se podría cambiar por el carácter D al principio del texto, pero se podría cambiar por la N en la mitad. Para conseguir este objetivo, es necesario dividir el texto en grupos de caracteres y usar un conjunto de claves. Por ejemplo, se puede dividir el texto "esto es sencillo" en grupos de 3 caracteres y luego aplicar el cifrado usando un conjunto de 3 claves. Luego se puede repetir el procedimiento para los siguientes 3 caracteres. 3.1.2. Cifrador por Desplazamiento El cifrado monoalfabético más sencillo. Con este cifrador, el algoritmo de cifrado es "desplazar clave caracteres hacia abajo", donde clave es igual a algún número. El algoritmo de descifrado es "desplazar clave caracteres hacia arriba". Por ejemplo, si la clave es 5, el algoritmo de cifrado es "desplazar cinco caracteres hacia abajo" (hacia el final de: alfabeto). El algoritmo de descifrado es "desplazar cinco caracteres hacia arriba" (hacia el comienzo del alfabeto); por supuesto, si se alcanza el final o el principio del alfabeto, se empieza nuevo ciclo. Use el cifrador por desplazamiento con clave = 15 para cifrar el mensaje "HELLO". Solución: Se cifra un carácter cada vez. Cada carácter es desplazado 15 caracteres hacia abajo. La letra H se cifra como W. La letra E se cifra como T. La L se cifra como A. La 0 se cifra como D. El resultado final del cifrado es "WTAAD"
  13. 13. Cifrador de Desplazamiento para la Palabra “Hello” 7 3.1.3. Cifradores por Transposición No hay sustitución de caracteres; en lugar de eso se cambian sus posiciones. Se reordena los símbolos de un bloque de símbolos. En un cifrador por transposición, la clave es una función de proyección entre la oposición de los símbolos en el texto en claro y el texto cifrado. Por ejemplo: Texto en claro: p e p o Texto cifrado: e o p p e -> 0 o -> 1 p -> 2 p -> 3 Clave: 0123 En descifrado, se mueve el carácter de la posición dos a la posición una, el carácter de la posición cuatro a la posición dos, etc. En el descifrado, se hace lo contrario. Observe que, para que sea más efectivo, la clave debería ser larga, lo que significa cifrar y descifrar grandes bloques de datos.
  14. 14. 3.2. Cifradores Modernos Simples Deben ser orientados a bit. Esto es así porque la información a cifrar no es solo texto; también puede tener números, gráficos, audio y datos de vídeo. Es conveniente convertir estos tipos de datos en un flujo de bits, cifrar el flujo y luego enviar el flujo cifrado. Además, cuando el texto se trata a nivel de bit, cada carácter se sustituye por 8 (o 16) bits, lo que significa que el número de símbolos es 8 (o 16). Trabajar con bits proporciona más seguridad que trabajar con caracteres. Un cifrador simétrico moderno es una combinación de cifradores simples. 3.2.1. Cifrador XOR Una operación XOR necesita dos entradas, el texto en claro y la clave. En otras palabras, una de las entradas es el bloque a cifrar y la otra entrada es la clave; el resultado es el bloque cifrado. Observe que en un cifrador XOR el tamaño de la clave, el texto en claro, y el del texto cifrado son siempre el mismo. Cifrador de Transposición 8 Cifrador de XOR 9
  15. 15. El cifrado XOR es, como su nombre indica, un algoritmo de cifrado simple, basado en los siguientes conceptos: A 0 = A, A A = 0, (B A) A = B 0 = B, Dónde es una operación XOR (OR exclusivo). Una cadena de texto puede ser cifrada aplicando el operador de bit XOR sobre cada uno de los caracteres utilizando una clave. Para descifrar la salida, solo hay que volver a aplicar el operador XOR con la misma clave. Por ejemplo, la cadena (01010111 01101001 01101011 01101001 en 8- bit ASCII) puede ser cifrada con la clave 11110011 de la siguiente manera: Cifrado: Descifrar: 3.2.2. Cifrador por Rotación Los bits se rotan hacia la izquierda. El cifrador por rotación puede tener clave o no. En la rotación con clave, el valor de la clave es el número de rotaciones; en la rotación sin clave, el número de rotaciones es fijo. El cifrador por rotación tiene una propiedad interesante. Si la longitud del flujo original es N, después de N rotaciones se obtiene el flujo de entrada original. Esto significa que es inútil aplicar más de N-1 rotación En otras palabras, el número de rotaciones debe estar entre 1 y N-1. El algoritmo de descifrado para el cifrador por rotación usa la misma clave y la dirección opuesta. Y se usa rotación a la derecha para el descifrado.
  16. 16. La clave en un cifrado de rotación está compuesto por el tamaño del bloque y el ángulo de rotación. Se puede girar a la izquierda o hacia la derecha por el 90 °, 180 ° o 270 °. Si el texto "KURZERTEXT" debe ser codificada y tenemos un tamaño de bloque de 5, entonces el texto se asigna a bloques como sigue: 90° RKTUERXZTE 180 ° TXETREZRUK 270 ° ETZXREUTKR 3.2.3. Cifrador por Sustitución: S-box Una S-box (sustitución box) paraleliza los cifradores de sustitución tradicionales para caracteres. La de una S-box es un flujo de bits con longitud N; la salida es otro flujo de bits con longitud M, donde no son necesariamente iguales. La S-box normalmente no tiene clave y se usa como una etapa intermedia en cifrado o descifrado. La función que hace corresponder la entrada con la salida se puede definir matemáticamente o con tabla. Dada una entrada de 6 bits, la salida de 4 bits se encuentra seleccionando la fila de los dos bits externos y la columna de los 4 internos. Por ejemplo, una entrada "011011" tiene como bits externos "01" y "1101" como bits internos. La correspondiente salida sería "1001". Cifrador por Sustitución S-box 10
  17. 17. Entrada de 6 bits 11 3.2.4. Cifrador por Trasposición: P-box Una P-box (permutation box) para bits paraleliza el cifrador por transposición tradicional de caracteres. Realiza la transposición a nivel de bit. Se puede implementar en software o hardware, pero el hardware es más rápido. P-boxes, como las S-boxes, normalmente no tienen clave. Se pueden presentar tres tipos de permutaciones en las P-boxes: permutación directa, permutación por expansión y permutación por compresión. Un cifrador por permutación directa tiene el mismo número de entradas que salidas. En uno de expansión, el número de puertas de salida es mayor que el número de puertas de entrada. En uno por compresión, el número de puertas de salida es menor que el número de puertas de entrada.
  18. 18. 3.3. Cifradores Modernos Iterativos Los cifradores actuales se denominan cifradores iterativos, porque tienen múltiples iteraciones, donde cada iteración es un cifrador complejo compuesto por varios cifradores simples. La clave usada en cada iteración es un subconjunto o variación de la clave general denominada clave de iteración. Si el cifrador tiene N iteraciones, un generador de claves produce N claves, Kl , K2, ..., KN. Estos cifradores se denominan cifradores de bloque porque dividen el texto en claro en bloques y usan la misma clave para cifrar y descifrar los bloques. 3.3.1. Data Encription Standard (DES) Un cifrador de bloque complejo es el Data Encription Standard (DES). El algoritmo cifra un bloque del texto en claro de 64 bits usando una clave de 64 bits. DES tiene dos bloques de transposición (P-boxes) y 16 cifradores de iteración complejos (repetidos). Aunque los 16 cifradores de iteración complejos son conceptualmente el mismo, cada uno usa una clave distinta derivada de la clave original. Cifradores por Permutación 12
  19. 19. Las permutaciones inicial y final son permutaciones directas sin clave y son inversas entre sí. La permutación toma un valor de 64 bits de entrada y los cambia de acuerdo a los valores definidos. 3.3.1.1. Función DES El corazón de DES es la función DES. Esta función aplica una clave de 48 bits a los 32 bits más a la derecha Ri para producir una salida de 32 bits. Esta función está compuesta de cuatro operaciones: un XOR, una permutación por expansión, un grupo de S-boxes y una permutación directa. Función DES 14 DES 13
  20. 20. 3.3.1.2. Triple DES Los críticos de DES se quejan de que la clave es demasiado corta. Para alargar la clave, se implementó Triple DES, o 3DES. Este sistema usa tres bloques DES seguidos con una clave para cada bloque. El bloque descifrado usa una combinación de DES cifrado-descifrado- cifrado, mientras que el bloque de descifrado usa una combinación descifrado-cifrado-descifrado. Hay dos versiones distintas en uso: con dos claves y con tres claves. El 3DES con dos claves se diseñó para hacer el tamaño de clave 112 bits y proteger a DES de ataques como el de intrusos. En esta versión la primera clave y la tercera son la misma (K1=K3). Tiene la ventaja de que un texto cifrado con un bloque DES sencillo puede ser descifrado con el nuevo método. Sólo hay que poner todas las claves iguales a K1. Muchos algoritmos usan un cifrador 3DES con tres claves, lo que incrementa el tamaño de la clave hasta 168 bits. Triple DES 15 3.3.2. Advanced Encription Standard (AES) Fue diseñado porque la clave, de DES era demasiado pequeña. Aunque 3DES aumentaba el tamaño de la clave, el proceso era demasiado lento. El
  21. 21. National Institute of Standards and Technology (NIST) eligió el algoritmo Rinjdael, denominado así por sus dos inventores belgas, Vincent Rijmen y Joan Daemen, como la base de AES. AES es un cifrador iterativo muy complejo diseñado con tres tamaños de clave: 128, 192 y 256 bits. La configuración es distinta según el tamaño del bloque de datos de entrada, el número de vueltas y el tamaño de la clave. Configuración de AES 16 La diferencia está en la generación de claves. Hay una operación inicial XOR seguida por 10 cifradores iterativos. La última vuelta es ligeramente distinta de las anteriores; se pierde una operación. Aunque los 10 bloques de iteración son casi idénticos, cada uno usa una clave distinta derivada de la clave original. AES 17
  22. 22. Estructura de cada iteración Cada iteración de AES, excepto la última, es un cifrador complejo con cuatro operaciones reversibles. La última iteración solo tiene 3 operaciones. Estructura de Cada Iteración 18 AES 19
  23. 23. 3.3.3. Otros Cifradores Durante las últimas dos décadas se han diseñado y usado unos pocos cifradores de bloque simétricos. La mayoría de ellos tienen características similares a DES y AES. La diferencia está normalmente en el tamaño de bloque o clave, el número de iteraciones y las funciones usadas. Los principios son los mismos. Algunos de estos cifradores son: IDEA, Blowfish, CAST-128 y RC5. 4. Criptografía con Clave Asimétrica En la sección anterior hemos visto la criptografía con clave simétrica. En esta secci6n trataremos la criptografía con clave asimétrica (clave pública). Como mencionamos antes, una clave asimétrica (o clave pública) cifra usando dos claves: una privada y una pública. Veremos dos algoritmos: RSA y Diffie-Hellman. 4.1. RSA El algoritmo más frecuente de clave pública es RSA, denominado así por sus inventores Rivest, Shamir y Aldeman (RSA). Usa dos números, e y d, como claves pública y privada, como se muestra en la Figura. En RSA, e y n son pithlicos; d y φ se mantienen secretos. Las dos claves, e y d, tienen una relación especial entre si, pero la discusión de esta relación esta fuera del ámbito de este libro. Solo se muestra como calcular las claves, pero sin demostración. Selección de claves El receptor usa los pasos siguientes para seleccionar las claves pública y privada:
  24. 24. 1. Elige dos números primos muy grandes, p y q. Recuerde que un número primo es uno que solo puede ser dividido por 1 y por si mismo. 2. multiplica los dos números primos anteriores para hallar n, el módulo para cifrado y descifrado. En otras palabras, n =p x q. 3. Calcula otro número = (p — 1) x (q — 1). 4. Elije un número aleatorio e y calcula d, de forma que dx e= I mod . 5. Anuncia e y n al público; mantiene y d secretos. Cifrado Cualquiera que quiera enviar un mensaje al receptor puede usar n y e. Por ejemplo, si un emisor necesita enviar un mensaje, puede cambiar su mensaje, habitualmente pequeño, a un entero. Este es el texto en Luego calcula el texto cifrado usando e y n. C = P (mod n) El emisor envía C, el texto cifrado, al receptor. Descifrado El receptor mantiene y d privados. Cuando recibe el texto cifrado, usa su clave privada d para descifrar mensaje. P = Cd (mod n) Restricción Para que RSA funcione, el valor de P debe ser menor que el valor de n. Si P es un número muy grande, texto en claro debe ser dividido en bloques para hacer que P sea menor que n. Ejemplo El receptor elije 7 y 11 como p y q y calcula n = 7 • 11 = 77. El valor de = (7-1) (11-1) o 60. Ahora elije dos claves. e y d. Si elije que e sea 13, entonces d es 37. Imagine ahora que alguien envía el texto en claro 5 al receptor. Usa la clave pública 13 para cifrar 5.
  25. 25. Texto en claro: 5 C = 5^13 mod 77 = 26 Texto cifrado: 26 El receptor recibe el texto cifrado 26 y usa la clave privada 37 para descifrar el texto cifrado: Texto cifrado: 26 P = 26^37 mod 77= 5 Texto en claro: 5 El texto en claro 5 enviado es recibido como texto en claro por el receptor. Aplicaciones Aunque RSA se puede usar para cifrar y descifrar mensajes, es muy lento si el mensaje es largo. Por tanto, RSA es Mil para mensajes cortos, tal como pequeños resúmenes de mensajes o una clave simétrica a ser usada en un sistema criptográfico de clave simétrica. En particular, veremos que RSA se usa en firmas digitales y otros criptosistema que a menudo necesitan cifrar un mensaje pequeño sin tener acceso a una clave simetrice. Como veremos más tarde, RSA también se usa para autenticación. 4.2. Diffie-Hellman RSA es un sistema criptográfico de clave pública usado para cifrar y descifrar claves simétricas. Por otro lado, Diffie-Hellman se diseñó originalmente para intercambiar claves. En el criptosistema de Diffie-Hellman, dos partes crean una clave de sesión simétrica para intercambiar datos sin tener que recordar o almacenar la clave para uso futuro. No tienen que reunirse para ponerse de acuerdo sobre la clave; se puede hacer por Internet. Veamos cómo funciona el protocolo cuando las dos panes necesitan una clave simétrica para comunicarse. Antes de establecer una clave simétrica, ambas panes deben elegir dos números p y g. El primer número, p, es un número primo grande del orden de los 300 dígitos decimales (1024 bits). El segundo número es un número aleatorio. Estos dos números no deben ser confidenciales. Se pueden enviar a través de Internet. Procedimiento La Figura muestra el procedimiento.
  26. 26. Como se puede ver, tanto el receptor como el emisor alcanzan el mismo valor (K) sin que el receptor conozca x y sin que el emisor conozca el valor de y. La clave simétrica (compartida) en el protocolo de Diffie-Hellman es K = g^xy mod p. Los pasos que sigue son los siguientes: Paso 1: El emisor elije un número aleatorio grande x y calcula R1 = g^x mod p. Paso 2: El receptor elije otro número aleatorio grande y calcula R2 = g^y mod p. Paso 3: El emisor envía R1 al receptor. Observe que el emisor no envía el valor de x; solo envía R1. Paso 4: El receptor envía R2 al emisor. Observe que el receptor no envía el valor de y; solo envía R2. Paso 5: El emisor calcula K = (R2)^x mod p. Paso 6: El receptor calcula K= (R1)^y mod p. La clave simétrica para la sesión es K. Ejemplo Vamos a hacer un ejemplo trivial para que el procedimiento quede claro. Nuestro ejemplo usa números pequeños, pero observe que en una situación real, los números son muy grandes. Asuma que g = 7 y p = 23. Los pasos son los siguientes: 1. El emisor elije x = 3 y calcula R1 = 7^3 mod 23 = 21. 2. El receptor elije y 6 y calcula R2= 7^6 mod 23 = 4.
  27. 27. 3. El emisor envía 21 al receptor. 4. El receptor envía 4 al emisor. 5. El emisor calcula la clave simétrica K= (4)^3 mod 23 = 18. 6. El receptor calcula la clave simétrica K= (21)^6 mod 23 = 18. El valor de K es el mismo para el emisor y el receptor; g^xy mod p= 7^18 mod 23 = 18. Ataque por intrusos (Man in the middle attack, MITM) Diffie-Hellman es un algoritmo de creaci6n de clave simétrico muy sofisticado. Si x e y son números grandes, es extremadamente difícil para un intruso saber la clave, conociendo solo p y g. Un intruso necesita determinar x e y si se intercepta R1 y R2. Pero hallar x a partir de R1 e y a partir de R2 es una tarea difícil incluso una computadora sofisticado necesitaría años de intentos sobre números distintos. Además, el emisor el receptor cambiarán la clave la próxima vez que se comuniquen. Sin embargo, el protocolo tiene una debilidad. El intenso no quiere hallar el valor de x e y para atacar el protocolo. Puede engañar al emisor y al receptor creando dos claves: una entre el y el emisor y otra entre en y el receptor. Esta situación se denomina ataque por intruso (man in the middle) porque el intruso se sitúa en me.: e intercepta R1, enviado del emisor al receptor, y R2, enviado del receptor al emisor. También se conoce el ataque de la brigada de la cubeta porque se parece a una línea de voluntarios pasándose una cubeta de agua de una persona a otra. Este ataque se puede evitar si el emisor y el receptor realizan primero una autenticación entre si. 5. Conclusiones El cifrado y descifrado proporciona el sector o confidencialidad, pero no integridad. Gracias a los principales algoritmos de cifrado se han podido generar nuevas técnicas de seguridad que nos ayudan a mejorar la integridad y la seguridad de la información enviada y recibida.
  28. 28. Las claves públicas, al igual que las secretas, deben ser distribuidas para ser útiles. El cifrado y descifrado ayuda a los usuarios de internet tener seguridad de que sus datos puedan mantenerse seguros y que nadie podrá robarles la información tan sencillo, ya que el internet no es seguro en ningún sentido. La razón por la cual la criptografía simétrica sea todavía el método más dominante para la confidencionalidad del mensaje es su eficiencia. Para un mensaje largo, el cifrado con clave asimétrica es mucho más eficiente que el cifrado con clave simétrica. Ventajas de la criptografía asimétrica: o La mayor ventaja de la criptografía asimétrica es que se puede cifrar con una clave y descifrar con la otra, pero este sistema tiene bastantes desventajas: o Para una misma longitud de clave y mensaje se necesita mayor tiempo de proceso. o Las claves deben ser de mayor tamaño que las simétricas. o El mensaje cifrado ocupa más espacio que el original. 6. Resumen  La Criptografía es la ciencia y el arte de transformar mensajes para hacerlos seguros e inmunes a ataque.  El texto claro es el mensaje original antes de la transformación; el texto cifrado es el mensaje después de la transformación.  Un algoritmo de cifrado transforma el texto en claro en texto cifrado; un algoritmo de descifrado transforma texto cifrado en texto en claro.  Un cifrador es una combinación de un algoritmo de cifrado y de descifrado.  La clave es un número de un conjunto de números sobre la que opera el cifrador.
  29. 29.  Se puede dividir los cifradores en dos amplias categorías: clave simétrica y clave asimétrica. En los primeros, el emisor y el receptor usan la misma clave. La clave se denomina clave secreta. En los segundos, se usa un par de claves. El emisor usa la clave pública; el receptor usa la clave privada.  Un cifrador por sustitución reemplaza un carácter por otro carácter. Se pueden clasificar en dos grandes categorías: monoalfabéticos y polialfabéticos.  Un cifrador moderno es habitualmente un cifrador iterativo; cada iteración es un cifrador complejo formado por una combinación de cifradores simples.  DES es un método de clave simétrica adoptado por el gobierno de EE.UU. Tiene un bloque inicial y final de permutación y 16 iteraciones.  AES es un cifrador basado en el algoritmo Rinjdael que usa un bloque de datos de 128 bits. AES tiene tres configuraciones distintas: 10 iteraciones con clave de 120 bits, 12 iteraciones con clave de 192 bits y 14 iteraciones con clave de 256 bits.  Un método criptográfico de clave pública usado habitualmente es el algoritmo RSA, inventado por Rivest, Shamir y Adleman.  El método de Diffie-Hellman proporciona una clave de sesión para una vez para dos partes.  La criptografía puede proporcionar cinco servicios: cuatro para mensajes (confidencialidad, integridad, autenticación y no repudio) y uno para entidades (autenticación). 7. Anexo 7.1. Servicios de Seguridad 7.1.1. Confidencialidad del mensaje El mensaje debe ser cifrado en el sitio del emisor y descifrado en el sitio del receptor. Es decir, el mensaje debe ser ininteligible para personas no autorizadas. Una buena técnica de privacidad garantiza en gran parte que un intruso potencial (un fisgón) no puede comprender los contenidos del mensaje. Esto se puede conseguir usando criptografía simétrica o asimétrica.
  30. 30. 7.1.2. Integridad del mensaje El cifrado y descifrado proporciona el sector o confidencialidad, pero no integridad. Sin embrago en ocasiones puede ser no necesario el secreto, pero en lugar es necesario tener integridad. El mensaje necesita ser seguro ante falsificaciones, especialmente por terceras personas. 7.1.3. Autenticación del mensaje Una función hash garantiza la integridad del mensaje. Garantiza que el mensaje no ha sido cambiado. Sin embargo una función hash no identifica al emisor del mensaje. Cuando una persona envía un mensaje a otra, esta última necesita saber de quién bien el mensaje. Par proporcionar autenticación del mensaje, el emisor debe proporcionar una prueba de que es él mismo y no un impostor. Esta función se denomina código de detección de modificación (Mensaje detection code MDC). Para proporcionar autenticación del mensaje es necesario cambiar el código de detección de modificación por un código de autenticación del mensaje (mensaje authentication code MAC). Una función hash crea un resumen a partir de un mensaje, pero debe cumplir tres criterios: un sentido, resistencia a colisión débil y resistencia a colisión fuerte. 7.1.4. No repudio del mensaje: Firma Digital Aunque un MAC puede proporcionar integridad y autenticación del mensaje, tiene un inconveniente. Necesita una clave simétrica que haya sido acordada entre el emisor y el receptor. Por el contrario, una firma digital puede usar un par de claves asimétricas (una pública y una privada). Cuando un emisor A envía un mensaje a un receptor B, éste debe estar seguro de que el mensaje vienen del emisor A y no de cualquier otro. El receptor puede pedir a A que firme el mensaje electrónicamente. En otras palabras, una firma digital puede demostrar la autenticidad de A como emisor del mensaje. La firma digital proporciona integridad del mensaje, autenticación y no repudio. La firma digital no puede proporcionar confidencialidad para el mensaje. Si es necesaria la confidencialidad, se debe aplicar un sistema criptográfico en el esquema. Firma digital necesita un sistema de clave asimétrica.
  31. 31. 7.1.5. Autentificación de entidad o identificación La autenticación de entidad es una técnica diseñada para permitir a una parte probar la identidad de otra parte. Una entidad puede ser una persona, un proceso, un cliente o un servidor. La entidad cuya identidad debe ser demostrada se denomina el solicitante (claimant); la parte que trata de demostrar la identidad del solicitante se denomina verificador (verifier). Cuando B trata de demostrar la identidad de A, A es el solicitante y B el verificador. En la autenticación de entidad, un solicitante demuestra su identidad al verificador usando uno de estos tipos de testimonio: algo conocido, algo poseído o algo inherente. 7.2. Gestión de claves 7.2.1. Distribución de claves simétricas Hemos visto que el cifrado con clave simétrica es más eficiente que el cifrado con clave asimétrica cuando es necesario trabajar con grandes mensajes. El número de claves no es el único problema; la distribución es otro. Si A y B quieren comunicarse, necesitan intercambiar de alguna forma una clave secreta, si A quiere con un millón de personas ¿cómo puede intercambiar un millón de claves con ellos? Usar internet no es definitivamente un método seguro. Es obvio que se necesita una forma eficiente de mantener y distribuir claves secretas. 7.2.2. Distribución de clave pública En la criptografía con clave simétrica, la gente no necesita conocer una clave compartida. Si A quiere enviar un mensaje a B, sólo necesita conocer la clave pública de B, que está abierta al público y disponible para todo el mundo. Si B necesita enviar un mensaje a A, sólo necesita conocer la clave pública de A, que también es conocida por todo el mundo. En la criptografía con clave pública rodo el mundo guarda una clave privada y anuncia una clave pública. Las claves públicas, al igual que las secretas, deben ser distribuidas para ser útiles.
  32. 32. 8. Referencias Bibliográficas Transmisión de datos y redes de comunicación 4ta Edición. Capítulo 26 o Behrouz A. Forouzan o Mc Graw Hill http://es.wikipedia.org/wiki/Advanced_Encryption_Standard

×