Introducción a la Criptografía (I)

Hoy comenzamos nuestra categoría de criptografía con una introducción bien completa por cortesía de Manuales y Tutoriales Gratis.

¿Cómo cifrar datos?

¿O simplemente quieres que se respete tu intimidad? Si es así, seguro que los siguientes capítulos te desconcertarán. Pues, comunicando con otra gente haces uso de canales en los que todo el mundo puede introducirse de una manera relativamente sencilla. Como es difícil evitar que se intercepten tus mensajes, es lógico, por supuesto, que trates de hacerlos incomprensibles. Desde hace muchos siglos, reyes, espías y otros ladrones de varios países se han familiarizado con esta idea. Actualmente, también los ciudadanos sienten interés por estos asuntos, lo que disgusta enormemente a las categorías anteriormente citadas. Aun así, describiremos algunas posibilidades de velar los textos escritos o la voz humana. También hablaremos de la fiabilidad de estos métodos pero antes de ocuparnos de los modernos sistemas digitalizados, daremos primero algunos ejemplos clásicos ya que muchos de sus principios básicos se utilizan en los sistemas de ciframiento de hoy día.

Escrituras arcaicas

Como ya hemos dicho, algunos de los métodos para hacer ilegibles mensajes escritos son antiquísimos. En su tiempo, Julio César no confiaba en sus mensajeros cuando enviaba mensajes a sus confidentes. Por eso en sus mensajes cambiaba la `a’ en `d’, la `b’ en `e’, etcétera. Cuando llegaba al final del alfabeto, volvía a contar al principio del alfabeto. Sólo quien conocía la norma `córrase tres puestos hacia delante en el alfabeto’, podía leer el mensaje.

Es probable que Julio César utilizara siempre semejante norma pero quizás cambiara el número de puestos que las letras debían correr. Actualmente, la norma que él empleaba se llamaría `algoritmo’ y el número de puestos que

Cifrado Cesar

Cifrado Cesar

había que correr `la clave’. De la misma forma el mensaje original se llamaría `texto limpio’ y el mensaje elaborado `texto cifrado’. `Codificar‘ o `cifrar‘ quiere decir transformar un mensaje en un documento cifrado, y el proceso contrario se llama `descodificar‘ o `descifrar‘. Los sistemas de ciframiento se llaman `sistemas criptográficos’. Los criptógrafos son los que inventan los sistemas. Existen sistemas criptográficos para textos escritos pero también para codificar la voz. A su vez, los criptoanalistas son los que se dedican al desciframiento de estos sistemas.

El método de Julio César es un ejemplo de sistema de substitución: no era el orden de las letras lo que se cambiaba, sino las letras mismas. En otros métodos se utilizaban permutaciones, es decir, no se cambiaban las letras sino su orden.

A finales del siglo XIX, se inventó el método de `tablas’ o `discos’, con el que muy pronto se empezó a utilizar una máquina especial de codificación y descodificación. Este método mezclaba las letras del alfabeto y las ponía al canto de un disco redondo. Después, se hacían unos discos semejantes, procurando que en cada disco se mezclara el alfabeto de una manera distinta. Así se formaban varios discos, cada uno con una tabla distinta.

