La Criptologa (del griego krypto: inteligible, esconder, oculto y logos: discurso, razonamiento, estudio) es, tradicionalmente, la disciplina cientfica que se dedica al estudio de la escritura secreta, es decir, estudia los mensajes que, procesados de cierta manera, se convierten en difciles o imposibles de leer por entidades no autorizadas. Criptografa (del griego krypto: inteligible, esconder, oculto y grafos: escritura). Se ocupa del estudio de los algoritmos, protocolos y sistemas que se utilizan para proteger la informacin y dotar de seguridad a las comunicaciones y a las entidades que se comunican. Criptoanlisis. Se ocupa de conseguir capturar el significado de mensajes construidos mediante Criptografa sin tener autorizacin para ello. Podramos decir que el criptoanlisis tiene un objetivo opuesto al de la criptografa.
Objetivos de la Criptografa: Confidencialidad. Es decir garantiza que la informacin est accesible nicamente a personal autorizado. Para conseguirlo utiliza cdigos y tcnicas de cifrado. Integridad. Es decir garantiza la no modificacin de la informacin. Autenticacin. Es decir proporciona mecanismos que permiten verificar la identidad del comunicador.
Objetivos del Criptoanlisis: Descriptar. Accin inversa de criptografa o desencriptar un mensaje y sus partes Anlisis FODA. FODA, es un acrstico de : Fortalezas (factores crticos positivos con los que se cuenta), Oportunidades, (aspectos positivos que podemos aprovechar utilizando nuestras fortalezas), Debilidades, (factores crticos negativos que se deben eliminar o reducir) y Amenazas, (aspectos negativos externos que podran obstaculizar el logro de nuestros objetivos). Este se aplica a criptosistemas para comprobar y asegurar la seguridad y vulnerabilidades Proponer Criptosistemas seguros.
Clasificacin de la Criptografa. La criptografa se puede clasificar histricamente en dos: La criptografa clsica y la criptografa moderna. La criptografa clsica es aquella que se utiliz desde antes de la poca actual hasta la mitad del siglo XX. Tambin puede entenderse como la criptografa no computarizada o 3
mejor dicho no digitalizada. Los mtodos utilizados eran variados, algunos muy simples y otros muy complicados de criptoanalizar para su poca. Se puede decir que la criptografa moderna se inici despus de tres hechos: el primero fue la publicacin de la Teora de la Informacin por Shannon; el segundo, la aparicin del estndar del sistema de cifrado DES (Data Encryption Standard) en 1974 y finalmente con la aparicin del estudio realizado por Whitfield Diffie y Martin Hellman sobre la aplicacin de funciones matemticas de un solo sentido a un modelo de cifrado, denominado cifrado de llave pblica en 1976. Tanto la criptografa clsica como la moderna se clasifican de acuerdo a las tcnicas o mtodos que se utilizan para cifrar los mensajes. Esta clasificacin la podemos ver en la siguiente figura:
Un poco de historia
La esctala
Ya en siglo V antes de J.C. los lacedemonios, un antiguo pueblo griego, usaban el mtodo de la esctala para cifrar sus mensajes. El sistema consista en una cinta que se enrollaba en un bastn y sobre el cual se escriba el mensaje en forma longitudinal como se muestra en la Figura
A S I C I F R A B
A N C O N L A E S
C I T A L A
Una vez escrito el mensaje, la cinta se desenrollaba y era entregada al mensajero; si 4
ste era interceptado por cualquier enemigo, lo nico que se consegua era un conjunto de caracteres o letras distribuidas al parecer de forma aleatoria en dicha cinta. Incluso si el enemigo intentaba enrollar la cinta en un bastn con dimetro diferente, el resultado obtenido era un conjunto de letras escritas una a continuacin de otra sin sentido alguno. Por ejemplo, en el caso de la figura 1.1, la cinta llevar el mensaje M = ASI CIFRABAN CON LA ESCITALA si bien en ella slo podr leerse el criptograma C = AACSNIICTCOAINLFLARAAEBS. Para enmascarar completamente la escritura, es obvio que la cinta en cuestin debe tener caracteres en todo su contorno. Como es de esperar, la clave del sistema resida precisamente en el dimetro de aquel bastn, de forma que solamente el receptor autorizado tena una copia exacta del mismo bastn en el que enrollaba el mensaje recibido y, por tanto, poda leer el texto en claro. En este sistema no existe modificacin alguna del mensaje; es decir, ste va en claro desde el transmisor hacia el receptor, por lo que como veremos ms adelante se tratar de un cifrador por transposicin.
De esta forma se lograba el objetivo de la confidencialidad, en tanto que la integridad estaba en entredicho y dependa de lo aguerrido y fiel que fuese nuestro mensajero. Si la cinta era robada y se cambiaban los caracteres, podra llegar al receptor un mensaje sin sentido y, lo que es peor, con un duplicado del bastn original poda enviarse un mensaje con sentido completamente distinto al encomendado al mensajero. Haga un viaje mental al pasado e imagnese lo que significara en aquellos tiempos que el destinatario recibiera el mensaje falso M F = RENDICIN TOTAL en vez del verdadero mensaje M V = ATACAMOS MAANA, ambos de 14 caracteres. Sin duda a ms de alguno este desliz le costara su preciada cabeza.
El cifrador de Polybios
A mediados del siglo II antes de J.C., encontramos el cifrador por sustitucin de caracteres ms antiguo que se conoce. Atribuido al historiador griego Polybios, el sistema de cifra consista en hacer corresponder a cada letra del alfabeto un par de letras que indicaban la fila y la columna en la cual aquella se encontraba, en un recuadro de 5 x 5 = 25 caracteres, transmitindose por tanto en este caso el mensaje como un criptograma. En la siguiente tabla se muestra el cifrador de Polybios adaptada al ingls, con un alfabeto de cifrado consistente en el conjunto de letras A, B, C, D y E aunque algunos autores representan el alfabeto de cifrado como los nmeros 1, 2, 3, 4 y 5.
A B C D E 1 2 3 4 5
A A B C D E 1 A B C D E B F G H IJ K 2 F G H IJ K C L M N O P 3 L M N O P D Q R S T U 4 Q R S T U E V W X Y Z 5 V W X Y Z
Tablas de cifrar de Polybios.
Acorde con este mtodo, la letra A se cifrar como AA, la H como BC, etc. Esto significa que aplicamos una sustitucin al alfabeto {A, B, C, .., X, Y, Z} de 26 letras convirtindolo en un alfabeto de cifrado {AA, AB, AC, ..., EC, ED, EE} de 25 caracteres, si bien slo existen 5 smbolos diferentes {A, B, C, D, E}. Este tipo de tabla o matriz de cifrado 5
ser muy parecida a la que en el siglo XIX se utilizar en el criptosistema conocido como cifrador de Playfair y que ser tratado ms adelante en el apartado de cifradores poligrmicos, salvo que en este ltimo la operacin de cifra no se realiza por monogramas como en el de Polybios sino por digramas, conjunto de dos caracteres del texto en claro.
Ejemplo 1.1: Usando la Tabla del cifrador de Polybios, cifre el mensaje: M = QUE BUENA IDEA LA DEL GRIEGO. Solucin: C = DADEAE ABDEAECCAA BDADAEAA CAAA ADAECA BBDBBDAEBBCD.
El cifrador del Csar
Unos cincuenta aos despus del cifrador de Polybios, en el siglo I antes de J.C., aparece un cifrador bsico conocido con el nombre genrico de cifrador del Csar en honor al emperador Julio Csar y en el que ya se aplica una transformacin al texto en claro de tipo monoalfabtica. Como se ver en un apartado posterior, el cifrador del Csar aplica un desplazamiento constante de tres caracteres al texto en claro, de forma que el alfabeto de cifrado es el mismo que el alfabeto del texto en claro pero desplazado 3 espacios hacia la derecha mdulo n, con n el nmero de letras del mismo. En la Figura se muestra el alfabeto y por tanto la transformacin que utiliza este cifrador por sustitucin de caracteres para el alfabeto castellano de 27 letras.
M i A B C D E F G H I J K L M N O P Q R S T U V W X Y Z C i D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Figura Alfabeto de cifrado del Csar para lenguaje castellano.
Ejemplo 1.2: Con el cifrador del Csar segn el alfabeto mostrado en la Figura, cifre los siguiente mensajes: M 1 = VINI, VIDI, VINCI. (Frase clebre de Csar: llegu, vi, venc). M 2 = AL CSAR LO QUE ES DEL CSAR. Solucin: Aplicando a cada carcter M i su equivalente C i de la tabla de la Figura, se obtienen los siguientes criptogramas: C 1 = YLPL, YLGL, YLPFL. C 2 = D FHVDU R TXH HV GH FHVDU.
A partir del ejemplo anterior, es fcil apreciar ciertas debilidades en este cifrador como, por ejemplo, la repeticin de la cadena de caracteres YL en el criptograma primero y FHVDU en el segundo que entregan demasiadas pistas a un posible criptoanalista. Estos y otros puntos dbiles del cifrador del Csar que por ahora no saltan a la vista sern analizados y comentados ms adelante.
Cifrador de Vernam
En 1917 Gilbert S. Vernam, nativo de Brooklyn e ingeniero del MIT que trabaja en los laboratorios de la empresa AT&T, disea un dispositivo criptogrfico para comunicaciones telegrficas basado en los 32 cdigos Baudot de los teletipos desarrollados por su compaa. Los cdigos Baudot representan los caracteres del lenguaje con cinco elementos que pueden ser el espacio o la marca (el cero y el uno) diseado para transmisiones telegrficas. Este 6
cifrador, que tuvo una gran aplicacin durante la Primera Guerra Mundial, basa su seguridad en el secreto de un clave aleatoria que se supone tan larga como el mensaje y que luego de usarse debera destruirse. Un dato anecdtico: en dicha confrontacin algunos encargados del sistema de cifra (llamados criptocustodios en el lenguaje militar) hicieron caso omiso de esta recomendacin y los cdigos fueron rotos por los aliados.
Cada carcter M i se representa con 5 bits en cdigo Baudot (ver el anexo ya comentado) que se suma OR exclusivo (mdulo 2) con la correspondiente clave k i de una secuencia binaria aleatoria. De esta forma, el cifrador de Vernam genera un flujo de bits de texto cifrado de la forma:
C = E K (M) = C 1 C 2 C 3 ... C N 1.34
donde: C i = (M i + k i ) mod 2 para i = 1,2,...,N 1.35
C i = M i k i 1.36
Para la operacin de descifrado, utilizamos el mismo algoritmo por la propiedad involutiva de la operacin OR exclusivo. Esto es:
C i k i = (M i k i ) k i
Como k i k i = 0 para k i = 0 y k i = 1, se obtiene:
C i k i = M i 1.37
En la Figura 1.31 se muestra un cifrador de Vernam binario como el descrito.
Operacin de Clave Operacin de Cifrado Descifrado 0010 1101 0100
Texto en claro Criptograma Texto en claro 1100 1011 1001 1110 0110 1101 1100 1011 1001
Figura 1.31. Esquema de un cifrador de Vernam binario.
Ejemplo 1.39: Usando el cdigo de Baudot que se encuentra en la tabla del Anexo, cifre el mensaje M = BYTES con la clave K = VERNAM. Solucin: Haciendo la suma OR exclusivo tenemos: B V = 11001 11110 = 00111 = U Y E = 10101 00001 = 10100 = H T R = 10000 01010 = 11010 = G E N = 00001 01100 = 01101 = F S A = 00101 00011 = 00110 = I
7
Luego, C = UHGFI
Para descifrar como ya se ha dicho, sencillamente se aplica nuevamente la operacin del or exclusivo como se indica en el siguiente ejemplo.
Ejemplo 1.40: Se recibe el siguiente criptograma C = 00110 10100 11100 11010 00000 00010 01110 01011 00110 de un texto con cdigo Baudot que se ha cifrado con clave la K = Gloria Estefan. Descfrelo. Solucin: Haciendo la suma OR exclusivo entre C y K (C K) tenemos: K=G: 00110 11010 = 11100 = M K=A: 00010 00011 = 00001 = E K=L: 10100 10010 = 00110 = I K=_: 01110 00100 = 01010 = R K=O: 11100 11000 = 00100 = K=E: 01011 00001 = 01010 = R K=R: 11010 01010 = 10000 = T K=S: 00110 00101 = 00011 = A K=I: 00000 00110 = 00110 = I Luego M = MI TIERRA.
Como un divertimento ms, podemos representar un cifrador de Vernam orientado a caracteres. En este caso la operacin de cifra se realiza a travs de desplazamientos mdulo 27, como si se tratase de un cifrador monoalfabtico, con una secuencia de clave compuesta por nmeros aleatorios NA = k i , como se indica.
M = C I F R A D O R D E V E R N A M M i = 2 8 5 18 0 3 15 18 3 4 22 4 18 13 0 12 k i = 73 12 39 81 07 28 95 52 30 18 32 29 47 20 07 62 M i +k i = 75 20 44 99 7 31 110 70 33 22 54 33 65 33 7 74 C = U T Q R H E C P G V A G L G H T
Figura 1.32. Cifrado de Vernam orientado a caracteres.
Los valores utilizados para la secuencia de clave en el ejemplo anterior estn comprendidos entre 00 y 99, si bien pueden reducirse mod 27 y, por tanto, trabajar slo con el CCR(27). Del ejemplo anterior podemos destacar un aspecto interesante de un cifrador de Vernam: en el criptograma aparecen caracteres iguales que provienen del cifrado de caracteres distintos del texto en claro, al igual que en todos los sistema polialfabticos, como es el caso de las letras D, E y N que se cifran como el elemento G. Ahora bien, adems de utilizar los 27 posibles alfabetos dependiendo del valor de la clave, al ser sta aleatoria y carecer de periodicidad alguna, hace imposible cualquier tipo de ataque conociendo nicamente el criptograma. Si la secuencia aleatoria de clave usada luego se destruye, entonces el secreto es perfecto. El problema que persiste en este esquema es la transmisin segura de la clave secreta no inventada todava; para ello debemos esperar hasta el ao 1977 en que se presenta el sistema de cifra de clave pblica y se soluciona con este mtodo el problema del intercambio de clave.