criptografia (1)

Upload: grizzel

Post on 10-Jan-2016

11 views

Category:

Documents


0 download

DESCRIPTION

unidad 2

TRANSCRIPT

UNIVERSIDAD TECNOLOGICA NACIONAL

Facultad Regional La PlataCriptografa

Ctedra: Administracin de Recursos

Ao: 2012Grupo 25: Adgi Romano Alejandro Marcelo Fernndez Romina Mora NancyCRIPTOGRAFA

DEFINICIN

La criptografa (del griego krypto, oculto, y graphos, escribir, literalmente escritura oculta) es el arte o ciencia de cifrar y descifrar informacin mediante tcnicas especiales y se emplea frecuentemente para permitir un intercambio de mensajes que slo puedan ser ledos por personas a las que van dirigidos y que poseen los medios para descifrarlos.

Con ms precisin, cuando se habla de esta rea de conocimiento como ciencia, se debera hablar de criptologa, que a su vez engloba tanto las tcnicas de cifrado, es decir, la criptografa propiamente dicha, como sus tcnicas complementarias, entre las cuales se incluye el criptoanlisis, que estudia mtodos empleados para romper textos cifrados con objeto de recuperar la informacin original en ausencia de las claves.

OBJETIVOS

Los objetivos bsicos de la criptografa son los siguientes:

Confidencialidad: El mensaje original no es accedido por personas no autorizadas.

Consistencia: La informacin no es modificada por personas no autorizadas.

Autenticacin: El remitente de un mensaje es realmente quien dice ser.

No repudio: No se puede negar la recepcin o el envo de informacin.

HISTORIAYa las primeras civilizaciones desarrollaron tcnicas para enviar mensajes durante las campaas militares, de forma que si el mensajero era interceptado la informacin que portaba no corriera el peligro de caer en manos del enemigo. Posiblemente, el primer criptosistema que se conoce fuera documentado por el historiador griego Polibio: un sistema de sustitucin basado en la posicin de las letras en una tabla.

En el ao 500 a.C. los griegos utilizaron un cilindro llamado "scytale" alrededor del cual enrollaban una tira de cuero. Al escribir un mensaje sobre el cuero y desenrollarlo se vea una lista de letras sin sentido. El mensaje correcto solo poda leerse al enrollar el cuero nuevamente en un cilindro de igual dimetro.

Durante el Imperio Romano, Julio Cesar emple un sistema de cifrado que consista en sustituir la letra a encriptar por otra letra distanciada a tres posiciones ms adelante. Durante su reinado, los mensajes de Julio Cesar nunca fueron desencriptados.

En el S. XII Roger Bacon y en el S. XV Len Batista Alberti inventaron y publicaron algoritmos de encriptacin basados en modificaciones del mtodo de Julio Csar.

Uno de los criptgrafos ms importantes del siglo XVI fue el francs Blaise de Vigenre que escribi un importante tratado sobre "la escritura secreta" y que dise una cifra que ha llegado a nuestros das asociada a su nombre.

En el ao 1919 se invent Enigma, la primera mquina electromecnica utilizada para cifrar y descifrar mensajes, obra del holands Alexander Koch. Su fama se debe a haber sido adoptada por las fuerzas militares de Alemania desde 1930. Su facilidad de manejo y supuesta inviolabilidad fueron las principales razones para su amplio uso. Su sistema de cifrado fue finalmente descubierto, y la lectura de la informacin que contenan los mensajes supuestamente protegidos, es considerado, a veces, como la causa de haber podido concluir la Segunda Guerra Mundial, al menos, un ao antes de lo que hubiera acaecido sin su descifrado.

Tras la conclusin de la Segunda Guerra Mundial, la criptografa tiene un desarrollo terico importante, siendo Claude Shannon y sus investigaciones sobre teora de la informacin esenciales hitos en dicho desarrollo. Adems, los avances en computacin automtica suponen tanto una amenaza para los sistemas existentes como una oportunidad para el desarrollo de nuevos sistemas. A mediados de los aos 70, el Departamento de Normas y Estndares norteamericano publica el primer diseo lgico de un cifrador que estara llamado a ser el principal sistema criptogrfico de finales de siglo: el Estndar de Cifrado de Datos o DES. En esas mismas fechas ya se empezaba a gestar lo que sera la, hasta ahora, ltima revolucin de la criptografa terica y prctica: los sistemas asimtricos. Estos sistemas supusieron un salto cualitativo importante, ya que permitieron introducir la criptografa en otros campos que hoy da son esenciales, como el de la firma digital.

CONCEPTOS BSICOS

