|
El gran valor de la escritura
es la universalización del acceso al conocimiento,
pero a la vez, es su gran debilidad cuando la información escrita quiere
ser de carácter confidencial. Lo primero que inventamos para evitar que un
mensaje llegase a ojos no deseados fue la esteganografía,
consistente en ocultar el mensaje a las miradas curiosas, como cuando
escribían el texto en la cabeza rapada del mensajero y esperaban a que le
creciese el pelo.
Sin embargo, pronto se vio que los métodos de ocultación tenían el gran
inconveniente de que una vez el engaño era descubierto el mensaje quedaba
completamente expuesto. Por eso surgió la criptografía,
arte de escribir con clave secreta, que
consiste en ocultar no el mensaje en sí, sino
el significado. De esta manera, aunque el
mensaje fuese interceptado, su contenido estaría a salvo. Hay muchos
sistemas de encriptar, los clásicos pueden clasificarse en sistemas de
transposición y de
sustitución, siendo estos últimos de dos tipos:
códigos y cifrados.
En la transposición el significado se oculta cambiando el orden de
las letras del mensaje. Por ejemplo, podemos tomar primero las letras que
ocupan posiciones pares y después escribir las impares. Así, la frase "voy
mañana" se convertiría en "o aaavymñn".
En la sustitución la idea es sustituir los elementos del texto
original por otros que formen el texto encriptado. Si lo que se sustituyen
son las letras se llama cifrado, mientras que si lo que se
sustituyen son palabras o expresiones enteras, se llama código.
Un ejemplo de cifrado
es el que utilizó Julio César para
comunicarse con sus oficiales, que consiste en sustituir cada letra del
mensaje por la que está n posiciones más
adelante o mas atrás en el alfabeto. Si n=3,
la A se sustituye por la D, la B por la E y
así sucesivamente. Así, la palabra "voy" se
transforma en "yrb". Se puede distinguir aquí
entre el algoritmo, que es la regla por la cual cambiamos una letra
por otra que está n posiciones
adelante y la clave que es el valor concreto que toma
n.
Lo malo de este sistema es que solo permite 27 sustituciones distintas
(tantas como letras tiene el alfabeto), con lo que su descifrado es
trivial. Para complicar un poco la cosa se puede utilizar, en vez de una
cifra, dos, o más. Así, si la clave es 31, se
sustituye la primer letra por la que está 3 posiciones adelante, la
segunda por la que esta 1posición más avanzada, la tercera por la que esté
3 posiciones por delante, la cuarta por la que está 1 posición, y así
sucesivamente.
Otro cifrado es la sustitución monoalfabética
donde a cada signo del alfabeto se le asigna uno distinto, que puede ser
letra, número, puntuación, etc. Aquí lo mejor es que el cambio sea completamente aleatorio,
pero esto obliga a conocer la tabla completa. Una alternativa es
utilizar una clave para formar las equivalencias. Por ejemplo, si la
clave es "voy" la V
sustituye a la A; la O a la B; la Y a la C
y a continuación Z por D y el resto de los signos en su orden habitual sin repetir los utilizados
en la clave.
Tales sistemas parecen eficientes, pero son fáciles de descifrar con el
análisis de frecuencias, desarrollado por los árabes
cuando buscaban la frecuencia con la que ciertas palabras
aparecían en el Corán para dilucidar la cronología de las palabras del
Profeta. La idea fundamental es que no todas las letras aparecen con la misma
frecuencia en los textos, sino que algunas aparecen más a menudo que
otras. Contando las signos del texto cifrado y ordenándolos de mayor a
menor frecuencia podemos establecer conjeturas acerca de qué letra
corresponde a cada signo. El análisis se completa con la búsqueda de
palabras frecuentes como artículos y preposiciones. Si además conocemos o
sospechamos de alguna palabra que deba aparecer en el mensaje, mejor que
mejor.
Ejemplos de este tipo de análisis los encontramos en el cuento
"El
escarabajo de oro" de E. A. Poe
y en "La
aventura de los bailarines" de C. Doyle. En
este último, el criptoanalista es el mismísimo
Sherlock Holmes, y se caracteriza porque las
letras del texto se sustituyeron por muñequitos danzantes.
Para evitar el análisis de frecuencias se incluyeron caracteres nulos que no se traducían por nada, o
también errores premeditados en el deletreado de las palabras para
confundir al criptoanalista. Una mejora importante fue
el cifrado de sustitución homofónico,
en el que cada letra se sustituye por varios caracteres distintos en
cantidad proporcional a su uso, de modo que si una letra se
usa el doble de veces que otra, la primera será sustituida por el doble de
caracteres que la segunda. De esta manera el análisis de frecuencias queda
anulado.
León Alberti
propuso usar más de un alfabeto para encriptar cada mensaje. Luego
Vigenère desarrollaría esta idea hasta dar con un nuevo método, al
que llamaron La cifra indescifrable. La idea
es sencilla: se hace una tabla con tantas filas y columnas como letras y
en cada fila se escribe un alfabeto completo que empieza precisamente con esa letra. El cifrado se hace así: si la clave es
CAB, el texto a traducir se obtendrá buscando la equivalencia de la
primer letra en la fila que empieza por C, la segunda en la que
empieza por A, la tercera en la empieza por B y repitiendo
el proceso para cada letra del texto. Obsérvese que en
este sistema la misma letra puede transformarse en letras distintas. Esta técnica es inmune al ataque por análisis de
frecuencias y fue considerada indescifrable durante mucho tiempo. Sin
embargo, Charles Babbage, uno de los padres de la informática, fue
capaz de romperla al encontrar que si la clave tenía n
letras, el
cifrado se repetía cada n letras.
Una variación del cifrado de
Vigenère consiste en utilizar una clave
tan larga como el propio mensaje para evitar su carácter cíclico. Pero
también se puede romper: su debilidad estriba en la utilización de claves
con significado, lo que permite tener una idea de cuándo la intuición de
uno va por buen camino.
La forma de resolver este problema es evidente: en vez de utilizar
claves con significado hay que utilizar claves aleatorias de un solo uso.
Si emisor y receptor tiene ambos un cuaderno de claves común, podrán
cifrar y descifrar los mensajes utilizarán las sucesivas claves contenidas
en cada una de las hojas del cuaderno. Así surgió en la segunda década del
siglo XX el "cifrado con cuaderno de
claves de un solo uso" que ofrece por primera vez un sistema seguro.
Pero el sistema tiene dos cuestiones importantes. Por un lado, si
las necesidades criptográficas son grandes, es decir, si es mucha la
cantidad de información que hay que proteger, generar claves aleatorias
suficientes supone un coste muy elevado. Por otro, y este ha sido el gran
problema de la criptografía a lo largo de su historia, está
el problema
de la distribución de las claves ya que para poder compartir un
mensaje, es necesario tener previamente un secreto compartido: la clave.
Pero si aquel que no queremos que capture nuestros mensajes se hace con el
cuaderno de claves será mucho peor que si no hubiésemos encriptado en
absoluto, porque nosotros creeremos que estamos comunicándonos en secreto
cuando no es así.
Con la Segunda Guerra Mundial la criptografía se mecaniza. Máquinas
como Enigma proporcionan códigos segurísimos que máquinas como la
Bomba de Turing se encargan de descifrar. De hecho, una de estas máquinas,
Colossus, es considerada el primer ordenador moderno.
El problema central seguía siendo el mismo: la
distribución de claves, o cómo transmitir la clave sin que ésta sea
interceptada. Este problema hoy está resuelto con una idea genial: el uso
de claves asimétricas... Pero eso es otra
historia
|