Los discos se colocaban, el uno al lado del otro, en un orden acordado (la posición inicial) en un eje alrededor del cual estos podían girar. El mensaje se realizaba haciendo girar los diferentes discos. El texto cifrado se hacía mediante un número fijo de giros de cada disco en una dirección convenida (la clave). En el lugar donde primero estaba el mensaje, después se encontraba el texto codificado. Es evidente que si los mensajes eran largos, se debía repetir este proceso. Para eso el texto limpio fue dividido en bloques del tamaño del número de discos de la máquina y después, por cada bloque de letras se efectuaba el mismo giro. Actualmente, esto se llamaría `ciframiento por bloque’. La descodificación se realizaba mediante el procedimiento en orden inverso, por lo que era necesario que el remitente y el receptor dispusieran de la misma máquina.

Durante la Segunda Guerra Mundial, los alemanes utilizaban un aparato con cinco discos basado en esta idea: el llamado Enigma. Cambiaban las claves con frecuencia por lo que los Aliados tenían grandes dificultades para poder

Máquina Enigma

Máquina Enigma

descifrar la comunicación interceptada hasta que se apoderaron de un aparato Enigma y sus (posibles) posiciones iniciales. Con la ayuda de un ordenador, desarrollado en ese momento en el más estricto secreto para poder descifrar los códigos utilizados por el enemigo, se podían probar todas las claves posibles en relativamente poco tiempo. Después de la Guerra, los norteamericanos vendieron aparatos Enigma a países del `Tercer Mundo’ pero `olvidaron’ de advertirles de que el sistema ya había sido descifrado. En el caso del Enigma, la posesión del aparato y, con ello, el conocimiento del algoritmo fue de gran importancia para poder descodificar. Hoy en día, mantener oculto un algoritmo ya no es tan importante. Los matemáticos han demostrado que es posible confeccionar sistemas criptográficos de tal manera que el conocimiento de los algoritmos o la posesión del aparato no lleve necesariamente al desciframiento del sistema.

Un siguiente método de ciframiento que data de la era antes del invento del ordenador, proviene probablemente de la Europa del Este. En este método se cambian las letras del texto limpio por cifras y luego se realiza una operación matemática con esas cifras. Quizás el método esté en uso todavía entre espías que han perdido su ordenador.

El espía y su jefe tienen un pequeño libro del tamaño de una caja de cerillas. En la cubierta del libro están todas las letras del alfabeto y algunos signos ortográficos, seguidos por un número por el que tienen que ser sustituidos. En las páginas siguientes del libro, que se pueden considerar como una larga clave, sólo hay filas de cada vez 5 cifras.

Cuando la espía codifica el mensaje “with love”, primero convierte este texto “with love” en cifras con la ayuda de la cubierta del libro; por ejemplo, w=8, i=7, t=22, h=16, etcétera. El resultado lo agrupa en filas de 5 cifras y, si hace falta, completa la última fila con ceros:

w i t h l o v e

8 7 22 16 13 27 19 9

El resultado es: 87221 61327 19900

Después, el espía elige una página de su libro. El primer renglón empieza, por ejemplo, con 95342 53308 34160 El pone estas cifras debajo de su `mensaje en cifras’:

CIFRAR DESCIFRAR

87221 61327 19900 “with love” 72563 14625 43060 código

95342 53308 34160 clave + 95342 53308 34160 clave -

72563 14625 43060 código 87221 61327 19900 “with love”

Suma las dos filas sin `llevar’, pues, de tal manera que 9+8=7 y no 17, 5+7=2 y no 12, etc.(1) Si está seguro de que ya no hay errores de cálculo, envía el resultado a su jefe, que, como hemos dicho, tiene un libro exactamente igual. La página con la clave utilizada se destruye después de su uso.

El desciframiento se efectúa según el procedimiento de orden inverso. Ahora, en vez de `sumar’, hay que `restar’ la clave del mensaje cifrado. Si lo que resta es negativo, como en la resta 7-9, el jefe hace como si pusiera 17-9. Así obtiene “with love” en cifras, lo que con la ayuda de la cubierta él puede convertir otra vez en el mensaje original.(2) En realidad la operación requirió aún más tiempo: para mayor seguridad se anotaba el mensaje codificado con tinta invisible en una carta y por encima se escribía un texto legible que sólo constaba de palabras sin importancia.

Nota que empleando este método se efectúa una determinada operación con una letra y no con un bloque de letras, como hace el aparato Enigma. Actualmente, algo así se llamaría `ciframiento por carácter‘. Otra diferencia es que el texto cifrado es más largo que el texto limpio, mientras que en el caso del Enigma ambos textos son igual de largo.

A lo mejor no sería tan difícil descifrar este sistema, si el/la espía utilizara una determinada página (la clave) más de una vez. Métodos en los que se come, se quema o se destruye de otro modo la clave después de ser utilizada, son del tipo `One Time Code Pad‘. La seguridad del sistema no sólo depende del uso único de la clave. De esencial importancia es también que la clave sea impredecible. Esto sólo se puede conseguir cuando conociendo unas cifras de la clave no se pueden pronosticar las demás cifras. Si éste es el caso, se dice que la clave es `random‘ (completamente aleatoria). En la práctica es muy complicado lograr que la clave sea completamente `random’.

Publicado el 28/07/2009 en Criptografia, Telecomunicaciones y etiquetado en , , , , , , , . Guarda el enlace permanente. 1 comentario.

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.