La informacin original que debe protegerse se denomina texto en claro o texto plano. El cifrado es el proceso de convertir el texto plano en un caos lingstico ilegible, denominado texto cifrado o criptograma. Por lo general, la aplicacin concreta del algoritmo de cifrado (tambin llamado cifra) se basa en la existencia de una clave, la cual es la informacin secreta que adapta el algoritmo de cifrado para cada uso distinto. Vale la pena comentar que la palabra cifra es una antigua palabra arbiga utilizada para designar el nmero cero; en la Antigedad, cuando Europa empezaba a cambiar del sistema de numeracin romano al arbigo, se desconoca el cero, por lo que este resultaba misterioso, de ah probablemente que cifrado signifique misterioso.

Las dos tcnicas ms sencillas de cifrado, en la criptografa clsica, son la sustitucin (que supone el cambio de significado de los elementos bsicos del mensaje -las letras, los dgitos o los smbolos-) y la transposicin (que supone una reordenacin de los mismos); la gran mayora de las cifras clsicas son combinaciones de estas dos operaciones bsicas.

El descifrado es el proceso inverso que recupera el texto plano a partir del criptograma y la clave. El protocolo criptogrfico especifica los detalles de cmo se utilizan los algoritmos y las claves (y otras operaciones primitivas) para conseguir el efecto deseado. El conjunto de protocolos, algoritmos de cifrado, procesos de gestin de claves y actuaciones de los usuarios, es lo que constituyen en conjunto un criptosistema, que es con lo que el usuario final trabaja e interacta.

Existen dos grandes grupos de cifras: los algoritmos que usan una nica clave tanto en el proceso de cifrado como en el de descifrado, y los que emplean una clave para cifrar mensajes y una clave distinta para descifrarlos. Los primeros se denominan cifras simtricas, de clave simtrica o de clave privada, y son la base de los algoritmos de cifrado clsico. Los segundos se denominan cifras asimtricas, de clave asimtrica o de clave pblica y forman el ncleo de las tcnicas de cifrado modernas.

En el lenguaje cotidiano, la palabra cdigo se usa de forma indistinta con cifra. Sin embargo, el trmino tiene un uso tcnico especializado: los cdigos son un mtodo de criptografa clsica que consiste en sustituir unidades textuales ms o menos largas o complejas, habitualmente palabras o frases, para ocultar el mensaje; por ejemplo, cielo azul podra significar atacar al amanecer. Por el contrario, las cifras clsicas normalmente sustituyen o reordenan los elementos bsicos del mensaje -letras, dgitos o smbolos-. Cuando se usa una tcnica de cdigos, la informacin secreta suele recopilarse en un libro de cdigos.

CIFRADO CLSICO

Cifrado por sustitucin

Es aquel cifrado que sustituye cada letra o grupo de letras por otra letra o grupo de letras distinta/s para cifrar el texto en claro.

Un claro ejemplo es el Cifrado Csar. Cada letra del texto en claro se sustituye por la letra que hay a k posiciones detrs de ella en el alfabeto.

Matemticamente hablando:

Definimos las siguientes operaciones:

Ordinal de una letra: Es la posicin que ocupa la letra en el alfabeto que usamos. Se denota como: ORD (Letra) [ORD (A) = 0]

Caracter de un nmero: Es la letra que ocupa la posicin del nmero que tenemos. Se denota como: CAR (x) [donde x tiene que ser mayor o igual a cero, y menor o igual al nmero de letras del alfabeto usado]

La frmula del cifrado y descifrado sera:

Cifrado: C(x) = x + k (mod T)

Descifrado: D(x) = x k (mod T)

(Siendo x el ORD (Letra a cifrar), k es el nmero de posiciones a desplazar y T es el total de letras en el alfabeto a usar)

Se puede observar que la clave de este cifrado es el nmero de posiciones a desplazar las letras (k).

Cifrado por transposicin o permutacin

Cada letra (o carcter) se intercambia por otra del mensaje, reordenando de algn modo las letras, pero no disfrazndolas.

Un ejemplo sera la esctala espartana, un mtodo de trasposicin basado en un cilindro que serva como clave en el que se enrollaba el mensaje para poder cifrar y descifrar.

SISTEMAS DE CIFRADO

Cifrado simtrico

Los algoritmos de Llave Privada (o cifrado simtrico) usan la misma llave para la encriptacin y desencriptacin (o una es fcilmente derivable de la otra). Este es el acercamiento ms sencillo a la encriptacin de datos, es matemticamente menos complicado que la criptografa de llave pblica y ha sido usado por varios siglos.

El principal problema de seguridad reside en el intercambio de claves entre el emisor y el receptor ya que ambos deben usar la misma clave. Por lo tanto se tiene que buscar tambin un canal de comunicacin que sea seguro para el intercambio de la clave. Es importante que dicha clave sea muy difcil de adivinar ya que hoy en da los ordenadores pueden adivinar claves muy rpidamente. Por ejemplo el algoritmo de cifrado DES usa una clave de 56 bits, lo que significa que hay 72 mil billones de claves posibles. Actualmente ya existen ordenadores especializados que son capaces de probar todas ellas en cuestin de horas. Hoy por hoy se estn utilizando ya claves de 128 bits que aumentan el "espectro" de claves posibles (2 elevado a 128) de forma que aunque se uniesen todos los ordenadores existentes en estos momentos no lo conseguiran en miles de millones de aos.

Los sistemas de cifrado simtrico se pueden dividir en: cifrados en bloque (un bloque de cifrado transforma bloques de texto plano de n-bits a bloques de texto cifrado de n-bits bajo la influencia de una llave k) y cifrados de flujo (se encripta un texto plano bit a bit, consiste en una mquina de estados que retorna para cada transicin de estado un bit de informacin).

Ventajas e inconvenientes

Los cifrados de clave simtrica tienen varios puntos dbiles y otros fuertes. Para empezar todos comparten un problema comn obvio: para comunicarnos de forma secreta con alguien, es necesario que los dos tengamos una serie de claves. Esto tiene dos problemas:

1. Hay que hacer llegar esas claves de una persona a otra de forma segura, y esto es bastante difcil.

2. Si un grupo de N personas nos queremos comunicar entre nosotros, necesitamos claves para cada pareja. Por otro lado, estos sistemas de cifrado son sencillos de programar y se ejecutan muy rpido en cualquier maquina actual. Cifrar un texto grande (digamos un libro de unos cientos de pginas), es una tarea de segundos con cualquier buen algoritmo de cifrado de clave simtrica actual.

Ejemplo: DES Data Encryption Standard

Es el algoritmo prototipo del cifrado por bloques. El tamao del bloque es de 64 bits. Utiliza tambin una clave criptogrfica para modificar la transformacin, de modo que el descifrado slo puede ser realizado por aquellos que conozcan la clave concreta utilizada en el cifrado. La clave mide 64 bits, aunque en realidad, slo 56 de ellos son empleados por el algoritmo. Los ocho bits restantes se utilizan nicamente para comprobar la paridad, y despus son descartados. Por tanto, la longitud de clave efectiva en DES es de 56 bits, y as es como se suele especificar.

La estructura bsica del algoritmo es la siguiente: hay 16 fases idnticas de proceso, denominadas rondas. Tambin hay una permutacin inicial y final denominadas PI y PF, que son funciones inversas entre s (PI "deshace" la accin de PF, y viceversa). PI y PF no son criptogrficamente significativas, pero se incluyeron presuntamente para facilitar la carga y descarga de bloques sobre el hardware de mediados de los 70. Antes de las rondas, el bloque es dividido en dos mitades de 32 bits y procesadas alternativamente. Este entrecruzamiento se conoce como esquema Feistel.

La estructura de Feistel asegura que el cifrado y el descifrado sean procesos muy similares la nica diferencia es que las subclaves se aplican en orden inverso cuando desciframos. El resto del algoritmo es idntico. Esto simplifica enormemente la implementacin, en especial sobre hardware, al no haber necesidad de algoritmos distintos para el cifrado y el descifrado.

El smbolo rojo "" representa la operacin OR exclusivo (XOR). La funcin-F mezcla la mitad del bloque con parte de la clave (subclave). La salida de la funcin-F se combina entonces con la otra mitad del bloque, y los bloques son intercambiados antes de la siguiente ronda. Tras la ltima ronda, las mitades no se intercambian; sta es una caracterstica de la estructura de Feistel que hace que el cifrado y el descifrado sean procesos parecidos.

La siguiente imagen representa la generacin de claves para el cifrado el algoritmo que se encarga de proporcionar las subclaves. Primero, se seleccionan 56 bits de la clave de los 64 iniciales mediante la Eleccin Permutada 1 (PC-1) los ocho bits restantes pueden descartarse o utilizarse como bits de comprobacin de paridad. Los 56 bits se dividen entonces en dos mitades de 28 bits; a continuacin cada mitad se trata independientemente. En rondas sucesivas, ambas mitades se desplazan hacia la izquierda uno o dos bits (dependiendo de cada ronda), y entonces se seleccionan 48 bits de subclave mediante la Eleccin Permutada 2 (PC-2) 24 bits de la mitad izquierda y 24 de la derecha. Los desplazamientos (indicados por "