Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CRIPTOGRAFIA
EUGENIO GARCA
MIGUEL NGEL LPEZ
JESS J. ORTEGA
Eugenio Garca
Departamento de Matemticas
E. S. de Informtica
Universidad de Castilla-La Mancha
Jess J. Ortega
Departamento de Matemticas
E. S. de Informtica
Universidad de Castilla-La Mancha
Contenidos
Prlogo
Introduccin
2 El nomencltor
23
3 Cifrados polialfabticos
35
4 Cifrados poligrficos
55
77
95
7 lgebra y Criptografa
113
8 Mquinas de rotores
125
9 Criptoanlisis de Enigma
147
10 Criptografa Moderna
183
199
Bibliografa
215
217
ndice alfabtico
219
iii
Prlogo
PRLOGO
vi
PROLOGO
vii
INTRODUCCIN
Imaginemos que las actividades de dos personas, Alicia y Bernardo, van a requerir
que mantengan comunicacin durante varios meses y desde lugares distantes, sin que sea
posible el contacto personal. Forzosamente, la comunicacin debe tener lugar a travs de
algn medio como el telfono o el correo. Imaginemos tambin que una tercera persona,
Carlos, est interesada en los actos de Alicia y Bernardo. Carlos es muy poderoso,
controla todos los canales de comunicacin. Sin duda alguna, interceptar cualquier
comunicacin entre Alicia y Bernardo. Estos lo saben y no desean que Carlos se entere de
sus actividades. Toda informacin que intercambien deber permanecer secreta para
Carlos. Para convenir como hacerlo, tienen una reunin previa.
Enseguida se dan cuenta que no podrn conversar por telfono, ya que estar
intervenido. Tendr que ser mediante mensajes escritos. El correo electrnico es el medio
ms adecuado. Pero claro, los mensajes viajan por una red de ordenadores acompaados
de unos nmeros que identifican al ordenador de origen y al de destino. Conociendo estos
nmeros, resulta fcil para el que controla la red interceptar aquellos correos que le
interesan. Con toda seguridad, Carlos leer el contenido de los mensajes que intercambien
Alicia y Bernardo. Ahora bien, si su significado se ha ocultado de algn modo, si son
incompresibles para Carlos pero no para Alicia y Bernardo, stos habrn resuelto su
problema. No parece que sea difcil hacerlo, basta con manipular las letras de un mensaje
para que ste esconda el significado de las palabras que contiene. Despus, cuando el
mensaje llegue a su destino, se recompone de nuevo y las palabras recuperan el sentido.
Naturalmente, para que este proceso logre su cometido, el modo en que se han alterado
las letras no debe ser observable en los mensajes que se transmiten. Y hay muchas formas
de hacerlo. Alicia y Bernardo consideran varias: escribir al revs, cambiar unas letras por
otras... O mejor an, combinar dos de estas maneras. Por ejemplo, primero se escriben las
palabras al revs y despus se cambia cada una de las letras por la que sigue en el orden
alfabtico. Consideran que es perfecta. Quin va a adivinar que tras PUFSDFT se
esconde la palabra SECRETO?
Tarde o temprano todo el mundo. Estos modos de ocultar el significado de los
mensajes son los primeros que piensa cualquier persona. Tambin lo har Carlos.
Ciertamente, observando aislado el fragmento PUFSDFT es difcil averiguar su
procedencia; pero contemplando al mismo tiempo varios textos manipulados todos ellos
de ese modo ya no es tan difcil. Los artculos y otras palabras de uso frecuente pero con
INTRODUCCIN
pocas letras ayudarn a descubrir el engao. Lo que en un principio pareca una buena
idea resulta ser, tras una breve reflexin, una ingenuidad. A esta misma conclusin llegan
Alicia y Bernardo. Una manipulacin de los mensajes no va ser suficiente para burlar a
Carlos, por muy complicada que sea. Primero porque no hay tantas maneras de hacerlo, y
segundo porque los mensajes que intercepte Carlos dan pistas sobre ella. En
consecuencia, la solucin a su problema requiere algo ms.
S, claro, pero qu? Ms tiempo de reflexin trae nuevas ideas: que en el proceso
de manipulacin de los mensajes intervenga cierto dato, como una palabra o un nmero, y
de modo que el resultado dependa de l. Ms an, si el dato puede variar fcilmente y si
puede ser escogido entre una gran cantidad posible, no cabe duda que a quien lo
desconozca le ser muy difcil recuperar el significado de los mensajes. Quizs hasta sea
imposible. Esta es la clave de la solucin al problema de Alicia y Bernardo; y as deciden
llamar al citado dato: la clave. La idea es interesante, pero cmo llevarla a la prctica?
En primer lugar, hay que contemplar un mensaje como una simple secuencia de
signos que van uno a continuacin de otro. Estos signos son las letras, las hay maysculas
y minsculas, los nmeros, los signos de puntuacin, etctera. Todos ellos constituyen el
alfabeto. Generalmente, no es necesario emplearlos todos para transmitir informacin;
puede bastar con redactar los mensajes empleando slo letras maysculas y sin signos de
puntuacin. En consecuencia, antes que nada hay que convenir un alfabeto con el que se
escribirn los mensajes con significado. Este alfabeto se denomina alfabeto en claro o
llano, y a los textos con l redactados textos en claro o textos llanos. Como es de esperar,
el alfabeto que se fije depende del tipo de informacin que se vaya a transmitir. Alicia y
Bernardo consideran el alfabeto formado por las veintisiete letras maysculas y el punto
que har de separador de palabras. Un ejemplo de texto en claro puede ser el siguiente:
Texto llano:
SEAPLAZALAREUNIONDELLUNES
Los textos en claro van a ser transformados para ocultar su significado. Como
consecuencia de ello, se obtendr otra secuencia de caracteres que se llama texto cifrado o
criptograma. Con frecuencia, sus signos pertenecen tambin al alfabeto en claro, pero no
tiene porque ser as. Por tanto, hay que considerar tambin el alfabeto que forman los
signos de los textos cifrados, que recibe el nombre de alfabeto de cifrado. Alicia y
Bernardo deciden que el suyo sea el constituido por los dgitos del 0 al 9 junto con el
espacio en blanco. Tienen pensado que los criptogramas sean series de nmeros separadas
por dicho espacio en blanco.
El siguiente paso es considerar las claves. Deben ser elegidas entre una gran
cantidad posible. Las que van a emplear los protagonistas de nuestro imaginario ejemplo
son palabras de ocho letras, no necesariamente con sentido gramatical. Empleando las 27
letras del alfabeto, el nmero de tales palabras es 278, cifra que supera los mil millones;
suficiente para Alicia y Bernardo. Las claves deben intervenir en la transformacin de los
textos en claro en criptogramas; y viceversa, en la recuperacin de aquellos a partir de
stos. Tales transformaciones se denominan algoritmos de cifrado y descifrado,
respectivamente. Describirlos con exactitud es la prxima tarea que ocupa a Alicia y
Bernardo.
2
INTRODUCCION
Fijada una clave, por ejemplo la palabra IMAGINAR, colocan los 28 caracteres del
alfabeto en claro en un rectngulo dividido en 30 casillas dispuestas en tres filas y diez
columnas. Primero escriben las letras de la clave a partir de la tercera casilla, sin repetir
ninguna letra. A continuacin el punto y despus el resto de las letras en su orden
habitual. El siguiente esquema lo explica perfectamente:
1
2
C
P
D
Q
3
I
E
S
4
M
F
T
5
A
H
U
6
G
J
V
7
N
K
W
8
R
L
X
0
B
O
Z
Los nmeros que rodean al rectngulo sirven para asociar de manera unvoca un
entero de uno o dos dgitos a cada letra del alfabeto en claro. A las de la primera fila se
asocia el nmero que est encima de ellas; y a las de la segunda y tercera filas, este
mismo nmero precedido por un 1 un 2, respectivamente. As, a la letra A se asocia el 5
y a la S el 23. El propsito de Alicia y Bernardo es sustituir cada uno de los signos de los
textos en claro por el nmero correspondiente, dando lugar a una secuencia de dgitos.
Mostrmoslo con el texto en claro de antes:
S E A P LAZA LA RE UN I ON D E L L UNE S
23 13 9 5 21 18 5 20 5 9 18 5 9 8 1325 7 3 10 7 9 121318 9 18 25 7 13 23
Recorriendo de izquierda a derecha la secuencia de dgitos puede recuperarse de
nuevo el texto en claro. Ello es posible porque ni el 1 ni el 2 van asociados a signo
alguno. As, cuando en este recorrido se encuentre un 1 o un 2, habr que considerar
tambin el siguiente dgito para descubrir la prxima letra. Es fundamental que el receptor
del mensaje pueda obtener sin ambigedad el texto en claro durante el proceso de
descifrado.
Pero la secuencia de dgitos antes obtenida no es todava el texto cifrado. An debe
someterse a la siguiente modificacin. Considerando de nuevo la clave y asociando a cada
una de sus letras un dgito entre 1 y 8 segn el orden alfabtico, se obtiene un nmero de
ocho cifras:
I MA G I N A R
4 6 1 3 5 7 2 8
Si se repite sucesivas veces este nmero, se puede conseguir una cadena de dgitos
tan larga como la secuencia anterior. Se escriben ambas series de nmeros una debajo de
la otra. Una vez hecho, se suman los dgitos sin tener en cuenta la unidad que hay que
llevarse cuando se pase de diez. Ello proporciona una tercera serie de dgitos:
INTRODUCCIN
2313952118520591859813257310791213189182571323
4613572846135728461357284613572846135728461357
6926424954655219210160431923263059214800932670
Y ya, por fin, el texto cifrado es esta ltima secuencia de dgitos, agrupndolos en
bloques de cinco y separndolos por un espacio en blanco:
69264 24954 65521 92101 60431 92326 30592 14800 93267 0
Para recuperar el mensaje en claro, el receptor de este criptograma debe deshacer
los pasos anteriores. Primero, ha de colocar debajo de estos nmeros las series repetidas
del entero de ocho cifras asociado a la clave; y a continuacin, efectuar la resta sin
llevarse unidades. Despus, usando el anterior rectngulo de 30 casillas, recuperar el
texto en claro del modo explicado antes.
Observemos el papel de la clave en todo este proceso. Distintas claves dan lugar a
diferentes disposiciones de las letras en el rectngulo y a distintos nmeros de ocho cifras.
Por consiguiente, variar la clave ocasiona que un mismo texto en claro d lugar a
diferentes criptogramas. La clave debe cambiarse peridicamente. Este periodo estar en
funcin del trfico de mensajes. Muchos mensajes cifrados con una misma clave pueden
comprometer la informacin que esconden todos ellos. Lo ideal es emplear una clave
distinta en cada mensaje, pero ello puede requerir manejar una cantidad tan elevada de
claves que lo har inviable en la prctica. En el ejemplo que describimos, Alicia y
Bernardo prevn un flujo de mensajes del orden de media docena al da. Consideran que
con emplear una clave distinta cada semana ser suficiente. Con este supuesto,
confeccionan por duplicado una lista con un nmero de claves que cubre el tiempo que
durar su actividad. La guardarn con el mayor de los secretos. Por ltimo, observan que
es conveniente ir borrando de la lista las claves que hayan caducado. Protegern as la
informacin transmitida en el caso que Carlos se apodere de dicha lista de claves.
El problema al que se enfrentan Alicia y Bernardo es precisamente el objeto de la
Criptografa: establecer comunicacin segura por un canal inseguro. Durante siglos, esta
disciplina ha sido casi exclusiva de diplomticos y militares. La han empleado los
gobiernos para enviar instrucciones a sus embajadores en el extranjero, tambin los
mandos de un ejrcito para transmitir rdenes a sus unidades en el frente. En la
actualidad, en la que muchos llaman la era de la informacin, el uso de la Criptografa ha
trascendido a otros espacios como la industria o el comercio. Ms an, en estos mbitos
han surgido versiones del problema anterior que hacen protagonistas a personas que nada
tienen que ver con la Criptografa. Por ejemplo, cuando alguien efecta una operacin
bancaria a travs del telfono o por Internet, representa el papel de Alicia y Bernardo;
cuando se intenta acceder a la emisin de un canal codificado de televisin sin estar
abonado, se acta como Carlos.
La Criptografa intenta resolver el problema anterior diseando criptosistemas.
Precisamente es lo que han hecho Alicia y Bernardo para intentar burlar a Carlos. Gracias
al ejemplo que nos han proporcionado y a las explicaciones que hemos ido insertando,
INTRODUCCION
INTRODUCCIN
1
LOS PRIMEROS PASOS. CIFRADO
POR SUSTITUCIN
Los historiadores dicen que la Criptografa es casi tan antigua como la propia
escritura. Afirman que est presente en todas las civilizaciones de la Antigedad y dan
ejemplos documentados que lo demuestran. Sin embargo, estos ejemplos son puntuales.
Ninguna de estas civilizaciones hizo uso comn de la Criptografa. Ningn imperio de
aquella poca la utiliz de forma habitual para enviar mensajes confidenciales a sus
provincias o a su ejrcito, slo en contadas ocasiones. El uso regular de la Criptografa
comienza en la Edad Media, con los rabes; y en Europa ello no sucede hasta el
Renacimiento. Hasta entonces, aunque la Criptografa surge en muchos lugares,
nicamente aparece de forma espordica. En la Antigedad slo hay unas pocas muestras
de Criptografa, y son muy simples. Pero hay que comenzar por dichas muestras. No slo
por curiosidad histrica, sino porque en ellas hay parte de la base de la Criptografa que
vendr despus. Las lneas que siguen a continuacin contienen algunos de dichos
ejemplos, creemos que los ms significativos.
El primer texto relacionado con la Criptografa del que se tiene conocimiento data
aproximadamente del ao 1900 a.C. Es del antiguo Egipto; es un grabado en una piedra
de la cmara principal de la tumba de un noble de la ciudad de Menet Khufu, a las orillas
del Nilo. En l se cuentan los actos ms relevantes de la vida de ese noble. En realidad no
es un texto criptografiado con la intencin de ocultar su contenido, sino que es
simplemente un texto en el que ciertos smbolos jeroglficos se cambian por otros
similares pero no usuales. Se cree que con la intencin de dotar al texto de cierto tono de
dignidad. Esta prctica perdur durante cierto tiempo, con escritos cada vez ms
complicados; pero despus se abandon. Constituye la nica muestra criptogrfica de la
civilizacin egipcia.
Los escribas de la antigua Mesopotamia tambin cambiaron en ocasiones los signos
cuneiformes de su escritura por otros, coincidiendo as con sus colegas egipcios en esta
forma de alterar la escritura. Pero a diferencia de los egipcios, los escribas mesopotmicos
s tuvieron intencin de ocultar el significado de la escritura. De esta cultura es el texto
7
cifrado ms antiguo que se conserva, data aproximadamente del ao 1.500 a.C. Es una
tablilla de arcilla en la que se escribi secretamente una frmula para el barniz que se
empleaba en alfarera. Seguramente era un valioso tesoro en aquella remota poca.
Saltando ya al siglo VI a.C., en algunos antiguos textos hebreos, entre los que estn
los bblicos, figuran nombres de personas y ciudades que han sido transformados
mediante ciertas sustituciones de unas letras por otras. La ms frecuente es la denominada
atbash. En el atbash la primera letra del alfabeto hebreo se cambia por la ltima y
viceversa, la segunda por la antepenltima y as sucesivamente, segn el esquema que se
muestra en la Figura 1.1. Otra sustitucin similar es el albam. En ella la primera letra se
intercambia con la duodcima, la segunda con la decimotercera y as sucesivamente. Sin
embargo, no se observa razn alguna para tal encriptacin. Quizs para dar un aire de
misterio a los escritos?
persas en un par de tablillas de madera y despus las cubri con cera, ocultando as el
mensaje. Las tablillas partieron desde la ciudad persa de Susa hasta Esparta sin ser
interceptadas por el camino. Ya en su destino, Gorgo, esposa del rey Lenidas, adivin
que debajo de la cera debera esconderse algo escrito. Despus que el mensaje fue ledo,
Esparta comunic las intenciones persas al resto de las ciudades griegas. Gracias a ello,
los griegos pudieron armarse a tiempo y derrotar a los persas en las batallas de las
Termpilas, Salamina y Platea.
Fueron precisamente los espartanos de ese mismo siglo V a.C. quienes disearon el
primer criptosistema para uso militar: el esctalo. Plutarco en su obra Vida de Lisandro
lo describe como un bastn redondo en el que se enrollaba una cinta de pergamino larga y
estrecha como una correa, sobre la que se escriba un mensaje en forma longitudinal. Al
desenrollar la cinta las letras aparecan en otro orden, formando una secuencia sin sentido.
El receptor del mensaje dispona de otro bastn exactamente igual que el del emisor, y
recuperaba el mensaje enrollando de nuevo la cinta. (Vase la Figura 1.2).
Cada letra puede ser representada por dos nmeros. Por ejemplo: con 11, con
42. Polibios sugera transmitir estos nmeros por medio de seales luminosas procedentes
de antorchas y as poder enviar mensajes desde largas distancias.
Hay que dudar de la efectividad del mtodo de Polibios en la transmisin de
informacin, pero es incuestionable que su idea de representar letras por nmeros es muy
interesante. Estar presente a lo largo de toda la historia de la Criptografa.
Ya en la poca romana, Julio Cesar en su Guerra de las Galias seala que envi
un mensaje a su general Cicern cambiando las letras latinas por las griegas.
Posteriormente, Julio Cesar ide un modo de cifrado que figura como ejemplo en todos
los textos de Criptografa. Es simple, consiste en sustituir cada letra por la que se
encuentra tres posiciones ms avanzada en el orden del alfabeto. As, con nuestro actual
alfabeto, la a se cambiara por la D, la b por la E,...., y la z por la C; como se
indica a continuacin:
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
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
Sustitucin de Julio Csar.
Con este esquema, la famosa frase de Cesar veni, vidi, vinci se cifrara
YHPL, YLGL, YLPFL.
Sorprende encontrar una muestra de Criptografa en el texto ertico El
Kamasutra, escrito en el siglo IV. En l se listan 64 artes que las mujeres deben conocer
y practicar, entre las que estn el canto, la cocina y el ajedrez. La nmero 45 recibe el
nombre mlecchita-vikalpa y es el arte de la escritura secreta. En el Kamasutra se
describen incluso dos mtodos de cifrado. Uno de ellos recibe el nombre de kautiliyam
y consiste en cambiar unas letras por otras relacionadas fonticamente. El otro se llama
mladeviya y consiste en emparejar aleatoriamente las letras del alfabeto y reemplazar
cada letra de un texto por su pareja.
Y un ltimo ejemplo. En nuestros archivos histricos se conservan varios
documentos cifrados de la poca visigtica. En ellos se sustituyen las vocales por
diferentes signos; en ocasiones por puntos y lneas, otras veces por nmeros romanos.
En esta breve resea histrica encontramos tres formas diferentes de enviar
mensajes secretos. A una de ellas la llamamos esteganografa y dijimos que consiste en
ocultar el propio mensaje. En los ejemplos mostrados hay dos de esteganografa. Otro
ejemplo tpico es la escritura con tinta invisible. Seguramente sta es la tcnica
esteganogrfica ms empleada en todos los tiempos. Es antiqusima. Ya en el siglo I,
Plinio el Viejo mostr como hacer tinta invisible con el jugo de cierta planta. Estas tintas,
tambin llamadas simpticas, se hacen visibles al entrar en contacto con otra sustancia
10
Claro: 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
Cifrado: C R Y P T O G A F I B D E H J K L M N Q S U V W X Z
Ejemplo de sustitucin.
11
emparejamos los caracteres de un alfabeto con los del otro. Tanto emisor como receptor
deben conocer la clave. Para cifrar, el emisor reemplaza cada carcter del texto en claro
por el carcter que tiene asociado en el alfabeto cifrado, segn indica la clave. Para
descifrar, el receptor del mensaje tiene que cambiar cada signo del texto cifrado por aquel
del alfabeto llano que le corresponde. As, usando la clave que proporciona este mismo
ejemplo dado antes, el texto en claro cifradoporsustitucin se cifrara as:
Texto llano:
cifradoporsustitucin
Texto cifrado: YFONCPKLKNSQFQSYFKH
Observemos en este ejemplo que el alfabeto de cifrado se ha formado a partir de la
palabra CRYPTOGRAFIA: se ha colocado esta palabra sin repetir la R y la A, y a
continuacin el resto de las letras en su orden habitual. Es una forma prctica de formar
claves a partir de palabras, ya que facilita la memorizacin de la clave; pero no hay que
confundir la clave con la palabra. La clave es, repetimos, el modo en que se emparejan las
letras de los alfabetos llano y de cifrado.
Y cuntas claves posibles hay en el cifrado por sustitucin? Calculmoslas. Para
ello, supongamos que el alfabeto en claro es el nuestro, el espaol, y que el de cifrado est
formado por 27 signos cualesquiera. La primera letra del alfabeto llano es la a. Tenemos
27 signos del alfabeto cifrado para relacionar con la a, y cada uno de ellos dar lugar a
una clave distinta. Una vez resuelto que signo emparejamos con la a, nos quedarn 26
posibles para asociar con la b, que es la segunda letra del alfabeto llano. Y como antes,
cada una de estas 26 posibilidades determinar una clave distinta. A continuacin,
decidimos que signo del alfabeto de cifrado agrupamos con la c. Restarn 25 de ellos.
Etctera. Ya concluimos: el nmero de claves posibles es el producto de todas las formas
diferentes de elegir signos para cada una de las letras. En total:
272625....21 = 10888869450418352160768000000.
Este es un nmero muy grande. Llevara una eternidad descifrar un mensaje por
sustitucin probando todas las claves una a una, an incluso con un ordenador. Un
ordenador que fuese capaz de comprobar un trilln de claves por segundo (y sera mucho
ms rpido que los actuales) tardara ms de trescientos aos en comprobarlas todas.
Este hecho puede inducirnos a pensar en una gran seguridad del cifrado por
sustitucin si tanto el emisor como el receptor guardan secretamente la clave. Pues no, no
es as. Un intruso recupera fcilmente la clave si es capaz de hacerse con unas pocas
lneas de texto pleno y su correspondiente cifrado. (Recordemos que esto en Criptografa
se llama ataque con texto pleno). Slo tiene que ir leyendo una a una las letras del texto
claro y cotejndolas con sus correspondientes del texto cifrado, de este modo se recupera
la clave. Y obtenida la clave, es sencillo descifrar cualquier otro mensaje que se cifre con
ella.
Pero la clave puede recuperarse tambin sin conocer texto pleno alguno. Cmo?
Pues haciendo uso de la gran debilidad del cifrado por sustitucin: cada letra del texto en
claro se cifra siempre con el mismo signo del alfabeto de cifrado. Ello permite recuperar
12
la clave a partir de unas cuantas lneas de texto cifrado mediante el llamado anlisis de
frecuencias, que es la tcnica de criptoanlisis ms antigua en la historia de la
Criptografa. Es de origen rabe y aparece ya en textos que se remontan al siglo IX.
Los califas rabes que sucedieron a Mahoma hicieron uso habitual de la
Criptografa para administrar su imperio, la aprendieron de la conquistada Persia. Al igual
que los reyes persas, los califas se comunicaban secretamente con los emires de sus
provincias mediante mensajes cifrados. Pero la Criptografa fue utilizada tambin en
instancias inferiores del estado. Los libros rabes de la poca citan, por ejemplo, que los
funcionarios encargados de la recaudacin de los impuestos protegan la informacin de
sus archivos cifrando los documentos. En dichos textos pueden encontrarse varios modos
de cifrado, la mayora respondiendo al modelo de sustitucin. Y tambin puede leerse
como criptoanalizarlos mediante el citado anlisis de frecuencias.
Uno de estos libros es una enorme enciclopedia de 14 volmenes que recoge todo el
saber de la poca, lleva el ttulo Subh al-a sha y se termin de escribir en 1412. Su
autor: Shilb al-Dn abu l-Abbas Ahmad ben Ali ben Ahmad Abd Allh alQalqashandi. Contiene una seccin dedicada a la Criptografa con el ttulo Sobre la
ocultacin de mensajes secretos en las cartas. En ella se explica claramente como
desencriptar un cifrado por sustitucin: lo primero es averiguar en qu idioma se ha
escrito el texto en claro y despus...
... cuenta cuantas veces se repite cada smbolo y antalo. Si la persona que
ha diseado el cdigo ha sido meticulosa y ha ocultado la separacin de las
palabras en el cuerpo del mensaje, entonces lo primero es descubrir que
smbolo divide las palabras... Seguidamente, mira que letras aparecen ms
frecuentemente en el mensaje y compara con el patrn de frecuencias de
letras previamente mencionado. Cuando veas que una letra aparece en el
mensaje ms veces que el resto, asume que es alif; luego asume que la
siguiente ms frecuente es lm. La exactitud de tu conjetura ser
confirmada por el hecho que en la mayora de los contextos, lm sigue a
alif...
13
HS2BHF7J7207HS2B9C722SJ47J72MP7BN77JMP7H92BS2926
929J6SNMP72FMP7JS17N7B7H967J96SJ7NN7170FS9J9097J7H
070SK9NS29S0S2CP19J3HS2192170F9J92SH922S8N7H926S
8N729198H727JN9K98H72BS292MP7H72HH7J9JSH72Q9BF9JH
9QF097J7N9D93MPF7J6SJ79H2FH7JBFSPJ90719J2SK90SN07
F16N7BF29N7BSN09BFSJ3D93918F7JMPF7JD9B7171SNF9BSJ
H9B9N9982SN937JH9B9N96FJ90S7H472S07H9872F9NPFJ
07H991SNS292P6HFB9J7872F9B9J2909H919JS2P579J0SH
9CN7J737H1FN9NHH7JS07919N4PN9BS1SPJ19N7JB9H190S
Criptograma
19
18
37
6
3
1
9
60
8
70
19
3
D
F
H
J
K
M
N
P
Q
S
3
21
30
37
3
7
26
15
14
2
37
14
Si el texto del criptograma hubiese sido formado eligiendo los caracteres de modo
aleatorio, cada uno de ellos aparecera aproximadamente el mismo nmero de veces.
stas seran el cociente entre el nmero total de signos que figuran en el texto, 448, y el
nmero de signos diferentes que hay, 23. Este cociente es 19. Pero observamos que
mientras que caracteres como 9 o 7 tienen una frecuencia mucho mayor que 19, otros
como 5 o Q apenas aparecen una y dos veces, respectivamente. Hay signos mucho
ms frecuentes que otros.
Lo mismo sucede con las letras de un idioma. Las palabras se forman uniendo
slabas que, por regla general, contienen una vocal y una o dos consonantes. Puesto que
en el alfabeto latino las vocales son 5 y las consonantes 21 (22 si incluimos la ), ello
explica que las vocales aparezcan ms a menudo que muchas de las consonantes. Y
ocurre tambin que no todas las vocales o consonantes presentan la misma frecuencia. Por
ejemplo, en espaol la a y la e se utilizan mucho ms que la u; y mientras que las
consonantes s, n o r estn presentes en numerosas palabras, hay muy pocas
conteniendo k o x. Situaciones similares ocurren en todos los idiomas.
Cuando se cifra un texto sustituyendo cada letra por otra o por un signo, se oculta
su significado; pero no las frecuencias de las letras empleadas. La frecuencia de cada letra
del mensaje en claro es la misma que la del carcter que lo sustituye. Por tanto, los signos
que ms abundan en el texto cifrado se han de corresponder con las letras de ms
frecuencia en el texto en clave. Esta es la idea esencial del anlisis de frecuencias.
Luego, el primer paso para resolver un criptograma por sustitucin es conocer las
frecuencias de las letras de la lengua con la que se ha escrito el texto en claro. Esto puede
determinarse empricamente, considerando en un idioma dado una cantidad ingente de
texto de diferentes publicaciones como peridicos, novelas, libros de texto, etc. Es una
tarea muy pesada, pero hace mucho que se ha hecho. Y no slo para los idiomas ms
hablados, sino para la prctica totalidad de las lenguas que se hablan en el mundo. No en
vano la tcnica del anlisis de frecuencias tiene ya ms de mil aos. Seguramente, casi
todos los servicios secretos del mundo disponen de los datos de las frecuencias de las
letras de muchos de los idiomas que se hablan en el mundo, en especial de las lenguas
habladas en sus pases vecinos. Pero no es necesario recurrir a ningn servicio secreto, los
libros de Criptografa incluyen las frecuencias de las lenguas ms populares. Y
probablemente, para cada idioma haya alguna direccin de Internet con las frecuencias de
sus letras.
As, con datos del libro de F. Pratt que referenciamos en la bibliografa, hemos
confeccionado la Tabla 1.3 que recoge las frecuencias en tanto por ciento de cada letra
para el ingls, espaol, francs y alemn. Hemos ordenado las letras colocando primero
las de mayor frecuencia.
15
Ingls
E
T
A
O
N
R
I
S
H
D
L
F
C
M
U
G
Y
P
W
B
V
K
X
J
Q
Z
13.105
10.468
8.151
7.995
7.098
6.832
6.345
6.101
5.259
3.788
3.389
2.924
2.758
2.536
2.459
1.994
1.982
1.982
1.539
1.440
0.919
0.420
0.166
0.132
0.121
0.077
Espaol
E
A
O
S
R
N
I
D
L
C
T
U
M
P
B
G
Y
V
Q
H
F
Z
J
X
W
K
Francs
13.676
12.529
8.684
7.980
6.873
6.712
6.249
5.856
4.971
4.679
4.629
3.934
3.150
2.505
1.420
1.006
0.895
0.895
0.875
0.704
0.694
0.523
0.443
0.221
0.023
0.004
E
A
S
I
T
N
R
U
L
O
D
C
M
P
V
Q
G
F
B
H
J
X
Y
Z
K
W
17.564
8.147
8.013
7.559
7.353
7.322
6.291
5.991
5.783
5.289
4.125
3.063
2.990
2.980
1.557
1.361
1.051
0.959
0.876
0.721
0.598
0.350
0.116
0.072
0.041
0.020
Alemn
E
N
I
S
T
R
A
D
H
U
G
M
C
L
B
O
F
K
W
V
Z
P
J
Q
Y
X
16.693
9.905
7.812
6.765
6.742
6.539
6.506
5.414
4.064
3.703
3.647
3.005
2.837
2.825
2.566
2.285
2.044
1.879
1.396
1.096
1.002
0.944
0.191
0.055
0.032
0.022
16
en su libro Los Cdigos Secretos, el francs Georges Perec fue capaz de escribir en
1967 la novela La Disparition, de 200 pginas, sin emplear una sola vez la letra e, que
es con diferencia la ms frecuente en francs. Y ms an, Gilbert Adair la tradujo al
ingls con el ttulo A void, tambin sin utilizar la e.
Pero volvamos con nuestro objetivo de descifrar el criptograma. Ser el cifrado por
sustitucin de un texto escrito en alguno de los cuatro idiomas que hemos dado
estadsticas? Supongamos que lo sea y tratemos de descifrarlo.
La primera conclusin que establecemos es obvia: el texto en clave no contiene
todas las letras de su alfabeto. En el criptograma slo hay 23 signos distintos, pero son 26
las letras del alfabeto (27 en el alfabeto espaol, por la ). No es de extraar, en los cuatro
idiomas: ingls, espaol, francs y alemn, hay letras muy poco frecuentes.
Recprocamente, alguno de los signos del texto cifrado sustituir a algn otro
carcter del texto en claro que no sea una letra, como por ejemplo nmeros, signos de
puntuacin o el espacio en blanco? Los nmeros son muy poco frecuentes salvo en textos
especializados. Los signos de puntuacin como la coma, el punto o el punto y coma
presentan una frecuencia intermedia, en torno al 2%; pero elevan el nmero de caracteres
del alfabeto a 29 (30 en el caso del espaol). El nmero de 23 signos del criptograma hace
sospechar que fueron eliminados del texto en claro antes de codificarlo.
Atencin especial merece el espacio en blanco que usamos para separar las
palabras. Es con diferencia el signo ms frecuente. Por qu? Porque como las palabras
tienen una media de cuatro o cinco letras, cada cuatro o cinco letras hay un espacio en
blanco. Por tanto, el espacio en blanco tiene una frecuencia prxima al 20% en los textos
en claro. En el criptograma que nos ocupa no hay un signo con tal frecuencia. Pero esto
no son buenas noticias ya que, como observ Al-Qalqashandi, el espacio en blanco
facilita la labor del criptoanalista. Una vez identificado el signo que lo sustituye, pueden
separarse las palabras. Por esta razn, se suelen suprimir los espacios en blanco antes de
cifrar.
Definitivamente: si el criptograma es el cifrado por sustitucin de otro texto
escrito en ingls, espaol, francs o alemn, en l se han suprimido espacios en blanco y
signos en puntuacin.
Descubramos el idioma. Para ello, compararemos las frecuencias del texto cifrado
con las de los cuatro idiomas. Ser conveniente que reescribamos la Tabla 1.2 dando las
frecuencias en tanto por ciento y ordenando los signos segn su frecuencia. Lo hemos
hecho en la Tabla 1.4.
17
15.625
13.392
8.258
8.258
8.258
6.696
5.803
4.687
4.241
4.241
4.017
3.348
P
6
8
M
3
4
C
D
K
Q
5
3.125
2.008
1.785
1.562
1.339
0.669
0.669
0.669
0.669
0.446
0.223
10.815
39.837
18
24.545
Alfabeto cifrado: 9 7
o s n r
2 j s
Bien, por cul de los caminos que hemos abierto nos decidimos? Digamos que son
24 en total y que la distribucin de las frecuencias de las letras no puede ayudarnos ms.
De nuevo, el texto rabe nos muestra como seguir: lm sigue a alif. Esta es la clave,
conocer con que otras letras se suelen agrupar en un idioma las letras ms frecuentes. Por
esta razn, las estadsticas que se hacen a los textos de un idioma no se limitan a contar
por separado cada una de sus letras. Cuentan tambin los bloques de dos letras, llamados
bigramas o digrafos; y los de tres, trigramas o trigrafos. En lo referente al espaol, los 20
bigramas y trigramas ms frecuentes son, por este orden, los siguientes:
Bigramas: EN, ES, EL, DE, LA, AL, OS, AR, RE, ER, NT,
ON, AD, UE, RA, CI, AS, TE, SE, CO.
Trigramas: ENT, QUE, NTE, DEL, ELA, ION, DAD, CIO, CON,
EST, ADE, ALI, IDA, NCI, EAL, ODE, ACI, CIA,
ESE, IEN.
Debemos contar ahora bigramas y trigramas en el texto cifrado. Con un ordenador
este proceso es inmediato, pero sin l es penoso. En este segundo caso, podemos
limitarnos a contar bigramas y trigramas que contengan slo los signos 7 o 9, que son
los candidatos a las vocales a y e. Afortunadamente, nosotros disponemos de
ordenador; nos ha mostrado cules son los ms bigramas y trigramas que ms se repiten
en el criptograma. La Tabla 1.6 lo indica.
19
Bigramas
Frecuencia
Trigramas
Frecuencia
7J
72
H9
9J
7H
H7
92
17
12
11
11
10
9
9
J7
7J
MP7
7H9
H72
S29
F7J
5
5
5
5
4
4
4
Alfabeto cifrado: 7
relativo que, que es el es segundo trigrama en frecuencia? Si ello es as, entonces las
letras q y u se reemplazan por M y P, respectivamente. Bien, ya hay suficientes
deducciones:
Alfabeto en claro: e
Alfabeto cifrado: 7
21
9CN7J737H1FN9NHH7JS07919N4PN9BS1SPJ19N7JB9H190S
a**ente*el***a*lleno*ea*a**u*a*o*oun*a*en*al*a*o
Nuestras conclusiones eran correctas y no parece que debamos corregir nada. Como
anuncibamos antes, el texto en claro ya cae por s solo. Primero la vocal que nos falta, la
i. En la segunda fila, el tercer asterisco se encuentra entre una s y una q. No puede
ser sino una vocal: la i, que es la nica no descubierta. En consecuencia, la i se
transforma en F. Entonces, al comienzo del texto obtenemos el trozo los*lientes*elos.
El primer asterisco tiene que ser una c y el segundo una d. Conseguimos de este modo
los sustitutos de las letras c y d, que son B y 0 respectivamente. Y as
continuaramos, reemplazando los asteriscos por las letras adecuadas. Al final,
descubriramos por completo el texto en claro y la clave utilizada. Es la siguiente:
Claro: 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
3
Cifrado: 9 8 B 0 7 C 4 D F 5 H 1 J K S 6 M N 2 P Q
Clave del criptograma
22
2
EL NOMENCLTOR
2. EL NOMENCLTOR
las letras ms frecuentes del texto pleno con varios signos posibles que, naturalmente,
habr que aadir al alfabeto de cifrado. Esta mejora del cifrado por sustitucin recibe el
nombre de sustitucin homofnica.
La primera vez que se tiene constancia del uso de una sustitucin homofnica fue
en 1401, en correspondencia que mantuvieron el duque de Mantua y Simeone de Crema.
Puede verse la sustitucin empleada en la siguiente Figura 2.1
La primera lnea de esta figura corresponde al alfabeto en claro. Este alfabeto consta
de las 23 letras que se usan en latn, que era la lengua que generalmente se empleaba
entonces en la comunicacin escrita. La segunda lnea es el alfabeto de cifrado. Nos
volvemos a encontrar con las 23 letras del alfabeto latino, ahora ordenadas en modo
inverso. Pero el alfabeto de cifrado se ha ampliado con 12 signos ms, que se asocian con
las vocales a, e, o y u del alfabeto en claro. De este modo, cada una de estas
vocales dispone de cuatro caracteres del alfabeto de cifrado para sustituirla, segn indica
la Figura 2.1. Por ejemplo, el texto en claro duquedemantua puede cifrarse del
siguiente modo:
Texto en claro:
Texto cifrado:
d u q u e d e ma n t u a
u d h ff t u 4 l z m e I 2
Como vemos, cada una de las tres u del texto en claro ha sido sustituida con
diferentes signos en el texto cifrado. Lo mismo se ha hecho con las dos a y las dos e.
Aunque en la sustitucin del duque de Mantua nicamente las vocales a, e, o y
u pueden cambiarse por varios caracteres del alfabeto de cifrado, ello es suficiente para
evitar el criptoanlisis mediante el anlisis de frecuencias. Cada una de las frecuencias de
las citadas vocales en el texto en claro se reparte entre los correspondientes cuatro signos
que la sustituyen. Y como estas vocales deben ser cuatro de las letras ms comunes del
texto pleno, ya no hay correlacin entre la distribucin de frecuencias del criptograma y el
texto en claro del que procede. Ello imposibilita iniciar la tcnica de criptoanlisis que
hemos explicado en el tema anterior.
Pero slo en un principio. En una sustitucin homofnica es posible identificar los
signos homfonos aquellos que reemplazan la misma letra del texto en claro- a partir de
texto cifrado nicamente. Por ejemplo, imaginemos que disponemos de varias cartas
cifradas en la correspondencia que mantuvieron el duque de Mantua y Simeone de
24
2. EL NOMENCLTOR
Crema. En tales cartas es muy posible que el mismo nombre de alguna persona o lugar
apareciera varias veces. Para concretar, muy probablemente el texto duquedemantua
figurara en varias ocasiones; aunque cifrado de diferentes modos, en virtud del uso de
homfonos. Pero como en la sustitucin empleada las consonantes slo disponen de un
signo para reemplazarlas, todos los fragmentos de texto cifrado que procedan del texto
pleno duquedemantua tendrn en comn los signos que cambian las letras d, q,
m, n y t. Y que son: u, h, l, m y e, respectivamente. Por tanto, coincidirn
con el siguiente fragmento patrn:
u * h * * u * l * me
(Se ha colocado un asterisco en los lugares que ocupan los signos homfonos que
sustituyen a las vocales).
En consecuencia, es muy posible que las cartas cifradas incluyan fragmentos que
respondan a ese patrn. Supongamos que efectivamente sea as y que hemos identificado
varios de ellos. Por ejemplo, los tres siguientes:
u d h ff t u 4 l z m e
u I h d 4 u F l 3me
u ff h ~ 4 u t l 2 m e
Entonces podemos deducir que los signos que figuran en los lugares de los
asteriscos en el fragmento patrn son homfonos. As, son homfonos los signos que en
cada uno de los fragmentos ocupan la segunda posicin, la cuarta, quinta, sptima y
novena, respectivamente. En consecuencia, son homfonos d, I, ff y ~.
Igualmente lo son t, 4, 4 y F. Y tambin z, 3 y 2.
Esta es la manera de identificar signos homfonos en una sustitucin homofnica:
buscar fragmentos de texto cifrado en los que haya coincidencias de varios caracteres.
Los smbolos intercalados no coincidentes son homfonos.
Segn se van identificando homfonos, conviene ir cambiando en los textos
cifrados todos los signos de un grupo homfono por un nico smbolo elegido dentro del
grupo. Se habrn identificado todos los caracteres homfonos cuando el nmero de signos
resultante en los textos cifrados no supere al nmero de letras del alfabeto en claro.
Entonces, se estar ante un cifrado por sustitucin simple que ya puede ser
criptoanalizado mediante el anlisis de frecuencias.
Naturalmente, el proceso anterior slo es factible si en los criptogramas hay
fragmentos que proceden de reiteraciones de palabras de los textos en claro. Ello requiere
disponer de suficiente cantidad de texto cifrado; la cual depender del nmero de letras
del alfabeto pleno que utilizan homfonos en su sustitucin. Obviamente, cuanto mayor
sea este nmero, mayor ser tambin la cantidad de texto cifrado necesaria.
25
2. EL NOMENCLTOR
Vemos as que una sustitucin homofnica puede ser atacada por las inevitables
repeticiones de algunas palabras, como sucede con los nombres propios. Pero a grandes
males, grandes remedios: cmbiese cada una de las palabras cuya reiteracin es ineludible
por un nuevo signo. Y as se hizo.
Esta idea aparece por primera vez a finales del siglo XIV. Por aquel entonces,
Gabriel de Lavinde, secretario de Clemente VII, uno de los dos papas en el gran cisma de
la Iglesia Catlica, prepar una serie de claves para la correspondencia de este papa con
diversas personalidades de la poca. Las claves eran sustituciones simples (no
homofnicas) a las que se aada una lista conteniendo una docena de palabras y sus
correspondientes signos para reemplazarlas. Se incluan tambin en el alfabeto de cifrado
otros caracteres llamados nulos, que no sustituyen a nada y que se colocan en cualquier
lugar del texto cifrado con el propsito de dificultar el criptoanlisis. Las claves de
Lavinde constituyen los primeros ejemplos de lo que en Criptografa se llama
nomencltor.
Un nomencltor es entonces un catlogo de sustituciones donde, adems de los
signos que cambian a las letras, figuran otros que o bien son nulos o reemplazan a
bigramas, trigramas, palabras o incluso grupos de palabras. La Figura 2.2 muestra un
nomencltor espaol compilado en Toledo en 1563. El nomencltor fue el sistema de
cifrado predominante hasta mediados del siglo XIX, hasta que el empleo del telgrafo en
las comunicaciones oblig al diseo de otros criptosistemas ms adecuados.
Como cualquier sustitucin, un nomencltor est comprometido si alguien es capaz
de hacerse con texto en claro y su correspondiente cifrado. La seguridad ante un ataque de
texto cifrado depende del nmero de sustituciones que contenga, evidentemente. Un
nomencltor que presente slo unas pocas sustituciones caer ante un criptoanalista que
disponga de suficiente texto cifrado y paciencia. Pero si contiene un nmero elevado de
signos homfonos para las letras, bigramas y trigramas ms frecuentes; si en la lista de
palabras del nomencltor estn todas aquellas de uso comn en el contexto del mensaje,
incluyendo los nombres propios; y si se dispone de un buen nmero de signos nulos que
se dispersan adecuadamente por los textos cifrados, el criptoanlisis ante texto cifrado
nicamente ser dificilsimo, prcticamente imposible. Claro que ello eleva a varios miles
el nmero de sustituciones que debe tener el nomencltor. ste ser entonces un libro con
unas cuantas pginas que, naturalmente, habr que confeccionar y mantener en secreto.
Esto tambin es dificilsimo, de nuevo prcticamente imposible. Y siempre estar
comprometido ante la posibilidad de que algunos textos plenos caigan en manos
enemigas.
Los primeros nomencltores de la Italia del siglo XV siguieron el modelo elaborado
por Lavinde, con sustituciones sin homfonos y listas con muy pocas palabras. Seguro
que fueron presa fcil para los criptoanalistas italianos de la poca. Paulatinamente fueron
incorporando caracteres homfonos, primero para las vocales y despus para las
consonantes. Pero ello nos adentra ya en el siglo XVI. Un tpico nomencltor italiano de
entonces es el que se muestra en la Figura 2.3. Ya presenta cierta dificultad su
criptoanlisis.
26
2. EL NOMENCLTOR
27
2. EL NOMENCLTOR
28
2. EL NOMENCLTOR
2. EL NOMENCLTOR
comn y una regla que indica como insertar nulos en los textos cifrados. Sin embargo, los
nomencltores de Felipe II tambin presentaban descuidos en su diseo que facilitaban su
criptoanlisis. Por ejemplo, en el nomencltor de la Figura 2.4, el modo de cifrar los
bigramas compromete claramente su seguridad: ntese que cada bigrama compuesto por
una consonante y una vocal se cifra con el mismo signo que se utiliza para reemplazar a
dicha consonante y con una marca alrededor de dicho signo en funcin de la vocal. Una
debilidad. Se deberan haber utilizado signos totalmente distintos para cada uno de estos
bigramas. Una observacin similar puede hacerse con los trigramas. Tambin hubiese
sido conveniente emplear homfonos para las consonantes ms frecuentes.
No obstante, a pesar de sus deficiencias, los nomencltores de Felipe II eran los ms
seguros de su poca. No era fcil su criptoanlisis con texto cifrado nicamente; aunque
hubo quienes lo hicieron. Uno de ellos fue el francs Franois Vite, ms conocido como
matemtico que como criptoanalista. Vite resolvi varios nomencltores usados por
Felipe II. Entre ellos, el que emple el rey en 1589 para comunicarse con Alejandro
Farnesio, duque de Parma, que comandaba las tropas espaolas de la Santa Liga contra el
rey francs Enrique IV. Tard seis meses en hacerlo. Cuenta la Historia que Felipe II,
enterado de la ruptura de sus cifras por Vite y creyendo que stas eran indescifrables,
supuso que el matemtico galo deba emplear la brujera en el criptoanlisis y solicit al
Papa su excomunin. Naturalmente, el Pontfice no atendi esta peticin. Pero no por
considerar absurda la existencia de la magia negra; sino porque saba que las cifras
espaolas podan romperse sin recurrir a la brujera, ya que as lo estaba haciendo su
criptoanalista Giovanni Battista Argenti.
La historia de la Criptografa nos lleva en el siglo XVII a la Francia de Luis XIII
gobernada por el cardenal Richelieu. La astuta Eminencia de Francia tom a su servicio
a un joven experto en Criptografa, Antoine Rossignol, con el doble encargo de resolver
los criptogramas interceptados a los enemigos de Francia y disear las propias cifras
francesas. No era esto lo habitual en la Criptografa de estado. Por regla general, las
personas que confeccionaban los nomencltores no practicaban el criptoanlisis; y ello
explica las deficiencias en seguridad que presentaban algunas cifras. Si quien elabora un
criptosistema nunca ha roto ninguno, desconocer las bases del criptoanlisis y no pondr
especial cuidado en tapar aquellas grietas que pueda tener su criptosistema, las cuales
acaban siendo agujeros con el trabajo del criptoanalista. Incluso creer que sus cifras son
irrompibles, como pensaba Felipe II. Como criptoanalista, Rossignol resolvi numerosos
criptogramas; entre ellos, algunos interceptados a los hugonotes y que dieron clara ventaja
a las fuerzas catlicas de Richeleu en las guerras de religin del siglo XVII.
En esta poca, los nomencltores que se empleaban haban aumentado a varios
cientos el nmero de sustituciones, con el objeto de incrementar la seguridad. Este
elevado nmero de sustituciones hizo necesario el uso de nmeros en el alfabeto de
cifrado, convirtiendo de este modo los textos cifrados en secuencias numricas. Pero para
no complicar los procesos de cifrado y descifrado, los nomencltores se confeccionaban
de tal modo que haba una correlacin entre el orden alfabtico de los bigramas, trigramas
y palabras y el orden natural de los nmeros que las reemplazaban. Por ejemplo, si en un
nomencltor la palabra Espaa se cambiaba por 325, muy posiblemente el nmero 326
30
2. EL NOMENCLTOR
2. EL NOMENCLTOR
32
2. EL NOMENCLTOR
2. EL NOMENCLTOR
34
3
CIFRADOS POLIALFABTICOS
35
3. CIFRADOS POLIALFABTICOS
Tanto el emisor como el receptor deben tener discos idnticos y convenir en una
letra del disco mvil, la k por ejemplo. Para cifrar, el emisor elige una letra en el disco
grande; la escribe en maysculas al comienzo del texto cifrado para informar al receptor
de esta eleccin; y gira el disco pequeo hasta situar la k junto a la letra escogida.
Despus, cifra tres o cuatro palabras del texto en claro segn la correspondencia de letras
determinada por la posicin de los discos; y traslada al criptograma las letras minsculas
obtenidas. Repite de nuevo esta operacin: elige otra letra en el disco grande, la escribe en
36
3. CIFRADOS POLIALFABTICOS
maysculas en el texto cifrado, gira el disco mvil hasta hacer casar la k con esa letra, y
cifra otras tres o cuatro palabras con la nueva correspondencia. Y as contina, girando el
disco menor y cifrando palabras del texto en claro hasta agotar ste. El cifrado que resulta
es polialfabtico porque los giros del disco menor traen sucesivas sustituciones, todas
diferentes.
Para qu sirven los cuatro dgitos del disco grande? Alberti incluye en su escrito
una tabla con nmeros de dos, tres y cuatro cifras; conteniendo slo los dgitos del 1 al 4.
En total, 336 nmeros. Al lado de cada uno va una palabra o grupo de palabras de uso
comn en la correspondencia oficial de la poca. La idea de Alberti es reemplazar estas
expresiones en los textos en claro por el nmero asociado y cifrar tambin ste con sus
discos. Por ejemplo, con los discos en la posicin mostrada en la Figura 3.1, si el nmero
421 representa EL PAPA, este fragmento se cifra retp.
Alberti crea irrompible su cifrado siempre que permaneciera secreto el orden de las
letras del disco mvil. Naturalmente, esto no es as. La idea de los discos es muy
interesante y ser aprovechada ms adelante por otros criptlogos; pero no lo es el modo
en que Alberti los utiliza. Por ejemplo, se puede aumentar considerablemente la seguridad
si en lugar de elegir letras en el disco grande y escribirlas en el texto cifrado, se emplean
las letras de una palabra clave convenida entre el emisor y el receptor. An as, el cifrado
de Alberti es mucho ms seguro que los nomencltores empleados en su poca y tiene el
mrito de ser el primer cifrado polialfabtico de la historia de la Criptografa.
El siguiente cifrado que presentamos fue concebido por el monje benedictino
alemn Johannes Trithemius. Este prolfico escritor contempl la Criptografa como parte
de lo esotrico, tema por el que tena gran inters y al que dedic los ocho volmenes que
componen su Steganografa. Escrito en 1499, fue un libro famoso que circul en forma
manuscrita por toda Europa y termin siendo prohibido por la Iglesia Catlica en 1609.
En l figuran tambin algunas formas de Criptografa. A esta materia consagr un libro de
seis tomos que titul Poligrafa y que escribi en 1508. En el quinto libro aparece la
tabla mostrada en la Figura 3.2, que se utiliza para una forma de cifrar que merece la pena
ser destacada.
Las 24 filas de esta tabla son alfabetos de cifrado que Trithemius utiliza de un modo
muy simple. Cifra la primera letra del texto en claro con el primer alfabeto, la segunda
letra con el segundo alfabeto y as sucesivamente. Con esta regla, el texto en claro
SECRETO se transforma en sfeuiwu. Observemos como la primera e del texto en
claro se cambia por una f y la segunda por una i, lo que muestra el carcter
polialfabtico del cifrado.
37
3. CIFRADOS POLIALFABTICOS
38
3. CIFRADOS POLIALFABTICOS
Para simplificar, en este ejemplo la clave ha constado de una nica palabra. Belaso
propuso emplear claves formadas por varias palabras fciles de recordar. Tambin
recomend variar la clave frecuentemente; y ello hace que Belaso sea el primer autor que
dise un criptosistema en el que las claves cambian peridicamente.
Ms o menos al mismo tiempo que Belaso, el fsico y matemtico milans Girolamo
Cardano sugiere emplear la tabla de Trithemius usando como clave el propio texto en
claro; cifrando cada una de sus palabras con el principio del mismo, segn muestra el
siguiente ejemplo:
Clave:
SIC
Texto claro:
SIC
Texto cifrado: l r e
SICE
ERGO
yais
SICERGOEL
ELEMENTIS
ytgqxthnd
39
3. CIFRADOS POLIALFABTICOS
AB
abcdefghilm
nopqrstvxyz
OP
abcdefghilm
stvxyznopqr
CD
abcdefghilm
znopqrstvxy
QR
abcdefghilm
rstvxyznopq
EF
abcdefghilm
yznopqrstvx
ST
abcdefghilm
qrstvxyznop
GH
abcdefghilm
xyznopqrstv
VX
abcdefghilm
pqrstvxyzno
IL
abcdefghilm
vxyznopqrst
YZ
abcdefghilm
opqrstvxyzn
MN
abcdefghilm
tvxyznopqrs
Tabla 3.1. Los once alfabetos de Porta.
Porta utiliza esta tabla de manera similar a como Belaso emplea la de Trithemius.
Fijada una clave, cada letra del texto en claro se localiza en el alfabeto determinado por la
correspondiente letra de la clave y se reemplaza por la que est en la misma columna. El
siguiente ejemplo aclara cualquier duda:
Clave:
PORTAPORTAPORTAPORT
Texto claro:
DEFVRTIVISLITERARVM
Texto cifrado: x y y e e b p d n f q p c v e s m d p
El autor del siglo XVI que ms fama ha cobrado en la historia de la Criptografa es
el francs Blaise de Vigenre (1523-1596). Diplomtico de la corte francesa en Roma
desde los 26 aos, decide abandonar esta ocupacin a los 47 y dedicarse exclusivamente a
sus estudios y escritos. Entre stos, el que interesa aqu es el voluminoso Traict des
chiffres; publicado en 1585 y en el que, adems de la materia indicada en el ttulo, se
tratan cuestiones de alquimia, magia y otras artes ocultas. Ello sugiere pensar que quizs
el diplomtico francs conceba la Criptografa como parte de lo esotrico, al igual que
Trithemius. En cualquier caso, entre los numerosos cifrados que aparecen en su libro,
describe uno polialfabtico que l mismo denomin le chiffre indchiffrable y que la
Criptografa actual lo conoce como cifrado de Vigenre.
En realidad, el cifrado de Vigenre no es sino la cifra propuesta por Belaso,
empleando una tabla similar a la de Trithemius; pero no necesariamente con las letras de
los alfabetos dispuestas en el orden habitual, sino siguiendo otras ordenaciones
convenidas entre el emisor y el receptor. Un ejemplo de tabla de Vigenre es la Tabla 3.2.
En ella, hemos ordenado los alfabetos de cifrado a partir de la palabra cryptografia. La
primera fila de letras maysculas constituye el alfabeto en claro. Sus letras van en el
orden habitual, pero igualmente podran ir en otro orden. Las letras maysculas de la
primera columna identifican al alfabeto de cifrado que sigue a continuacin.
40
3. CIFRADOS POLIALFABTICOS
A B C D E F G H I J K L MN O P Q R S T U VWX Y Z
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
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
s
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
u
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
v
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
w
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
x
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
z
c
r
y
p
t
o
g
a
f
i
b
d
e
h
j
k
l
m
n
q
s
u
v
w
x
Para cifrar, las tablas de Vigenre se emplean igual que la de Trithemius: fijada una
clave, cada letra del texto en claro se reemplaza por la que est en su misma columna y en
la fila determinada por la correspondiente letra de la clave. Empleando la Tabla 3.2 y la
clave TRITHEMIUS, un ejemplo de cifrado es el siguiente:
Clave:
TRITHEMIUSTRITHE
Texto claro:
BLAISEDEVIGENERE
Texto cifrado: s y f r z f k e l c z u s w x f
Curiosamente, una tabla de Vigenre como la 3.2 equivale a un disco como el
ideado por Alberti. Para observarlo, fijmonos en la Figura 3.1. La sustitucin mostrada
es la siguiente:
41
3. CIFRADOS POLIALFABTICOS
ABCDEFGILMNOPQRSTVXZ1234
dlgazenbosfchtyqixkvp&mr
Imaginemos que a partir de esta transformacin construimos un cuadrado de
Vigenre siendo esta sustitucin la primera de ellas, la identificada con la letra A.
Entonces la segunda transformacin, la correspondiente a la letra B, se obtiene
desplazando una posicin hacia la izquierda las letras del alfabeto de cifrado y colocando
en ltimo lugar la d. Justamente la misma sustitucin que se consigue girando el disco
interno de la Figura 3.1 una posicin en sentido contrario a como se mueven las agujas de
un reloj. As pues, las sustituciones proporcionadas por la tabla y el disco son las mismas.
Por tanto, la diferencia entre el cifrado de Alberti y el de Vigenre, lo que hace al
segundo mucho ms seguro que el primero, es el nmero de claves que se maneja en cada
caso. En el de Alberti la clave se reduce a una letra elegida entre 24 posibles, la que
convienen el emisor y el receptor para casar los discos. En el de Vigenre hay una
infinidad, puede ser un grupo palabras de cualquier longitud. De hecho, el propio
Vigenre recomendaba, al igual que Belaso, emplear claves largas como, por ejemplo,
lneas de poesa o fechas completas que, adems, convena variar frecuentemente. Otra
posibilidad que contempl fue el uso de autoclaves.
Muchos textos actuales identifican la cifra propuesta por Vigenre con la de Belaso.
Como ya hemos dicho antes, la nica diferencia estriba en que la cifra de Vigenre
emplea alfabetos no ordenados en el modo habitual; pero ello aumenta considerablemente
la seguridad del criptosistema resultante.
Con Vigenre concluye la lista de autores renacentistas que recomiendan los
cifrados polialfabticos como alternativa al nomencltor en el reinado del pas de las
cifras. Propuesta totalmente ignorada por los nobles de este reino que, al seguir
prefiriendo como monarca al viejo nomencltor, confinaron los libros anteriores a la
oscuridad de las cmaras negras. Y ah permanecieron hasta que, a mediados del siglo
XIX, los ejrcitos europeos demandaron otras formas de cifrado que dieran proteccin a
sus recin estrenadas comunicaciones telegrficas. sta fue la oportunidad de los viejos
cifrados polialfabticos, que al fin alcanzaron la gloria deseada por sus creadores. Pero
por poco tiempo, ya que no eran tan indescifrables como stos aseguraban. Naturalmente,
esta condicin de indescifrable la entendan ante un ataque con texto cifrado nicamente;
ya que es evidente que los cifrados anteriores caen fcilmente ante un ataque con texto
claro.
En 1863, un veterano del ejrcito prusiano, el mayor Friedrich Wilhelm Kasiski, da
el primer paso hacia el criptoanlisis de los cifrados polialfabticos dentro de un libro de
95 pginas titulado Die Geheimschriften und die Dechiffrirkunst (La escritura secreta
y el arte del desciframiento). Este primer paso no es sino encontrar la longitud de la
clave empleada. Como bien observa Kasiski, si dos fragmentos iguales del texto en claro
distan uno de otro un mltiplo de la longitud de la clave, entonces sus transformados del
texto cifrado tambin son idnticos. En consecuencia, si en un criptograma hay bloques
repetidos, la longitud de la clave debe dividir al mximo comn divisor de las distancias
entre fragmentos iguales. Esto permite su clculo.
42
3. CIFRADOS POLIALFABTICOS
Algunos autores opinan que este mtodo de Kasiski para encontrar la longitud de la
clave haba sido descubierto 17 aos antes por Charles Babbage, un excntrico cientfico
ingls que invirti la mayor parte de su tiempo en extravagancias como determinar los
climas del pasado estudiando la anchura de los anillos de los troncos de los rboles, o
disear una mquina calculadora que en cierto modo poda ser programable. Estos
mismos escritores afirman que gracias a Babbage el ejrcito ingls pudo penetrar en las
cifras rusas durante la guerra de Crimea, en la que el ejrcito del zar Nicols I emple un
cifrado de Vigenre con alfabetos estndar (la cifra original de Belaso).
No obstante, el problema de encontrar la longitud de la clave se resuelve de un
modo definitivo mediante el llamado ndice de coincidencia de un texto, concepto
introducido por el gran criptoanalista del ejrcito americano William Friedman en la
dcada de los aos veinte. Se define como la probabilidad de que dos de sus letras
elegidas al azar coincidan.
Mostremos como calcular el ndice de coincidencia con un ejemplo; con el siguiente
fragmento de texto, con el que comienza El Quijote:
En un lugar de la Mancha, de cuyo nombre no quiero acordarme, no ha
mucho tiempo que viva un hidalgo de los de lanza en astillero, adarga
antigua, rocn flaco y galgo corredor. Una olla de algo ms vaca que carnero,
salpicn las ms noches, duelos y quebrantos los sbados, lentejas los
viernes, algn palomino de aadidura los domingos, consuman las tres
cuartas partes de su hacienda...
Calculemos en primer lugar la probabilidad de que al elegir dos letras al azar, stas
sean dos aes. Segn la regla de Laplace, dicha probabilidad es el cociente entre el nmero
de casos favorables y el de posibles. Obtengamos primero el nmero de casos posibles.
Como el texto consta de 311 letras, hay este mismo nmero de opciones para una primera
letra. Elegida sta, restan 310 posibilidades para la segunda. En total: 311310 = 96410
modos distintos de hacerlo. Ahora bien, escoger como primera letra una a y luego una b
da lugar al mismo par que si se elige primero una b y a continuacin una a. Por tanto, la
cantidad anterior ha de dividirse por dos para determinar el nmero de pares distintos
resultantes: 96410/ 2 = 48205. ste es el nmero de casos posibles. Determinemos ahora
el nmero de casos favorables; esto es, cuntos de esos pares son dos aes? El
razonamiento es el mismo. Como hay 45 aes, tal cantidad es entonces 4544 / 2 = 990. As
pues, la probabilidad de al elegir dos letras en fragmento anterior, stas sean dos aes:
990 / 48205 = 0,02053. Del mismo modo se calcula la probabilidad de que las dos letras
elegidas sean dos bes, dos ces, etc. Y sumando las 27 cantidades obtenidas se obtiene el
ndice de coincidencia del fragmento: 0,07076.
Notemos que la argumentacin anterior proporciona una frmula general para
determinar el ndice de coincidencia de un texto. Es la siguiente:
43
3. CIFRADOS POLIALFABTICOS
IC =
f a ( f a 1) + f b ( f b 1) + ... + f z ( f z 1)
,
n(n 1)
donde fa, fb, ..., fz son las frecuencias de las letras y n es la longitud del texto (el nmero de
letras que tiene).
Si en lugar del fragmento anterior hubisemos extrado de El Quijote un texto de
gran tamao, las frecuencias de sus letras estaran muy prximas al patrn de frecuencias
de nuestro idioma que mostramos en la Tabla 1.3, incluida en el primer captulo. Por
ejemplo, el nmero de aes presentes en l sera muy cercano a 0,12529n (siendo n el
nmero total de letras); y la probabilidad de que al escoger dos de sus letras stas sean dos
aes, estara muy prxima al cuadrado de 0,12529. La misma observacin es vlida para
cualquier otra letra. Se sigue entonces que el ndice de coincidencia del texto sera
prcticamente igual a la suma de los cuadrados de los nmeros que figuran en la
mencionada Tabla 1.3. Suma a la que podemos convenir en llamar ndice de coincidencia
del espaol. Su valor, junto al del ingls, francs y alemn, se incluye en la siguiente
tabla:
Ingls
0,0685
Espaol
0,0755
Francs
0,0793
Alemn
0,0736
No slo los textos de gran tamao presentan ndices prximos a los presentados en
esta tabla. Por lo general, es suficiente que un texto contenga un par de cientos de letras
para su ndice de coincidencia est a distancia inferior a 0,01 del ndice del idioma en que
se ha escrito. Lo podemos observar en el pequeo fragmento anterior extrado de El
Quijote. Y es frecuente que esto suceda incluso con textos ms cortos, con apenas unas
decenas de letras.
Ahora consideremos un texto en el que sus letras se han elegido aleatoriamente,
todas con igual probabilidad. En tal caso, si su longitud es suficientemente grande, en
dicho texto figuran todas las letras del alfabeto y con una frecuencia similar, cercana a
n/27 (suponiendo que en el texto hay n letras y en el alfabeto 27). Se deduce entonces que
su ndice de coincidencia est prximo a 1/27 = 0,037.
Cuando ciframos un texto por sustitucin, las frecuencias de sus letras se mantienen
en el texto cifrado resultante y, en consecuencia, el ndice de coincidencia tambin; y es
cercano a 0,0755 (considerando que el texto en claro est escrito en espaol). Pero si se
emplea un sistema polialfabtico, entonces resulta una distribucin de frecuencias
parecida a la de un texto aleatorio; ya que las frecuencias ms altas del texto en claro se
reparten entre varias letras del criptograma. Por tanto, su ndice de coincidencia est ms
prximo a 0,037 que a 0,0755. Ahora bien, si del criptograma extraemos todas las letras
cifradas con un mismo alfabeto y calculamos su ndice de coincidencia, nos acercamos de
nuevo al valor 0,0755. Este simple hecho permite determinar la longitud de la clave en un
44
3. CIFRADOS POLIALFABTICOS
Hemos subrayado tres bloques que aparecen repetidos dos veces todos ellos. Uno de
seis letras, fdcgrb, en las posiciones 174 y 384; y otros dos de cinco letras, dyrms,
en los lugares 60 y 480; y yhgez, en las posiciones 449 y 503. La diferencia entre estas
posiciones es, respectivamente, 210, 420 y 54. El mximo comn divisor de estos tres
nmeros es 6 y, segn la observacin de Kasiski, la longitud de la clave muy bien puede
ser este nmero o uno de sus divisores. El clculo de ndices de coincidencia lo
confirmar. Para ello, escribamos el texto cifrado de arriba abajo, formando un rectngulo
con seis filas y dando lugar a 6 subtextos T1, T2, ..., T6:
T1:
T2:
T3:
T4:
T5:
T6:
adchkkhckcykhwyakdjcokyhjkxkrdwcdkydyyqw
dnddqupfpriubqbfuosfmdppsbucupppqnesqf
ithumfhmrsmthmfofhifmutzmjkjzghmojoofmmt
armsgpfpnisjnrhpjjjgsnjiknnnjrmtdruhnxhj
wtpbtotoevxzevdorzzodjpvvazpbetaovntin
ohbfueedsudduurkryhhsphuofycuucudhdh
...
...
...
...
...
...
Si la longitud de la clave es 6, las letras del texto en claro situadas en las posiciones
1, 7, 13... se cifran todas ellas con el mismo alfabeto, el determinado por la primera letra
de la clave. Sus correspondientes cifradas determinan la primera fila del rectngulo, el
texto que denotamos T1. Del mismo modo, el texto T2 corresponde a las letras del texto en
claro que se cifran con el alfabeto determinado por la segunda letra de la clave. Y as
sucesivamente. Si la longitud de la clave es un divisor de 6, por ejemplo 3, entonces
45
3. CIFRADOS POLIALFABTICOS
tambin todas las letras de cada texto Ti proceden de letras del texto en claro cifradas con
el mismo alfabeto. Sucede que, en este caso, los textos T1 y T4 corresponden al mismo
alfabeto, T2 y T5 a otro alfabeto comn, y T3 y T6 a un tercero. Tanto si la longitud de la
clave es 6 como uno de sus divisores, cada uno de los textos Ti mantiene el ndice de
coincidencia del subtexto en claro del que procede. Puede suceder que estos ndices
presenten variaciones importantes respecto al del texto en claro completo; pero su media
est cercana a dicho nmero, el cual debe ser prximo a 0,0755. En otro caso, si la
longitud de la clave no es ni 6 ni ninguno de sus divisores, la media anterior se acercar
ms a 0,037. Por tanto, nuestra siguiente tarea es calcular los ndices de los textos Ti y
despus la media de estos nmeros. Ello pasa por efectuar sendos anlisis de frecuencias
para cada uno de los textos Ti. La Tabla 3.4 los recoge. En ella hemos ordenado las letras
que aparecen en cada subtexto por su frecuencia, que es el nmero que figura junto a cada
letra. En la ltima fila se indica el ndice de coincidencia de cada texto.
IC:
T1
T2
T3
T4
T5
T6
d:14
k:13
y:10
c: 7
q: 6
r: 6
g: 5
h: 5
j: 4
a: 3
u: 3
w: 3
o: 2
x: 2
f: 1
i: 1
n: 1
: 1
p:11
d: 9
u: 9
e: 7
s: 7
b: 6
f: 6
c: 4
h: 4
q: 4
i: 3
m: 3
n: 3
: 3
r: 2
l: 1
o: 1
v: 1
y: 1
z: 1
m:18
o:11
f: 9
t: 8
h: 6
z: 6
u: 5
j: 4
i: 3
k: 3
s: 3
y: 3
g: 2
n: 2
b: 1
r: 1
x: 1
j:15
n:14
r: 9
s: 7
p: 5
h: 4
i: 4
m: 4
a: 3
f: 3
g: 3
q: 3
d: 2
k: 2
u: 2
x: 2
l: 1
t: 1
v: 1
w: 1
t:11
v:10
o: 7
b: 6
z: 6
r: 5
y: 5
a: 4
: 4
p: 4
d: 3
e: 3
g: 3
l: 3
c: 2
h: 2
i: 2
n: 2
f: 1
j: 1
w: 1
x: 1
h:14
u:12
d:10
e: 7
: 7
f: 5
q: 5
r: 5
p: 4
c: 3
y: 3
b: 2
k: 2
o: 2
s: 2
i: 1
m: 1
t: 1
46
3. CIFRADOS POLIALFABTICOS
f a g a + fb gb + ... + f z g z
,
n m
donde fa, fb, ..., fz son las frecuencias de las letras de uno de los textos, n su longitud; ga,
gb, ..., gz las frecuencias del otro texto y m su longitud.
Si se calcula el ndice de coincidencia de dos textos escritos en nuestro idioma, su
valor est cercano a 0,0755. Este ndice no vara si ambos textos se cifran mediante una
misma sustitucin; pero si se cifra cada texto con una sustitucin diferente, el ndice de
coincidencia baja hasta el aleatorio: 0,037, incluso por debajo. Por tanto, el ndice de
coincidencia mutua sirve para averiguar si dos textos cifrados lo han sido con una misma
sustitucin. En nuestro ejemplo, el ndice de coincidencia mutua de T2 y T6 es 0,0645,
mucho ms cerca del ndice del espaol que del aleatorio. Ello confirma que, en efecto, T2
y T6 proceden del mismo alfabeto. Para las dems parejas de textos Ti el ndice de
coincidencia mutua ronda el aleatorio, lo que permite concluir que no hay ms alfabetos
coincidentes. As pues, la longitud de la clave es 6, aunque da lugar a slo cinco alfabetos
distintos ya que el segundo y el sexto son el mismo. Y ello es debido a que la segunda y
sexta letras de clave son tambin idnticas.
Hallada la longitud de la clave y el nmero de alfabetos distintos, el siguiente paso
en el criptoanlisis de un sistema polialfabtico es reconstruir cada uno de los alfabetos de
cifrado empleados. El proceso es similar al caso monoalfabtico. Primero ha de efectuarse
un anlisis de frecuencias de los bigramas y trigramas del texto cifrado, que ahora han de
clasificarse en tantos grupos como la longitud de la clave y en funcin de los alfabetos
que intervienen en el cifrado de cada una de sus letras. Si en estos grupos se identifican
los bigramas y trigramas ms habituales de nuestro idioma, entonces se podr hallar las
transformadas de las letras con ms frecuencia y asomar el texto en claro. Naturalmente,
esta tarea es ahora mucho ms compleja que en el caso monoalfabtico y el xito slo est
garantizado si se dispone de suficiente cantidad de texto cifrado. La prctica indica que
son necesarias al menos unas trescientas letras por cada alfabeto de cifrado presente en la
clave. Si no se dispone de esta cantidad, el reconocimiento de bigramas y trigramas es
muy difcil, puede que sea incluso cuestin de suerte. sta es precisamente la situacin
ante el criptograma que nos enfrentamos, cuya longitud es de 517 letras y 5 han sido los
alfabetos de cifrado empleados. No obstante, estos alfabetos forman parte de una tabla de
Vigenre y, por tanto, un alfabeto se puede obtener a partir de otro desplazando sus letras
un nmero determinado de posiciones. Veamos si podemos aprovechar esta debilidad.
En primer lugar, dado lo reducido del texto cifrado, ms til que un listado de
bigramas y trigramas es organizar las letras tal y como hemos hecho en la Tabla 3.5. Para
elaborarla, hemos partido de la Tabla 3.4 y hemos ido colocando a la derecha de sus letras
aquellas otras que las siguen en el texto cifrado, y a su izquierda las que anteceden. Por
ejemplo, la primera d del texto T1 aparece en el sptimo lugar del texto cifrado y junto a
47
3. CIFRADOS POLIALFABTICOS
ella una n a su derecha y una a su izquierda. Por eso, en la columna de T1, la primera
letra a la derecha de la d es una n y la primera a su izquierda una . La siguiente d de T1
figura en el texto cifrado acompaada de una f por la derecha y una r por la izquierda.
Estas son las letras que siguen a las anteriores en la fila de T1 que tiene a la d en el centro.
As pues, la Tabla 3.5 muestra con que otras letras se emparejan por la derecha y por la
izquierda cada una de las letras de los textos Ti.
An con la ayuda de la Tabla 3.5, reconocer en cada texto Ti las transformadas de
las letras ms frecuentes no es sencillo. Hay que ir poco a poco. Empecemos por
distinguir en cada texto Ti las letras que muy probablemente sean sustitutas de las
vocales. Las vocales e, a y o son, por este orden, las tres letras ms frecuentes en nuestro
idioma y pueden casar tanto por la derecha como por la izquierda con cualquier otra
letra. Sus transformadas en cada alfabeto deben verse en la Tabla 3.5 rodeadas por ambos
lados con muchas y distintas letras, y tambin flanqueando a otras que deben
corresponder con las consonantes poco frecuentes. En la columna del texto T1 es claro
que las dos letras ms frecuentes, d y k, cumplen estas caractersticas; pero presenta ms
dudas la siguiente en frecuencia, la y. Aunque esta letra esta rodeada por otras diez, a su
izquierda no hay ms que cinco diferentes; y no figura a la derecha de las consonantes
poco frecuentes del texto T6. Puede que sea sustituta de una consonante. En la columna
correspondiente a T2 la situacin es ms complicada. Pero aqu podemos usar el hecho
que los alfabetos segundo y sexto coinciden. Sumando las frecuencias de las letras de T2 y
T6, las dos ms frecuentes son u y d, por este orden. Observando estas letras tanto en T2
como en T6, no cabe duda que representan vocales. Lo mismo que m y o en T3, j y n en
T4, y t y v en T5.
48
3. CIFRADOS POLIALFABTICOS
T1
T2
qqqbrffeccfr-d-nfcpnfdcpymni*
qrihuuhusefb-k-qfifpbplppb
deepduuhdd-y-rqmqeshbdr
cyreo-c-dppopp
khhhh-q-qchfde
rftqo-r-uhzdiv
hhude-g-euuee
hsuuh-h-duudu
mppk-j-upcu
uu*-a-dbd
hdu-u-msb
dyd-w-buf
py-o-ss
uh-x-ss
d-f-e
e-i-h
h-n-s
d--e
kdckkdckjcc-p-msmjmojfsok
qydrahhca-d-ihuznmxzm
hjggwrjhh-u-hhizhuumj
gqgfgy-e-fozfzyz
nuxoyxo-s-mkmmhnm
kuykaw-b-mojmoy
dqwkdk-f-rhutof
djqd-c-gomg
riqy-h-ybfk
qyyk-q-mfom
drk-i-tst
duy-m-ttt
ddd-n-tot
ckk--ffu
yy-r-mm
k-l-m
c-o-f
r-v-o
d-y-i
r-z-o
T3
rudsbdcslqsppsbrpq-m-gpsrsktxhrsgaxnrrs
bvpfzcenqpb-o-pduhpqdnhis
efhpeoq-f-phjgnqkfs
inmmfmin-t-rjjjjjnj
sufuud-h-mfnjml
eedeud-z-ijnvnj
uufd-u-snjmn
upbp-j-nnrm
yud-i-aja
phs-k-njj
ipp-s-iiu
beh-y-qjw
cc-g-rr
sd-n-rn
h-b-p
f-r-n
d-x-f
T5
T4
zykttukttztihft-j-zrzzpnczrgyyz
mztunzofjkjuhr-n-eejazpglyrrg
mmgnmjgmt-r-tvbolvbtt
omfmmmu-s-bxdahiy
boomf-p-ooooo
omof-h-dniv
oszs-i-vvbb
juhh-m-pela
imi-a-wpf
xfh-f-tct
mfm-g-tov
oyf-q-tyv
oo-d-ad
fm-k-vt
so-u-vt
mm-x-th
h-l-v
m-t-t
z-v-b
y-w-r
T6
rrufkqxtfgr-t-ofchyqcrmd
hgqlrukiri-v-ddpcip
pprgppp-o-ueuyuue
irvirs-b-bypfdb
jjnjjj-z-ukrutq
wnnjj-r-rpqrq
sjjnq-y-uuhhh
msdn-a-huuh
jnnj--fdrh
anjm-p-hsod
dsh-d-uhh
mnn-e-ed
njn-g-ddh
mnr-l-eee
fj-c-he
sx-h-fq
sh-i-dk
jh-n-uh
a-f-f
n-j-h
a-w-
s-x-s
yaygydcntajdp-h-hkyxqkqqgnqhug
yyaonoazodzo-u-hhakkkyyaxug
tgbpgivev-d-ywyywgufy
lcloleo-e-kcgidyy
vvvevtw--dckcqrd
fbht-f-kdddr
rzrht-q-rddkd
rtzr-r-dcdrk
rvbv-p-joyj
tvt-c-ddc
tbo-y-owc
bb-b-kd
iz-k-jq
pt-o-cr
px-s-kh
v-i-k
t-m-j
z-t-r
49
3. CIFRADOS POLIALFABTICOS
En esta primera ronda hemos confirmado que sustituyen a vocales las dos letras ms
frecuentes de cada texto Ti. Continuemos con una segunda y sucesivas vueltas en las que
examinamos si son vocales o consonantes las letras que siguen en frecuencia. Ahora
conviene tener en cuenta el siguiente hecho diferencial entre vocales y consonantes
frecuentes (s, n, r, d, l...): stas no suelen seguir a otras consonantes, sino a las vocales
ms frecuentes que ya han sido descubiertas, lo contrario que sucede con el resto de las
vocales. Por tanto, si las vocales predominan en la fila de la izquierda de una letra, sta
muy probablemente ser una consonante y en otro caso una vocal. Por ejemplo, ahora es
claro que la y del texto T1 representa a una consonante: entre las diez letras a su izquierda
hay cuatro des y dos ues, letras de T6 que han resultado ser sustitutas de vocales. La h del
texto T6 debe representar a una vocal ya que entre las catorce letras a su izquierda slo
hay una t y ninguna v. En fin, observando con cuidado la Tabla 3.5 se puede determinar,
con una alta probabilidad, si son vocales o consonantes las letras ms frecuentes de cada
uno de los textos Ti y consignarlo en una tabla como la que sigue a continuacin.
Naturalmente, podemos estar equivocados con alguna letra; pero seguro que hemos
acertado en la mayora:
Textos:
1
2, 6
3
4
5
Vocales:
d
u
m
j
t
k
d
o
n
v
c r
h e s
f t
o b
Consonantes:
y
p
h
r
z
q g h
f
z
s p h
r
50
3. CIFRADOS POLIALFABTICOS
k
u
m
j
j
s
t
m
p
Tanto esfuerzo para rellenar unas pocas casillas! S, as es; pero enseguida
colocaremos ms letras en esta tabla. Hagamos ahora uso del hecho que los alfabetos
forman parte de una tabla de Vigenre y que en ella se tiene la siguiente propiedad, que
algunos textos denominan simetra de la posicin: la distancia entre dos letras dadas es
constante en todas sus filas. (Obsrvese esta sencilla propiedad en la Tabla 3.2.) En el
primer alfabeto vemos la j diecisiete casillas a la derecha de la k. Esta misma distancia
deben mantener estas dos letras en todos los alfabetos. En particular en el cuarto, lo que
sita una k en su fila, en la columna de la . Del mismo modo se traslada la p del cuarto
alfabeto al primero, manteniendo la distancia con la j. Y ms juego da la simetra de la
posicin con el segundo y tercer alfabetos, gracias a la m. En consecuencia, la tabla de
sustituciones contiene ya menos casillas vacas:
A B C D E F G H I J K L MN O P Q R S T U VWX Y Z
1
2, 6
3
4
5
k
u
m
j
p
t e
s
m
u
k
j
s
t e
p
o
51
3. CIFRADOS POLIALFABTICOS
k
u
m
j
p
t e
s
f
h
d o
k
s
j
s
t e
m
u
p
d o
Vayamos ahora con las vocales del primer alfabeto. En l ya tenemos adjudicadas
sustitutas para la e y la u. La d es la letra ms frecuente en T1 y est catalogada como
vocal. No puede ir en la casilla de la A porque entonces los alfabetos primero y segundo
coincidiran y, como ya sabemos, no es as. Debe corresponder con la O y dejar libre la A
para la c o la r. La simetra de la posicin confirma esta deduccin y sugiere completar
las vocales situando la c en la cuadrcula de la A y la r en la de la I. La tabla de alfabetos
queda entonces as:
A B C D E F G H I J K L MN O P Q R S T U VWX Y Z
1
2, 6
3
4
5
c f
h k m
p r s
d o
u
d o
u
j t e
c f
h k m
p r
f
h k m
p r s
d o
u
j
u
j t e
c f
h k m
p r s
t e
c f
h k m
p r s
d
j t e
s
t e
o
c
d o
u
j
Llegados a este punto, hemos descubierto catorce letras en cada alfabeto, entre ellas
casi todas las vocales. Es el momento de comprobar si el criptoanlisis ha ido por buen
camino. Toca escribir debajo de cada lnea del criptograma otra de donde figuren las
letras del texto en claro ya descubiertas y observar que se obtiene. Esto es lo que hacemos
continuacin (hemos insertado un espacio en blanco cada seis letras para distinguir mejor
el alfabeto empleado en cada momento):
adiaw dntrto cdhmph hdusbb kqmgtf kfpou huhft cpmpoe
*A**** O*URAB AACOMO DARS** E*E*AN E*AQUE DECLA* ASEQUI
kfrnee cpsivd yrmsxs kitjzu huhned wbmrvd yqfhdu abopou
ENH*BI ASI**A *TES*U E*UE*E DEC*BA **ER*A **ANTE **OQUE
kfjrr dfhjzk juijzr cofgoy osmsdh kfunjh ymtjps hdzivp
E*AENT ONCE*P UE*E*T ABA*U* PUESTO ENR*ZO *QUEMU DA***S
52
3. CIFRADOS POLIALFABTICOS
53
4
CIFRADOS POLIGRFICOS
4. CIFRADOS POLIGRFICOS
ante la comodidad que supona el empleo de cdigos. Hacia 1860, los libros de cdigos
haban sustituido ya al viejo nomencltor. Naturalmente, los cdigos oficiales eran
reservados; su secreto era fundamental en la seguridad de las comunicaciones estatales. Y
si se deseaba mayor seguridad, se cifraba el cdigo resultante.
En Criptografa se distinguen dos clases de cdigos: los ordenados o de una parte,
y los desordenados o de dos partes. Los cdigos ordenados son aquellos en que tanto las
palabras de texto en claro como las series de nmeros o letras que las reemplazan van
ambas ordenadas; en los desordenados, en cambio, no se sigue esta correlacin. Estos
ltimos requieren dos partes. En una van ordenadas alfabticamente las palabras de texto
en claro y se usa para codificar; en la otra el orden lo siguen las series de nmeros o letras
y sirve para la descodificacin. Son como un diccionario bilinge. (Ntese que si el
cdigo es ordenado basta con una de las partes para codificar y descodificar, gracias al
doble orden.) Todos los cdigos comerciales eran de una sola parte, ya que son ms
fciles de elaborar. Los oficiales, en cambio, los haba tanto de una parte como de dos. La
razn de emplear cdigos de dos partes est en que proporcionan una seguridad mayor,
muy superior a los de una parte. En la Figura 4.1 se muestra una pgina de un cdigo
empleado por la armada britnica a principios del siglo XX. Es un cdigo de dos partes; la
pgina mostrada en la figura corresponde a la que sirve para la codificacin. Obsrvese
que algunas palabras como A, About o Above presentan homfonos. Los cdigos
oficiales solan incluir homfonos para las palabras ms frecuentes, con objeto de
dificultar su criptoanlisis.
El impacto del telgrafo en la Criptografa militar fue todava mayor. Por aquel
entonces, un nuevo escenario surgi en el terrible drama que suponen las guerras. De los
reducidos y lentos ejrcitos de las viejas monarquas se pas a grandes contingentes de
tropas que, gracias al ferrocarril, podan ser transportadas rpidamente desde largas
distancias. El campo de batalla ya no era visible por los generales desde una colina; era un
frente de muchos kilmetros que slo poda contemplarse en un mapa. La guerra ya no se
diriga in situ como antes; sino desde un cuartel general en la retaguardia, el cual era
tambin centro de comunicaciones. El telgrafo permita seguir al instante el desarrollo de
las batallas y, en base a esta evolucin, cursar rdenes a las tropas de modo inmediato.
Pero primero era imprescindible cifrar estas rdenes. Al enemigo le resultaba sencillo
interceptar las comunicaciones militares que viajaban a travs de los hilos telegrficos.
Los libros de cdigos no eran adecuados para este menester. Si caan en manos enemigas
tras la rendicin de una unidad, se comprometa la totalidad de las comunicaciones y
haba que editar y distribuir un nuevo cdigo. El tiempo que ello requiere evidencia la
ineficacia de cdigos en este contexto.
Era necesario emplear diferentes mtodos de cifrado. Tales mtodos deban ser
fciles de manejar en campaa y altamente seguros. Adems, era obligado que esta
seguridad dependiese nicamente de una clave que pudiese variar rpidamente y de modo
que, aunque el enemigo tuviese constancia del criptosistema empleado, el
desconocimiento de la clave impidiese el descifrado de los mensajes. Los mtodos de
cifrado destinados a ser empleados en el frente fueron llamados cifras de campo (field
ciphers, en ingls). Los ya estudiados cifrados polialfabticos eran ideales para utilizar
como cifras de campo, especialmente el de Vigenre o alguna de sus variantes. Fueron los
56
4. CIFRADOS POLIGRFICOS
que se utilizaron en los primeros das del telgrafo. Hasta que, en 1863, el oficial del
ejrcito prusiano Friedrich W. Kasiski dio a conocer un mtodo de criptoanlisis para la
sustitucin polialfabtica que desaconsej su uso. Se hizo entonces necesario idear otros
modos de cifrado.
57
4. CIFRADOS POLIGRFICOS
Los nuevos criptosistemas que fueron empleados como cifras de campo responden
en su mayora a dos modelos que contemplan los actuales libros de Criptografa y que
denominan, respectivamente, cifrados poligrficos y cifrados por transposicin.
Dedicamos el resto de este captulo a los primeros y reservamos el siguiente para los
segundos.
En un criptosistema poligrfico los textos en claro se dividen en bloques con igual
nmero de letras. A continuacin, cada uno de estos bloques se reemplaza por otro de
signos del alfabeto de cifrado, siguiendo las reglas que indique el criptosistema y
haciendo uso de la clave. La concatenacin de los bloques que resultan es el texto cifrado.
Los bloques de texto en claro no tienen porque tener la misma longitud que los del texto
cifrado, aunque es comn que ello suceda. Tal longitud suele ser un nmero pequeo; si
es dos, el cifrado se dice digrfico; si es tres, trigrfico; etc.
A ttulo de curiosidad, hay que sealar que el primer criptosistema poligrfico que
se conoce data de 1563. Fue dado a conocer por Giovanni Battista Porta en su libro De
Furtivis Literarum. Es un cifrado digrfico en el que dos letras se cambian por unos
curiosos signos, tal y como se muestra en la Figura 4.2.
58
4. CIFRADOS POLIGRFICOS
El primer criptosistema poligrfico diseado para servir como cifra de campo data
de 1854. Su autor fue el polifactico cientfico Charles Wheatstone, quien ya haba
construido un telgrafo antes que lo hiciera Morse. El criptosistema lleva el nombre de
cifrado Playfair en honor al barn Lyon Playfair, amigo de Wheatstone, quien lo dio a
conocer al gobierno britnico. Su ejrcito lo utiliz como cifra de campo en la guerra de
los Boer y en la Primera Guerra Mundial. Tambin lo emplearon varias armadas como
cifra de emergencia en la Segunda Guerra Mundial. Por ejemplo, cuando en esta
contienda, en Agosto de 1943, un crucero japons hundi la patrullera comandada por el
futuro presidente de los Estados Unidos, el entonces teniente John F. Kennedy, ste envi
un mensaje cifrado en Playfair solicitando rescate para los supervivientes de su
tripulacin.
La cifra Playfair es un criptosistema digrfico. Se parte de un cuadrado dividido en
25 casillas y en l se disponen las letras del alfabeto ordenadas como disponga la clave.
Puesto que el alfabeto ingls consta de 26 letras, Wheatstone propuso identificar bien la
I con la J, bien la U con la V, o bien la K con la Q. Por ejemplo, identificando la
I con la J puede considerarse el siguiente cuadrado:
P
59
4. CIFRADOS POLIGRFICOS
2. Si las dos letras se encuentran en la misma fila, se sustituye cada una de ellas por
la que se encuentra a su derecha. En este caso, si una de las letras es la ltima de su
fila, se reemplaza por la primera de dicha fila. As, en nuestro ejemplo, el par LF
se cambia por AP y ME por EG.
3. Si las letras se localizan en la misma columna, entonces se reemplaza cada una de
ellas por la que est debajo. Como en el caso anterior, si una de las letras es la
ltima de su columna, se cambia por la primera de tal columna. Con nuestro cuadro,
CS se cambia por KX y UN por PU.
De este modo, el texto pleno anterior AVISTADO BUQUE ENEMIGO se cifra
con la Tabla 4.1 como LWCNQFRTIWNWKUNUGERESV:
AV IS TA DO BU QU EX EN EM IG OX
LW CN QF RT IW NW KU NU GE RE SV
(En las transmisiones telegrficas, era costumbre agrupar el texto cifrado en bloques
de cinco letras e insertar un espacio en blanco entre dos bloques. Con ello se advertan
mejor los posibles errores debidos a una mala transmisin. Por ejemplo, el texto cifrado
anterior quedara as: LWCNQ FRTIW NWKUN UGERE SV.)
El descifrado de la cifra Playfair es similar al cifrado, distinguiendo tambin las tres
posibilidades anteriores. La nica diferencia est en los casos 2 3; ahora hay que
reemplazar las letras por las que encuentran a la izquierda o arriba, respectivamente. A
primera vista, la cifra Playfair puede parecer difcil de manejar; pero, con un poco de
prctica, cifrar y descifrar es sencillo.
La clave es cada una de las diferentes formas de colocar las 25 letras en el
cuadrado. Un razonamiento similar al que dimos en el Captulo 1 para contar el nmero
de claves en el cifrado por sustitucin, permite concluir que el nmero total de claves en
el cifrado Playfair es el factorial de 25: 25! = 2524...21. No obstante, hay diferentes
claves que dan lugar al mismo cifrado. Ello ocurre, por ejemplo, si las columnas del
cuadrado se reordenan segn la secuencia 2, 3, 4, 5 y 1. En general, sucede que dos
claves dan lugar a un mismo cifrado si una de ella se obtiene efectuando una rotacin
cclica de las filas o columnas de la otra, como en la secuencia anterior. Por tanto, hay 25
cuadrados que dan lugar al mismo cifrado. Contemplando entonces todos ellos como uno
solo, resulta que el nmero total de claves se reduce a
24! = 2423...21 = 620448401733239439360000.
En el ejemplo que hemos dado, la clave se form a partir de la palabra
PLAYFAIR. Como ya comentamos en el citado Captulo 1, esta estrategia para formar
claves facilita su memorizacin.
Al final del captulo mostraremos como criptoanalizar la cifra Playfair. Antes
describiremos otros criptosistemas poligrficos destinados a servir como cifras de campo.
60
4. CIFRADOS POLIGRFICOS
Como en la cifra Playfair, el texto en claro se divide en bloques de dos letras. Ahora
slo es necesario insertar una X al final del texto si el nmero de letras es impar. Para
cifrar un par, la primera letra se localiza en el primer cuadrado y la otra en el segundo. Si
ambas letras no estn en la misma fila, se procede como en la regla 1 de la cifra Playfair,
cambiando cada letra por la que est en su misma fila y en la columna de la otra letra. Si
las dos letras estn en la misma fila, se sustituye una por la otra. Con el ejemplo que
proporciona la Tabla 4.2, el par EN se transforma en OT; y el par AE en EA.
El mtodo de los dos cuadrados fue utilizado por los alemanes en la Segunda
Guerra Mundial, aunque con alguna variante. En la cifra que ellos denominaron
Doppelkastenschlssel, se comenzaba dividiendo el mensaje en grupos de un mismo
nmero de letras. El primer grupo se colocaba encima del segundo, el tercero sobre el
cuarto, etctera. Por ejemplo, si dividimos el mensaje en claro ENVIEN REFUERZOS
URGENTEMENTE en grupos de cinco letras, nos queda:
ENVIE
NREFU
ERZOS
URGEN
TEME
NTEX
Ahora se va cifrando cada par vertical. Se comienza con el par EN, despus NR,
luego VE, etctera. Con los dos cuadrados de la Tabla 4.2, el mensaje anterior se cifra
como OTNAYAFIUEUEHPVKCANSNTUTQPSZ.
En vedad, la Doppelkastenschlssel es un doble cifrado. La divisin del texto en
claro en grupos de un mismo nmero de letras y la posterior disposicin de estos grupos
segn se ha indicado, equivale a efectuar una reordenacin de las letras; esto es, a una
transposicin. As, si el nmero de letras de cada grupo es cinco, este proceso equivale a
reordenar el texto de este modo: 1 letra, 6 letra, 2 letra, 7 letra, 3 letra, 8 letra, etc.
Una vez sometido el texto en claro a esta transposicin, el resultado se vuelve a cifrar con
61
4. CIFRADOS POLIGRFICOS
el mtodo de los dos cuadrados. Como es de esperar, el cifrar un texto ms de una vez
persigue aumentar la fortaleza del criptosistema empleado.
En 1859, Pliny E. Chase, profesor de filosofa y lgica en Filadelfia, public en la
revista americana Mathematical Monthy el interesante criptosistema que describimos a
continuacin. Se parte de un rectngulo dividido en 30 casillas dispuestas en tres filas y
diez columnas. En las casillas se colocan las letras del alfabeto en el orden que determine
la clave. Para que no queden casillas vacas, se ampla previamente el alfabeto con
algunos signos hasta conseguir un total de 30 elementos, tantos como casillas. Uno de
estos signos puede ser el espacio en blanco, que podemos representar por el signo . Las
tres filas del rectngulo se enumeran 1, 2 y 3; y las columnas de 0 a 9. Un ejemplo de la
configuracin que se obtiene puede ser el siguiente:
&
Cada letra del alfabeto tiene ahora asociada un par de nmeros: los nmeros de la
fila y columna a las que pertenece. Son sus coordenadas. As, las coordenadas de la letra
H segn nuestro ejemplo son 3, 2; las de V son 2, 9.
Como hemos incluido el espacio en blanco en el alfabeto (representado con el signo
), no es necesario suprimir tales espacios en el texto a cifrar; nicamente hay que
eliminar los signos no incluidos en el alfabeto. A continuacin, el texto en claro se divide
en bloques con un nmero de letras acordado por el emisor y el receptor. Por ejemplo,
supongamos que este nmero es cuatro y que vamos a cifrar el texto ATAQUEN AL
AMANECER. Los bloques obtenidos son:
ATAQ
UEN
ALA
MANE
CER$
2121
1811
UEN
3111
8906
ALA
2312
1561
62
MANE
1211
2109
CER$
3133
4971
4. CIFRADOS POLIGRFICOS
13111
80154
12312
14049
31211
18981
23133
44739
AMVE
13111
80154
TSQWB
12312
14049
QYSBV
31211
18981
$TVTQ
23133
44739
YCJZK
63
4. CIFRADOS POLIGRFICOS
1
2
3
4
5
En virtud del esquema proporcionado por el cuadrado, cada letra viene representada
por un par de nmeros entre 1 y 5. De nuevo podemos referirnos a ellos como sus
coordenadas. As, segn la Tabla 4.4, las coordenadas de la letra A son 4, 3.
El proceso de cifrado requiere que el texto en claro, sin espacios en blanco ni signos
de puntuacin, se divida en bloques de una longitud acordada entre el emisor y el
receptor. En el ejemplo que damos a continuacin supondremos que esta longitud es
cinco y cifraremos el texto ESPEREN ORDENES. Como en el mtodo de Chase, se
escriben verticalmente las coordenadas de las letras de cada uno de los bloques:
ESPER
21424
34435
ENORD
25141
32251
ENES
2521
3234
Cada bloque ha proporcionado dos nmeros que se escriben uno a continuacin del
otro y despus se dividen en pares de nmeros. stos son precisamente las coordenadas
de las letras que componen el texto cifrado:
2142434435
21 42 43 44 35
Q K A P F
2514132251
25 14 13 22 51
L S M U G
25213234
25 21 32 34
L Q T Y
64
4. CIFRADOS POLIGRFICOS
CQ
CE
QN
BQ
AO
SH
HX
HO
DV
SQ
SR
QS
XO
HC
UD
VH
EI
TB
IS
QI
NS
XI
QC
NQ
QO
KM
MS
MK
IB
QN
SY
WD
CH
VB
QB
DV
BQ
IH
ON
NS
MF
UD
HE
IH
LZ
OQ
QN
NS
CH
SH
NM
VD
GS
MS
CE
MI
MI
CE
HC
MX
IZ
UD
OL
MS
SB
OH
CQ
FK
FO
QF
ID
BQ
MN
FO
AS
HT
XT
IH
MT
MS
MN
OD
OD
NQ
OA
QP
XB
SR
NQ
NO
SR
XO
QC
NM
MI
NQ
HQ
AB
MX
FH
CZ
AB
Criptograma
Como puede observarse, lo hemos dividido en bigramas. Han resultado 108 en total.
Hemos supuesto el conocimiento del criptosistema utilizado: Playfair. Pero si este
hecho no fuese una hiptesis sino una mera sospecha, las siguientes sencillas
observaciones en el texto cifrado elevaran considerablemente la probabilidad de su
certeza:
65
4. CIFRADOS POLIGRFICOS
1. El nmero de letras que componen el texto cifrado es par, exactamente 216. Ello
es porque el cifrado Playfair es digrfico. En general, en un criptosistema
poligrfico la longitud de los bloques que componen los textos cifrados debe ser un
divisor del nmero total de sus letras.
2. Ninguno de los bigramas que componen el texto cifrado contiene dos letras
iguales. Lo impiden las tres reglas de cifrado que rigen el sistema Playfair.
3. No puede haber ms de 25 letras distintas en el texto cifrado, ya que ste es
realmente el nmero de letras del alfabeto utilizado.
4. En el texto cifrado figuran algunos bigramas junto con sus inversos. En el
criptograma que nos ocupa notamos que aparecen varias veces los bigramas NQ y
QN, tambin NM y MN. Una caracterstica de la cifra Playfair es que si un
bigrama se transforma en otro, entonces el inverso de aquel se cambia por el inverso
de ste. En los textos en claro suele haber algunos bigramas que tanto ellos como
sus inversos son frecuentes (por ejemplo, al y la, o er y re, son frecuentes en
espaol). Y como los cifrados digrficos conservan la frecuencia de los bigramas,
ello explica esta cuarta observacin.
El primer paso para identificar una palabra probable en el criptograma es efectuar
un anlisis de frecuencias con los bigramas que lo componen. Un criptosistema digrfico
puede verse como una sustitucin en el alfabeto compuesto por todos los bigramas
posibles. En el caso particular del cifrado Playfair, el nmero total de tales bigramas es de
2524=600. Como ocurre con las letras, no todos los bigramas son igualmente probables
en un idioma. Ya apuntamos en el Captulo 1 cuales son los bigramas ms frecuentes en
espaol. Si dispusiramos de una tabla de frecuencias para los bigramas de nuestro
idioma, podramos intentar el criptoanlisis siguiendo el mtodo descrito en el referido
Captulo 1. Ahora bien, necesitaramos un texto cifrado muy extenso para que la
correspondencia entre los bigramas ms comunes de los textos en claro y cifrado fuese
fiable. Nuestro criptograma es demasiado corto para aventurarse siquiera a establecer
dicha correspondencia. Pero, como veremos, la siguiente tabla nos ser de enorme
utilidad en el criptoanlisis. Contiene los bigramas que se repiten en el texto cifrado y
cuantas veces.
66
4. CIFRADOS POLIGRFICOS
4
4
4
3
3
3
3
3
3
3
3
3
2
2
2
2
NS
QN
SR
UD
AB
CH
CQ
DV
FO
HC
MN
MX
OD
QC
XO
2
2
2
2
2
2
2
67
4. CIFRADOS POLIGRFICOS
ocupa optamos por regimiento. Tenemos razones para ello: el mensaje va dirigido a un
coronel que comanda un regimiento de infantera.
Como regimiento tiene diez letras, se corresponde exactamente con el fragmento
sealado en el texto cifrado: QN DV UD NS MS. Ello implica las siguientes
transformaciones de bigramas:
re gi mi en to
QN DV UD NS MS
Si estas sustituciones son correctas, el proceso deductivo que ahora iniciamos nos
llevar de de forma progresiva al desciframiento del criptograma y al descubrimiento del
cuadrado que constituye la clave. Por el contrario, si tales transformaciones son
incorrectas, enseguida llegaremos a una contradiccin y habremos de considerar otra
palabra probable.
En primer lugar, puesto que si un bigrama se reemplaza por otro entonces el inverso
de aquel se cambia por el inverso de ste, obtenemos las transformaciones de los inversos
de los bigramas anteriores. Por tanto, NQ, ha sustituido a er; VD a ig; y UD a
im. (No es necesario considerar las otras dos transformaciones, ya que los bigramas
SN y SM no aparecen en el criptograma.) Veamos si todas estas sustituciones permiten
completar alguna otra palabra en el texto cifrado que nos proporcione nuevas
transformaciones. Para ello, escribamos debajo de los bigramas ya identificados sus
correspondientes de texto en claro. Tras hacerlo, nicamente se descubre una nueva
palabra en la cuarta lnea del criptograma. Tal lnea queda as:
SH BQ SQ VH XI MK VB NS OQ VD CE MS QF HT OD SR NM FH
to
en
ig
La palabra enemigo (o enemiga) encaja perfectamente y es muy frecuente en el
contexto del mensaje. Nos proporciona una nueva sustitucin: emOQ; y la que
corresponde a los inversos: meQO, que figura una vez en el texto.
No obstante, estas nuevas sustituciones no permiten descubrir alguna otra palabra
de texto en claro que proporcione a su vez ms transformaciones. Se hace necesario
comenzar un anlisis encaminado a reconstruir parcialmente el cuadrado que forma la
clave, para as obtener nuevas sustituciones e ir poco a poco completando el texto en
claro. Este anlisis parte de las seis transformaciones que suponemos correctas.
Consideremos la transformacin enNS. La N est presente en el bigrama
en y en su sustituto NS. En virtud de las tres reglas que rigen el cifrado Playfair, ello
slo es posible si las tres letras E, N y S estn situadas en la misma fila o en la misma
columna del cuadrado. Si se encuentran en la misma fila, la N debe situarse a la derecha
de la E y a la izquierda de la S. Y si se encuentran en la misma columna, la N debe
68
4. CIFRADOS POLIGRFICOS
E N S
E
N
S
a)
b)
Q R
| |
E N S
E N S R Q
E
N
S
R
Q
(La barra entre dos letras indica la posibilidad de que tales letras sean adyacentes o
que pueda haber otras entre ellas.)
Vayamos con la transformacin toMS. Si se da el caso 1 anterior, entonces tal
transformacin no ha sido producto de la segunda regla de cifrado (porque ello implicara
que las cuatro letras T, O, M y S estn en la misma fila que la E y la N; y no
puede ser, las filas slo tienen cinco letras). Ha tenido que ser consecuencia de la primera
o tercera reglas. Si ha tenido lugar la primera regla, entonces las cuatro citadas letras
forman un rectngulo; con la T y la M en una fila y la O y la S en otra. Si ha
acontecido la tercera regla, las cuatro letras estn situadas en la misma columna; con la
T encima de la M y la S debajo de la O. Ello abre los dos subcasos que hemos
llamado 1.1 y 1.2:
69
4. CIFRADOS POLIGRFICOS
Q R
| |
E N S O
|
|
T M
Q R
| | O
E N S
|
T
M
1.1
1.2
E
N
O S T M
R
Q
Ahora podemos usar la transformacin emOQ para decidir cual de las cuatro
posibles disposiciones es la correcta. Contemplemos la 1.1. En ella s es posible esta
transformacin, mediante la primera regla de cifrado. Adems, situara a la M y a la Q
en la misma lnea. En las otras tres configuraciones es imposible la transformacin
emOQ; puesto que las cuatro letras E, M, O y Q ni forman un rectngulo, ni
estn en la misma fila o columna. Por tanto, hemos de quedarnos con la disposicin 1.1;
y, como hemos dicho antes, situando la M en la fila de la Q:
Q R T M
| | | |
E N S O
1.1
La figura va tomando forma y an disponemos de dos transformaciones para poder
ampliarla. Pero antes, la podemos utilizar para conseguir otras nuevas. Por ejemplo,
usando la primera regla de cifrado obtenemos las siguientes sustituciones, todas ellas
presentes en el criptograma: roMN, orNM, teQS, etSQ y
ntSR.
70
4. CIFRADOS POLIGRFICOS
D
|
M
|
O
D
|
Q R T M
| | | |
E N S O
1.1.a
I
|
U
|
*
1.1.b
*
|
R
|
N
G
|
T
|
S
D
|
M
|
O
I
|
U
|
*
1.1.b
No obstante, de nuevo vamos a llegar a otra contradiccin. La configuracin 1.1.b
nos trae la sustitucin *vEI. Llevndola al criptograma, junto con las ya
descubiertas, el quinto rengln comienza as:
DU AO SR EI QC
im
nt *v
El asterisco debe ser una vocal: la a, que es la nica que falta en 1.1.b. Pero
entonces se obtiene la transformacin osAO y, en consecuencia, el fragmento de
texto en claro queda imosntav, sin sentido alguno. Ello obliga a rechazar tambin la
disposicin 1.1.b.
71
4. CIFRADOS POLIGRFICOS
R
*
N
*
*
T
*
S
*
*
M
U
O
I
D
Q
*
*
*
E
1.1.c
R
*
*
*
N
T
*
*
*
S
M
U
I
D
O
1.1.d
ID XT OD NQ MI
ui ** di er ou
Con 1.1.c
Con 1.1.d
72
4. CIFRADOS POLIGRFICOS
Q
X
E
*
*
R
*
N
*
*
T
Z
S
*
*
M
U
O
I
D
1.1.c
Se obtienen entonces dos nuevas transformaciones: ueXO, que est presente
dos veces en el texto; y suOZ, que aparece una vez. Es hora ya de trasladar al
criptograma todas las sustituciones descubiertas y observar como queda:
SH CQ HX XO IS QO SY BQ HE CH CE IZ CQ MN MT OA SR HQ
*u
ro
nt
ue *o me
NM CE HO HC QI KM WD IH IH SH MI UD FK FO MS QP XO AB
to
ue
or
m*
do mi
OZ QN DV UD NS MS CH ON LZ NM MI OL FO AS MN XB QC MX
ro
qu
su re gi mi en to
or do
SH BQ SQ VH XI MK VB NS OQ VD CE MS QF HT OD SR NM FH
ui nt or
to
et
u*
en em ig
DU AO SR EI QC IB QB MF QN GS HC SB ID XT OD NQ MI CZ
oi zq ui er do
im
nt o*
re
FM SH QS TB NQ QN DV UD NS MS MX OH BQ IH NQ NO NQ AB
er
er
te
er re gi mi en to qu
A pesar del nmero de sustituciones descubiertas, todava no puede descifrarse por
completo el criptograma. Pero ya falta poco. Fijmonos en el bloque siguiente, obtenido
al juntar el final de la cuarta lnea y el comienzo de la quinta:
HT OD SR NM FH DU AO SR EI
ui nt or
im
nt o*
En l ya asoma quinto regimiento; y ello nos trae dos nuevas sustituciones:
egFH y ieAO. Mirando el cuadro 1.1.c, esta segunda transformacin sita la
A en la columna de la E, justo debajo de ella. Una vez colocada, observamos que la
transformacin egFH slo puede haber sido producida por la primera regla. La H
debe estar en la misma columna que la E; en el nico lugar que queda libre, debajo de la
recin colocada A. La F ha de situarse en la misma fila que la E; en uno de los dos
73
4. CIFRADOS POLIGRFICOS
R
*
N
*
*
T
Z
S
*
*
*
*
F
V
G
M
U
O
I
D
Q
X
E
A
H
R
*
N
*
*
T
Z
S
*
*
M
U
O
I
D
*
*
F
V
G
R
Y
N
B
K
T
Z
S
C
L
M
U
O
I
D
P
W
F
V
G
Si se efecta una rotacin cclica de las filas y columnas que nos lleve la O a la
casilla de la primera fila y columna, se llegar a un cuadrado en el que se leer la palabra
OFENSIVA. En realidad, este segundo cuadrado es el que hemos usado para cifrar el
74
4. CIFRADOS POLIGRFICOS
texto en claro. Como ya precisamos cuando presentamos la cifra Playfair, hay otros 24
cuadrados equivalentes que proporcionan el mismo cifrado. El anterior, el que hemos
conseguido con el criptoanlisis, es uno de ellos.
75
5
CIFRADOS POR TRANSPOSICIN
Recordemos en primer lugar que con este genrico nombre se designa a cualquier
criptosistema consistente en una reordenacin de las letras de los textos en claro. Esta
forma de cifrado hace su aparicin en la historia de la Criptografa muy pronto, en el siglo
V a. C., con el esctalo espartano descrito en el Captulo 1. Pero su presencia es
totalmente marginal hasta que, a mediados del siglo XIX, la Criptografa militar ve en las
transposiciones la cifra de campo ideal. La razn de ello est en la sencillez de los
procesos de cifrado y descifrado. Ms simples que en los anteriormente estudiados
criptosistemas poligrficos, la otra opcin disponible despus que Kasiski publicara su
mtodo de criptoanlisis para las sustituciones polialfabticas. En contrapartida, la
seguridad que ofrecen los cifrados por transposicin es inferior a la de los poligrficos.
Claro que esto no se supo hasta que no fueron sometidos a la accin de los criptoanalistas,
ya en la Primera Guerra Mundial.
Se produce una transposicin con slo escribir el texto en claro siguiendo una
trayectoria diferente a la que todos hemos convenido en utilizar, que en Occidente es de
izquierda a derecha y de arriba abajo. As, escribiendo de derecha a izquierda
conseguimos un texto cifrado por transposicin: SEVERLAOTIRCSE. Aunque,
evidentemente, tarde o temprano todo el mundo se dar cuenta de ello. Pero simplemente
escribiendo con una trayectoria no horizontal y a continuacin reescribiendo en el modo
habitual, obtenemos un cifrado que despistar a cualquiera no iniciado en el
criptoanlisis.
Por ejemplo, uno de los mtodos de cifrado empleado por el ejrcito confederado en
la guerra de secesin americana fue el conocido como rail fence, que consiste en
escribir primero en zigzag en dos o ms renglones:
E
I
S
R
C
N
T
E
O
Z
Z
77
D
R
M
A
I
O
V
A
U
A
S
C
C
E
S
I
O
R
O
O
F
P
A
S
N
R
O
N
I
A
R
S
C
78
A
1
N
5
S
11
P
9
O
7
S
12
I
3
C
2
I
4
O
8
N
6
13 10
11
12
R
A
L
E
U
T
U
A
N
E
N
T
I
L
E
A
O
G
S
R
N
E
A
D
E
N
L
E
N
E
A
E L
R A
U N
C
L
A
U
E
D
E
R
L
L
79
en cuenta, el receptor ha de rellenar las columnas con el texto cifrado siguiendo el orden
determinado por la clave. Cuando termine, recuperar el mensaje en claro.
Una clave con pocas letras puede facilitar el trabajo del criptoanalista, mientras que
otra con muchas puede ser difcil de memorizar. As pues, una buena eleccin prctica
oscilara entre 7 y 25 letras, por poner unas cifras. Incluso con estos lmites el nmero de
claves diferentes es muy elevado. Recordemos que, fijado un entero n, el nmero de
reordenaciones de los nmeros 1, 2, 3..., n es el factorial de n: n! = n(n1)...21, que
enseguida es un nmero muy grande. Por ejemplo, 10! = 3628800.
Ya hemos dicho que la seguridad no es la principal caracterstica de las
transposiciones. Aadimos ahora que todas las que se llevaron a la prctica fueron
criptoanalizadas a partir de texto cifrado nicamente. Dentro de esta categora de cifrados,
la transposicin de columnas presenta una seguridad intermedia. Lo difcil de su
criptoanlisis es descubrir el nmero de columnas e identificarlas, obtener despus su
orden correcto es ms sencillo. Para no facilitar esta tarea al criptoanalista, la ltima fila
del rectngulo debe quedar siempre incompleta. Si da la casualidad que tal fila se llena,
han de aadirse algunas letras nulas al final del texto en claro para que ste contine en
una nueva pero incompleta fila.
La seguridad aumenta notablemente si se efecta una doble transposicin de
columnas. Esto es, si el texto cifrado que resulta de una simple transposicin de columnas
es sometido de nuevo a una segunda transposicin de este tipo. Habitualmente, esta
segunda transposicin est regida por la misma clave que la primera, pero puede utilizarse
otra distinta. Efectuar una segunda transposicin de columnas con el texto cifrado del
ejemplo previo y con la misma clave TRANSPOSICION produce el siguiente resultado:
T
13 10
11
12
U
N
A
E
U
N
G
L
A
T
S
E
E
U
R
R
R
E
E
A
U
D
R
L
N
N
L
E
E
E
L
A L
A D
I L
A
C
E
N
L
A
T
E
O
N
80
Cuadrado 1
Cuadrado 2
81
C
2
O
5
M
3
U
6
N
4
A
1
C
2
O
5
M
3
U N
6
4
A
1
Cuadrado 1
Cuadrado 2
C 2
C 2
O 5
O 5
M 3
M 3
U 6
U 6
N 4
N 4
A 1
A 1
Cuadrado 1
Cuadrado 2
Hecho esto, el texto cifrado es la sucesin de filas de los cuadrados, tal y como han
quedado: LIICT OTRAU SSDOE SLOOR SAESI LHIIN LNFPI EANSE
IITOA DSNUA SRU.
El receptor del mensaje deber seguir el proceso inverso para recuperar el mensaje:
partir el texto cifrado en trozos de n2 letras, escribir cada uno en un cuadrado nn y
deshacer los reordenamientos de filas y columnas en los cuadrados. Tendr que prestar
atencin con el ltimo cuadrado, para que las casillas que resulten vacas sean las
correctas.
Como acabamos de ver, tras la transposicin de columnas los nihilistas rusos
efectuaban otra transposicin de filas. Con ello, estos anarquistas crean aumentar la
seguridad de su mtodo de cifrado. Ingenua suposicin. Ni aunque hubieran efectuado
varias alteraciones ms de filas, columnas, diagonales... habran conseguido un
criptosistema mnimamente seguro. Su proceso de cifrado se inicia dividiendo el texto en
claro en fragmentos de igual longitud: n2, que despus son reordenados del mismo modo.
82
83
parar a aquella con igual nmero. En consecuencia, si queremos que cada cuatro giros
sucesivos de 90 se descubran todas las celdillas una nica vez, hemos de perforar nueve
de ellas sin hacerlo en dos con el mismo nmero. Puede comprobarse que en la clave de
la Figura 5.1, los nueve nmeros de las casillas descubiertas son todos distintos.
La argumentacin anterior permite tambin contar cuantas rejillas 66 diferentes
pueden construirse. Puesto que hemos de elegir una de las cuatro casillas con el nmero 1,
otra de las cuatro con el nmero 2, etc. hay 49 maneras diferentes de hacerlo. Ahora bien,
como una misma rejilla puede estar en cuatro posiciones distintas y cada una de ellas
corresponde a una seleccin diferente de los nueve agujeros, el nmero anterior ha de
dividirse por 4. En consecuencia, hay 48 = 65536 rejillas 66 diferentes. (Ntese que este
argumento no ha considerado iguales a una rejilla y a la que se obtiene dndole la vuelta.)
En general, el nmero de rejillas distintas de dimensin nn con n par, n = 2k, es
4 . Tambin pueden considerarse rejillas nn con n impar, n = 2k+1. En este caso, la
cuadrcula central nunca debe agujerearse, ya que no cambia de posicin durante los
2
giros. Ahora, el nmero de rejillas diferentes es 4 k +k 1 . Por ejemplo, como 7 = 23+1, hay
2
4 3 +31 = 4194304 rejillas distintas de dimensin 77.
k 2 1
Cuadrado 1
Cuadrado 2
84
I
I
N
L
I
L
I
U
R
O
E
D
De igual modo se cifran las sucesivas partes en que ha sido dividido el texto en
claro. En nuestro ejemplo slo hay un segundo trozo; ha dado lugar a un cuadrado
incompleto, pero ello no perturba el proceso de cifrado. El criptograma, escrito en grupos
de cinco letras separadas por un espacio en blanco, es el siguiente: LRITR SLIOI
AGAAN TCSAE LIUMO CDJLR OEEDO AEIRA SIAPO ROICF DPCOR OTNSN.
85
Para descifrar un mensaje cifrado con una rejilla giratoria, el legtimo receptor del
mismo ha de seguir este otro proceso. Tras partir el texto cifrado en fragmentos de n2
letras (n2 1, si n es impar), se dibujan tantos cuadrados nn como fragmentos. Con la
rejilla en la posicin de partida, se coloca sta encima del primer cuadrado y se escriben
las letras iniciales del primer trozo en las casillas abiertas, en modo secuencial.
Seguidamente, se gira la rejilla y se contina escribiendo letras del primer trozo en las
cuadrculas abiertas, que ahora estarn todas en blanco. Se repite la operacin dos veces
ms. Hecho esto, el cuadrado estar repleto de letras y podr leerse el primer bloque del
texto en claro. De igual modo se descifra el resto de los fragmentos de texto cifrado. Al
proceder con el ltimo, no ha de escribirse letra alguna en las cuadrculas cuyo orden
supere la longitud de este postrero trozo. El orden al que nos referimos es el que
proporciona la direccin de la escritura: de izquierda a derecha y de arriba abajo, de modo
que la primera cuadrcula es la superior izquierda y la ltima la inferior derecha.
Hemos de sealar que los procesos de cifrado y descifrado que acabamos de
describir pueden ser intercambiados, consiguindose as otra manera de usar la rejilla
giratoria. No consideramos que sea necesario pararnos a explicar este otro modo
recproco, pero s advertir que los criptosistemas resultantes son diferentes.
Obsrvese que, al igual que ocurra en la transposicin de los nihilistas, el cifrado
en la rejilla giratoria se inicia dividiendo el texto en claro en fracciones de igual longitud
que luego son reordenadas de la misma manera. En general, los criptosistemas por
transposicin cuyo mtodo de cifrado cumple tal caracterstica se denominan regulares.
No todas las transposiciones son regulares; por ejemplo, la de columnas es irregular.
Bien, segn marca el guin del captulo, tras la descripcin de algunos cifrados por
transposicin corresponde hablar de criptoanlisis. Ante un criptograma, la primera tarea
del criptoanalista es siempre averiguar el criptosistema que lo ha producido. Es fcil
determinar si un criptograma ha sido cifrado por transposicin. Como no es ms que una
reordenacin de cierto texto en claro, las frecuencias de sus letras se mantienen en el
criptograma y, en consecuencia, deben seguir el patrn de frecuencias de las letras del
idioma en que se ha escrito el texto. Por tanto, un simple anlisis de frecuencias permite
averiguar si estamos ante un texto cifrado por transposicin. Lo que no es tan sencillo es
concretar, a partir de los criptogramas exclusivamente, qu cifrado por transposicin ha
sido empleado.
No obstante, si se dispone de varios criptogramas con exactamente la misma
longitud, no es necesario averiguar antes que tipo de transposicin los ha generado para
que el criptoanlisis pueda comenzar. En este caso, el simple y efectivo mtodo de los
mltiples anagramas descubre los textos en claro. Para comprender tal mtodo,
consideremos los siguientes cuatro anagramas que resultan de reordenar de la misma
manera sendas palabras de siete letras:
TLAUNER
SODIAVA
MORIPRE
ARAGEN
Recuperar las palabras originales es difcil si se hace por separado; pero es sencillo
con las cuatro a la vez, siguiendo la estrategia que explicamos a continuacin. Escribimos
86
los anagramas uno debajo de otro, formando un rectngulo de cuatro filas y siete
columnas. Seguidamente, lo descomponemos recortando las columnas:
T
S
M
A
L
O
O
R
A
D
R
A
U
I
I
G
N
A
P
E
E
V
R
N
R
A
E
Se trata ahora de reordenar las columnas procurando que casen las letras. O dicho
con mayor precisin: formando primero bigramas que sean frecuentes en nuestro idioma,
a partir de ellos trigramas, luego tetragramas que no sean imposibles, y as hasta
completar las palabras. Podemos comenzar considerando la ltima columna, que contiene
una . Como a esta letra slo puede seguirla una vocal, a la derecha de esta columna
debe ir otra que contenga una vocal en cuarto lugar. La candidata es la tercera columna,
que es la que produce los bigramas ms comunes:
R
A
E
A
D
R
A
Con estos cuatro bigramas formamos otros tantos trigramas que no sean extraos en
nuestro idioma. Luego los ampliamos a tetragramas, stos a su vez a pentagramas... El
siguiente esquema lo muestra:
R
A
E
A
T R
D
S A
R M E
A
A
E
V
R
N
U
I
I
G
A
T R
D
S A
R M E
A
A
T
S
M
A
R
A
E
A
D
R
A
L
O
O
R
A
D
R
A
L
U T
O
I S
O I M
R
G A
N
A
P
E
E
V
R
N
U
I
I
G
T
S
M
A
R
A
E
R
A
E
A
D
R
A
A
D
R
A
L
O
O
R
L
O
O
R
EMEEO
YELMI
ISEAQ
EACHE
UAAJS
LLMOS
EETHO
LNDEO
NCTIG
UNNAN
CLRNA
ROLIR
OAEUL
TOYAJ
TAFEP
NAIER
EPDON
RCEMR
ECROC
LIAEC
NSUSD NLRIO
UIGOS REITE
LUISN READS
FB
Criptograma
Ante una rejilla, el criptoanlisis debe partir de una suposicin sobre la dimensin
nn. En teora, el entero n puede tomar cualquier valor; pero cuando el criptosistema de la
rejilla fue llevado a la prctica, n estuvo siempre entre 5 y 10. Rejillas 44 no se
consideraban porque su nmero es reducido (slo hay 64 diferentes), y valores de n por
encima de 10 dan lugar ya a rejillas grandes de incmodo manejo. Siguiendo entonces
estas observaciones prcticas, supondremos tambin que la rejilla empleada con el
criptograma anterior est entre los lmites de 5 y 10.
Hecha una hiptesis sobre el entero n, el proceso que a continuacin explicaremos o
bien nos permitir descifrar el texto o nos llevar a un absurdo. En este segundo caso
habr que asignar otro valor a n y comenzar de nuevo. Por fortuna, con nuestro
criptograma no es necesario iniciar tal proceso en los supuestos n = 5 6, ya que pueden
ser descartados gracias a la posicin en la que ha quedado la nica Q presente. En las
lneas que siguen demostramos esta afirmacin cuando n = 5. La argumentacin para
n = 6 es muy similar y animamos a que la realice el lector.
88
A continuacin, hay que recortar las columnas de este cuadrado para despus
reordenarlas procurando formar palabras del texto en claro. Pero en este particular
mtodo, este proceso se va a efectuar siguiendo unas reglas muy similares al conocido
juego de cartas el solitario. Incluso se comprendern mejor tales reglas si
contemplamos las columnas del rectngulo como naipes de una baraja. Con esta idea, con
las 48 columnas formamos los cuatro palos de la baraja. Las doce primeras constituirn el
palo de picas: , la siguiente docena el de trbol: , las otras doce el de corazones: , y la
ltima docena el de diamantes: . Dentro de cada palo, cada columna tendr asignado un
nmero que indicar el orden que ocupa. La baraja obtenida puede contemplarse en la
Figura 5.2.
89
1
E
M
L
2
L
I
R
1
L
G
O
2
E
O
E
...
12
A
N
R
1
A
T
O
2
J
O
C
...
12
N
D
N
1
L
L
D
2
R
I
E
...
12
U
I
S
...
12
L
C
E
Expliquemos las razones del diseo de la baraja. Como una rejilla 77 tiene doce
cuadrculas perforadas, las doce primeras letras del texto cifrado son las letras que
asoman por dichas cuadrculas al situar la rejilla en su posicin inicial sobre el primer
cuadrado. Las siguientes doce son las que aparecen al efectuar un primer giro de la rejilla.
Y as sucesivamente. Por tanto, las letras de las cartas de igual palo fueron trasladadas al
texto cifrado cuando la rejilla estaba en una misma posicin. El palo de picas representa
la posicin inicial de la rejilla, el de trboles la segunda posicin, etctera. Por otro lado,
las doce letras que descubren las casillas abiertas de la rejilla se llevan siempre al texto
cifrado segn el orden habitual de la escritura: de izquierda a derecha y de arriba abajo.
Este orden es precisamente el nmero de cada carta. As, fijado un palo de la baraja, las
letras de la carta numerada con el 1 son anteriores en el texto en claro a las del 2, las de
sta otra carta son previas a las del 3, etctera.
Nuestra partida de criptoanlisis requiere disponer las cartas en una posicin inicial.
Su justificacin est en una propiedad del criptosistema de la rejilla que al mismo tiempo
constituye una debilidad: la simetra. Veamos en qu consiste. En primer lugar,
distinguimos en un cuadrado nn los pares de cuadrculas simtricas: dos de sus casillas
se dicen simtricas si una va a parar al lugar de la otra cuando se gira el cuadrado 180.
Por ejemplo, en el siguiente cuadrado 55 las cuadrculas con el mismo nmero son
simtricas:
1
10
11 12 13 12 11
10
90
una carta de nuestra baraja, como todas sus letras ocuparon la misma cuadrcula de
cuadrados diferentes, tiene sentido referirse a su simtrica como aquella que contiene las
letras simtricas. Dicho esto, descubramos las cartas simtricas. Las picas representan la
posicin inicial de la rejilla. Al girarla 180, la rejilla pasa a la 3 posicin, asociada a los
corazones. Luego, corazones y picas son simtricos. Igualmente lo son trboles y
diamantes. Por otra parte, cuando rotamos 180 grados la rejilla, el orden de sus casillas
agujereadas se invierte: la primera pasa a ser la ltima, la segunda va al antepenltimo
lugar, etctera. En consecuencia, en nuestra baraja, la simtrica de una carta con el 1 es
otra con el 12, la de una con el 2 es otra con el 11, etctera. Ya hemos identificado las
cartas simtricas.
Coloquemos ahora las cartas en su posicin inicial. Formamos con ellas 8 montones
de 6 cartas cada uno, todas puestas boca arriba. Un montn contendr las seis primeras
cartas de picas. La visible ser el 1, debajo de ella estar el 2, luego el 3, etctera. Con los
otros tres palos formamos idnticos montones que situamos en una fila en lnea con el
primer montn. Y en una segunda fila, otros cuatro montones conteniendo cada uno de
ellos las simtricas de las cartas del montn por encima, en el orden 12, 11, ..., 7 para
respetar la simetra. Los ocho montones quedan como se muestra en la Figura 5.3.
1
E
M
L
1
A
T
O
1
L
G
O
1
L
L
D
12
N
D
N
12
L
C
E
12
A
N
R
12
U
I
S
Uno de los cuatro 1 contiene las letras que estaban en la primera casilla de los
cuadrados, la superior izquierda. (Por qu?) Su simtrica, un 12, incluye las que se
situaron en la ltima cuadrcula, la inferior derecha. En la primera jugada hemos de
intentar adivinar estas dos cartas. Tal jugada consiste extraer de su montn una de las
cartas de arriba, colocarla en lugar aparte y a su izquierda su simtrica, ligeramente
desplazada hacia abajo para que casen las dos primeras letras de esta carta con las dos
ltimas de aquella. La Figura 5.4 muestra las cuatro opciones posibles.
91
1
12
N
D
N
a)
E
M
L
1
12
L
C
E
1
12
A
N
R
A
T
O
b)
L
G
O
c)
1
12
U
I
S
L
L
D
d)
Si acertamos en esta primera jugada, formamos dos bigramas del texto en claro:
aquellos que resultan de unir las ltimas letras de los cuadrados primero y segundo con
las primeras letras del segundo y tercero, respectivamente. Las cuatro opciones de la
Figura 5.4 contienen bigramas posibles en nuestro idioma y, en consecuencia, a priori no
hay que rechazar ninguna de ellas. Si hay que decidirse por una, sta debe ser la que
presente los bigramas ms frecuentes; pero quizs sea preferible contemplar la segunda
jugada antes de tomar la decisin.
Supongamos que elegimos la opcin correcta en la primera jugada. Entonces, una
de las cuatro cartas visibles en la fila superior incluye las letras que durante el cifrado se
colocaron en la segunda casilla de los cuadrados (de nuevo invitamos al lector a
reflexionar sobre esta afirmacin), y su simtrica inferior contiene las que ocuparon las
antepenltimas cuadrculas. Estas son las dos cartas que debemos extraer en la segunda
jugada. Las haremos casar con las anteriores, la de la fila superior por la derecha y su
simtrica por la izquierda. Una vez hecho, los dos bigramas de antes se ampliarn a
tetragramas y, adems, se formarn dos nuevos bigramas que, si esta segunda jugada es
correcta, pertenecern al texto en claro.
De todas las combinaciones que se pueden dar con las dos primeras jugadas (16 en
total), la que parece ms adecuada es la que muestra la Figura 5.5, continuacin de la
opcin d) en la primera jugada:
12 12
L
U
C
I
E
S
L
L
D
A
T
O
92
sucesivas jugadas. As, despus de la quinta jugada, nuestro solitario debe presentar el
aspecto de la Figura 5.6.
2
L
I
R
3
S
Y
L
1
L
G
O
3
I
S
O
11
D
T
L
10
Y
H
A
12
A
N
R
10
A
R
A
11 12 11 12 12
E
N
E
L
U
O
D
U
C
I
I
N
D
E
S
L
L
D
A
T
O
R
I
E
E
M
L
J
O
C
Esta Figura 5.6 nos muestra que el criptoanlisis va por buen camino. Colocar el
resto de las cartas parece ya tarea sencilla. Tras ello, accederemos al texto en claro. Y
tambin a la clave, cuya obtencin es inmediata: Rellenemos un cuadrado 77 con las 48
primeras letras del texto en claro, dejando vaca su casilla central. Las cuadrculas donde
se sitan las doce letras bajo el palo de picas son precisamente las casillas abiertas de la
rejilla cuando est en su posicin inicial.
Con la clave puede descifrarse el postrero y residual trozo de 8 letras de texto
cifrado que, recordemos, lo dejamos a un lado. En fin, dejamos esta ltima parte del
criptoanlisis al lector interesado y despedimos el captulo mostrando el texto en claro. Es
el siguiente fragmento extrado del libro La Cryptographie Militaire de Auguste
Kerchoffs, publicado en 1883:
La rejilla es un procedimiento ingenioso, muy usada en el ltimo siglo,
y las mejoras que recientemente ha introducido el coronel austriaco
Fleissner parecen hacerla indescifrable.
93
6
LA CRIPTOGRAFA EN LA PRIMERA
GUERRA MUNDIAL
americano en el frente europeo. El plan pasaba por una alianza con Mjico y Japn y
consista en que si Estados Unidos declaraba la guerra a Alemania, esos dos pases
atacaran a los norteamericanos en su propio territorio. Alemania ayudara econmica y
militarmente a dichas naciones.
El plan era arriesgado pero no descabellado. Mjico todava reclamaba sus antiguos
territorios en Texas, Arizona, Nuevo Mjico y California, arrebatados por Estados Unidos
en la guerra de 1848. Con la ayuda alemana, Mjico poda recuperarlos. Por otra parte, los
anlisis germanos daban como inevitable una futura guerra entre Japn y Estados Unidos
por el control del Pacfico y que nicamente ahora Japn resultara victorioso (la Historia
ha demostrado la correccin de esta prediccin.) Y en ltima instancia, si Mjico y Japn
no aceptaban la propuesta, Alemania poda reconsiderar la guerra submarina sin
restricciones.
Arthur Zimmermann, ministro de asuntos exteriores alemn, pens que, dado lo
delicado de los propsitos germanos, lo mejor era que su embajador en Mjico lo
planteara con la mayor discrecin al presidente mejicano. Sin embargo, tena un
problema: comunicar con sus embajadas al otro lado del Atlntico. En aquella poca, los
pases europeos disponan ya de cables telegrficos transatlnticos por los que cursaban
sus comunicaciones con el otro lado del ocano. Pero los cables alemanes haban sido
inutilizados por los britnicos el primer da de la guerra. Para contactar con sus embajadas
en Amrica, Zimmermann deba hacerlo a travs de los cables telegrficos de otras
naciones. Dos pases se lo permitan, la neutral pero pro germana Suecia y aquel contra el
que iba a conspirar, los Estados Unidos.
El 16 de enero de 1917, Zimmermann curs un telegrama su embajador en
Washington, Johann H. von Bernstorff, conteniendo instrucciones para la delegacin
germana en Mjico. Lo envi por duplicado, para asegurarse que llegaba a su destino.
Una copia se transmiti por las lneas suecas y la otra por las norteamericanas. Tres das
ms tarde, el embajador Bernstorff reenvi las instrucciones de Zimmermann a su
homnimo en Mjico.
Obviamente, los telegramas iban cifrados. La diplomacia alemana utilizaba libros
de cdigos para este menester. Tales cdigos consistan todos ellos en un amplio
repertorio de cifras. El telegrama que desde Berln se envi a Washington iba cifrado
segn el cdigo identificado con el nmero 0075. El que desde Washington Bernstorff
telegrafi a Mjico se cifr con el cdigo 13042. La razn de este cambio de cdigos est
en que la embajada alemana en Mjico no usaba el cdigo 0075. Puede contemplarse el
telegrama que lleg a Mjico en la Figura 6.1.
96
97
98
el elevado nmero de sustituciones que suele catalogar: varias decenas de miles. Pero de
este elevado nmero, los usuarios slo utilizan unos cuntos cientos, por lo especfico del
lenguaje que estn obligados a emplear. De este modo, al llevar a la prctica el libro de
cdigos, lo han reducido a un nomencltor como los que se emplearon antiguamente. Por
tanto, la seguridad que proporciona el libro de cdigos no puede ser mayor que la de su
predecesor el viejo nomencltor. Menos an, porque ahora los criptoanalistas disponen de
gran cantidad de texto cifrado con el mismo cdigo, y a veces incluso de algn texto en
claro. Ello es suficiente para recuperar los pocos cientos de palabras diferentes que se
suelen emplear. As recuperaron los criptoanalistas de la Habitacin 40 los cdigos
diplomticos involucrados en el telegrama Zimmermann. Nunca dispusieron de un
ejemplar de tales libros.
El cifrado mediante cdigos fue tambin el mtodo elegido por la armada alemana
para proteger sus comunicaciones. Pero antes de hablar de ello, conviene sealar que
cuando se inici la contienda en agosto de 1914 ya haban transcurrido casi veinte aos
desde que la radio fue inventada. La radio permite a los almirantes en tierra un control
inmediato y continuo de los navos en alta mar. No obstante, la enorme posibilidad de
comunicacin que ofrece la radio tiene un pequeo inconveniente: las ondas areas por
las que viajan los mensajes son pblicas. As, no slo los barcos de guerra alemanes
reciban las rdenes transmitidas por una potente emisora a las afueras de Berln, sino
tambin los receptores britnicos. Evidentemente, los mandos alemanes eran conscientes
de esta posibilidad y protegan sus mensajes cifrndolos mediante cdigos, como ya
hemos dicho. Y al igual que sus compatriotas diplomticos, consideraban totalmente
segura esta comunicacin porque suponan que ningn intruso dispona de sus cdigos.
Errnea suposicin, porque tan slo al mes siguiente de empezar la guerra,
Inglaterra ya se haba hecho con los cdigos de la armada germana. Sucedi que a los
pocos das del inicio de la contienda, el crucero alemn Magdeburgo encall en el
Bltico, cerca de la costa rusa. Ante la inmediata llegada de navos rusos, el capitn
alemn orden abandonar el crucero y, con las prisas, olvid en un cajn el libro de
cdigos que empleaba la armada alemana. Los rusos registraron el navo encallado y
encontraron el mencionado libro. Poco despus, el libro fue enviado a Inglaterra.
El cdigo Magdeburgo (as se conoce ahora al cdigo del libro) constaba de
palabras de cuatro letras en las que la primera y la tercera eran consonantes, y la segunda
y la cuarta vocales. La razn de este diseo es clara: hacer pronunciables las palabras del
cdigo. Pero el disponer del cdigo no era suficiente para revelar el significado de los
mensajes germanos. El mando naval alemn, para conseguir mayor seguridad, despus de
codificar sus rdenes las cifraba. Por tanto, era obligado conocer tambin el mtodo de
cifrado empleado. An les llev tres semanas a los criptoanalistas de la Habitacin 40
descubrir que los alemanes cifraban el cdigo mediante una sustitucin monoalfabtica en
la que vocales se reemplazaban por vocales y consonantes por consonantes. (Con ello, el
texto cifrado resultante segua siendo pronunciable.) Sabiendo esto, ya no es difcil
averiguar la clave de la sustitucin usando que ciertas palabras del cdigo eran ms
frecuentes que otras en virtud del contexto de los mensajes. Adems, el diseo del cdigo
facilitaba la tarea. Naturalmente, dicho trabajo era necesario repetirlo cada vez que se
cambiaba la clave. Al comienzo de la guerra ello suceda cada tres meses. Tal periodo se
99
fue acortando conforme avanzaba la contienda, y ya en 1916 la clave era cambiada cada
medianoche.
En las comunicaciones con los submarinos, los alemanes empleaban el mismo
cdigo que con los navos de superficie, pero el mtodo de cifrado posterior empleado era
una transposicin de columnas. La clave no se cambiaba muy frecuentemente. Como ya
sabemos por el tema anterior, descifrar una transposicin de columnas no es difcil y
puede hacerse con texto cifrado nicamente. En consecuencia, al tener los cdigos en su
poder, los britnicos accedieron tambin a las instrucciones que los alemanes transmitan
a sus submarinos.
El cdigo Magdeburgo no fue el nico empleado por la armada alemana ni el nico
recuperado por los ingleses. Estos tomaron buena nota de los tesoros que podan contener
los navos enemigos hundidos o abandonados. Por ejemplo, en septiembre de 1916 se
hicieron con los cdigos en vigor registrando los restos de un zepeln abatido. En otra
ocasin, un buzo rescat los libros de cdigos de un submarino alemn hundido cerca de
la costa inglesa. Fue condecorado por esta accin despus de la guerra. La Habitacin 40
reconoci haber descifrado unos 15.000 mensajes alemanes a lo largo de la guerra.
La Royal Navy tambin us cdigos para proteger sus comunicaciones
radiotelegrafiadas. Sus voluminosos libros de cdigos contenan un amplsimo repertorio
de palabras y grupos de palabras codificadas con nmeros de cinco dgitos. Incluan
muchsimos homfonos. Algunas expresiones disponan de 15 homfonos. Haba varias
pginas de nulos que deban constituir el 25% del total del mensaje, segn se indicaba en
las instrucciones. Pero lo que ms llama la atencin es el empleo de polfonos; esto es,
que un mismo nmero de cdigo pueda representar significados distintos. Exactamente
tres en los cdigos ingleses. Para que el empleo de polfonos no imposibilite el descifrado
correcto, en el libro de cdigos los nmeros no polfonos iban seguidos de una de las
letras A, B, o C; mientras que los polfonos iban precedidos y seguidos de una de dichas
letras. Al descifrar, para cada polfono haba que elegir aquel significado cuya letra inicial
coincida con la letra final de la acepcin elegida para el nmero anterior. Por ejemplo, el
descifrado correcto del mensaje
13901
01581
47689
con el cdigo
...
Ammunition
4th July
German
...
Seen
13901 C
...
A 47689 B
Prince of Walles
B 47689 C
Cruiser
C 47689 A
Wednesday
A 01581 B
B 01581 A
C 01581 B
100
en vigor hasta mayo del ao siguiente. Para entonces la guerra entr en una fase esttica
de trincheras, sin apenas movimientos de tropas. Ello trajo una reduccin considerable en
el volumen de mensajes radiados. Muchos de ellos eran intrascendentes y en ocasiones
incluso se transmitan en claro.
A la cifra ABC le sigui la ABCD, que era un poco ms complicada. Primero haba
que cifrar el texto en claro usando el sistema de Vigenre con clave ABCD pero de forma
intermitente, y a continuacin se efectuaba una transposicin de columnas. La clave de la
transposicin rega tambin las intermitencias en el cifrado Vigenre previo. Tan slo
llev dos semanas a le Bureau du Chiffre romper este nuevo cifrado. Los alemanes
dejaron de usarlo en abril de 1916.
Fue reemplazado por una serie de cifrados polialfabticos tan poco eficientes que
con frecuencia confundan a las personas encargadas del cifrado y descifrado de los
mensajes. No les qued ms remedio que abandonarlos y regresar a los cifrados por
transposicin. Esta vez emplearon rejillas giratorias, una diferente cada semana. Tampoco
lograron burlar al criptoanlisis francs, que conoca perfectamente como atacar este tipo
de transposiciones. Los alemanes emplearon las rejillas durante varios meses, hasta marzo
de 1917. Despus de esta fecha, reconociendo su incapacidad para disear una cifra de
campo que derrotase a le Bureau du Chiffre, el ejrcito de tierra alemn recurri a los
cdigos.
Durante todo este tiempo, sus enemigos en el frente, Francia e Inglaterra, slo
utilizaron una cifra de campo cada uno. Los britnicos hicieron uso de su cifra Playfair
estudiada en el Captulo 4. La emplearon en todos los frentes. Consta que fue utilizada
incluso por Lawrence de Arabia. Sus aliados franceses hicieron uso de una cifra basada en
las transposiciones de columnas, pero con una curiosa variante que describiremos mejor
con un ejemplo. Cifremos con la clave LE BUREAU DU CHIFFRE el siguiente texto:
Dos compaas enemigas atacan nuestra posicin Stop Enven refuerzos Stop
Cuarto batalln
Siguiendo el esquema de cifrado de una transposicin de columnas, el texto en claro
se escribe formando un rectngulo con tantas columnas como letras tiene la clave. Tales
columnas se enumeran conforme al orden alfabtico de las letras de la clave. Pero en esta
variante francesa, antes de escribir secuencialmente las verticales segn el citado orden de
las columnas, se escriben primero algunas diagonales que parten de ciertas letras de la
primera fila y cuya especificacin exacta forma parte tambin de la clave. En nuestro
ejemplo, tales diagonales comenzarn en las columnas 2, 6, 10, 11, 14, 15 y 17. Las tres
primeras irn hacia la derecha y las otras cuatro hacia la izquierda, segn se indica a
continuacin:
102
12
15 13
16
17
10 11
14
El texto cifrado comienza con las diagonales especificadas: primero las que parten
hacia la derecha, despus las que van a la izquierda, respetando su orden numrico. Si
alguna de las diagonales zurdas cruza por una letra perteneciente a una diagonal diestra,
dicha letra no se vuelve a escribir. Tras las diagonales van las columnas, segn el orden
determinado por la clave. De nuevo, al transcribir las columnas, hay que omitir las letras
ya escritas. El que sigue a continuacin sera el texto cifrado (hemos incluido un espacio
en blanco entre diagonales y columnas para que se observe su formacin):
SAIRL MCSSN SSVU EEPSO MRP CSSR INZA PN IFB AUT T
OAEO AO IPNR NTC EI EO N DGOT OTET AEA CUA AAOL NO
El motivo de las diagonales en esta cifra francesa es romper la uniformidad en las
longitudes de columnas, hecho en que se basa el criptoanlisis de las transposiciones de
columnas. No obstante, este cifrado no es ms seguro que la doble transposicin de
columnas que empleaban los alemanes al comienzo de la guerra (su cifra BCHI).
Tampoco lo es el famoso Playfair ingls. Y sin embargo, ambos mtodos de cifrado no
fueron rotos por los alemanes hasta tres aos despus de iniciada la contienda. La razn
de ello ya la hemos sealado: hasta 1916 el ejrcito alemn no cre su oficina de
criptoanlisis, la Abhorchdienst. Desde ese momento, la anterior cifra francesa y el
Playfair ingls tenan los das contados.
Mientras tanto, el frente occidental haba entrado en una fase esttica. Los dos
ejrcitos contendientes se encontraban encerrados en dos enormes lneas de trincheras que
iban desde el mar del Norte hasta la frontera suiza. Con los ejrcitos inmovilizados en sus
refugios subterrneos, el telfono se convirti en el medio ideal para establecer
comunicacin. Pero en el frente, los cables telefnicos estaban intervenidos por el
enemigo. Los ingleses lo constataron en la feroz batalla de Ovillers-la-Boiselle (julio,
1916), en la que sufrieron miles de bajas para poder tomar una colina defendida por una
guarnicin alemana poco numerosa. Cuando por fin lo consiguieron, encontraron en las
trincheras alemanas una trascripcin completa de su plan de ataque. El mando ingls lo
haba transmitido en claro por una lnea telefnica que los alemanes tenan interceptada.
Como consecuencia de tales interceptaciones telefnicas, los aliados se vieron en la
103
necesidad de cifrar sus conversaciones. Para este menester recurrieron a unos cdigos
especiales que se llamaron cdigos de trinchera.
Eran pequeos cuadernos que contenan unos pocos cientos de palabras codificadas
con dos o tres letras. Tales palabras eran aquellos vocablos de uso frecuente en
comunicaciones militares y cuyo significado era esencial para el entendimiento del
mensaje. Estaban agrupados por categoras como infantera, artillera, nmeros, lugares,
verbos, etc. Cuando una orden militar se cursaba por telfono, las palabras clave deban
ser sustituidas por su correspondiente cdigo para hacer incomprensible el mensaje al
enemigo. Naturalmente, el problema que presentaba el uso de estos cdigos era que
podan caer fcilmente en manos del enemigo, ya que estaban cerca de sus lneas. Por tal
motivo, los cdigos de trinchera se cambiaban muy frecuentemente. Los primeros fueron
diseados por los franceses a comienzos de 1916. Despus de su terrible experiencia en la
citada batalla de Ovillers-la-Boiselle, los britnicos emplearon tambin los cdigos de
trinchera. Incluso los americanos hicieron uso de ellos cuando sus primeras unidades
llegaron a Europa a finales de 1917.
No obstante, los cdigos de trinchera slo servan para lo que haban sido
diseados. No eran tiles en las comunicaciones radiotelegrafiadas que el alto mando en
la retaguardia empleaba con sus divisiones en el frente. En esta tarea, los aliados, despus
de constatar que la Abhorchdienst haba roto sus cifras, emplearon a partir de 1916
cdigos con un repertorio de varios miles de palabras. Y para mayor seguridad, los
aliados sometan el cdigo resultante a un cifrado posterior. An as, el servicio de
interceptacin germano penetr en numerosas ocasiones en tales comunicaciones. Los
libros de cdigos estaban demasiado cerca del enemigo y era difcil que no cayesen en su
poder. De nuevo era obligado cambiar estos cdigos lo ms frecuentemente posible. En
esta tarea, los americanos eran los ms diligentes. Cambiaban sus cdigos cada mes. Y ya
al final de la guerra utilizaron un cdigo que no necesitaba ser escrito en ningn libro: el
lenguaje nativo de los indios Choctaw que formaban parte del ejrcito americano en
Europa. Aunque ello no obedeci a una estrategia criptogrfica premeditada, sino que fue
algo improvisado. En cierta ocasin, un oficial americano en el frente necesit comunicar
urgente y secretamente con su alto mando. Sabiendo que sus cdigos estaban en poder de
los alemanes, se le ocurri poner al telfono a un Choctaw de su unidad y a otro de estos
indios que serva en el puesto de mando americano. La idea funcion y fue repetida en
varias ocasiones. Hay que reconocer que emplear una lengua que nadie conoce en el
bando enemigo es un modo muy efectivo de mantener comunicacin segura, pero
nicamente hasta el momento en el que uno de los hablantes de ese extrao idioma sea
hecho prisionero. Los americanos volveran a utilizar a sus soldados aborgenes para este
fin en la Segunda Guerra Mundial, en su lucha con los japoneses. En esta ocasin
emplearan a los indios Navajos.
A comienzos de 1918, Alemania comprendi que si quera ganar la guerra debera
hacerlo de forma inmediata. Aunque sus submarinos haban fracasado en el intento de
aislar a Inglaterra y Estados Unidos le haba declarado la guerra, el desmoronamiento
ruso haba liberado decenas de divisiones del frente Este y por vez primera Alemania
dispona en el Oeste de ms soldados que los aliados. Pero esta superioridad iba a durar
poco, el tiempo que tardasen los americanos en reunir un gran contingente de tropas en
104
Europa. Adems, los alemanes saban que podan contar con el factor sorpresa. Los
aliados nunca imaginaran que estuviesen planeando lanzar un ataque en la primavera. A
primeros de marzo, el jefe del estado mayor germano, Erich von Ludendorff, haba
preparado en secreto una gran ofensiva.
Era evidente que el factor sorpresa se vendra abajo si los aliados interceptaban las
comunicaciones alemanas previas al gran ataque. Para evitarlo, el mando alemn renunci
al empleo de cdigos y se decidi por las cifras de campo. Esta vez se escogi una nueva,
elegida entre varias candidatas. Una que los criptoanalistas de la Abhorchdienst no
pudieron romper. De hecho, estudios posteriores han demostrado que fue la cifra de
campo ms segura empleada en la primera guerra mundial. La llamaron GEDEFU 18
(GEheimschrift DEr FUnker 18: cifra de radiotelegrafistas 18), aunque a pasado a la
historia de la Criptografa con el nombre de cifrado ADFGX. Fue diseada por el coronel
Fritz Nebel.
Nebel recuper la idea del antiguo griego Polibios de representar las letras del
alfabeto por un par de coordenadas. As, en el cifrado ADFGX se comienza disponiendo
las letras en un cuadrado de 25 casillas segn el orden que determine la clave. Pero ahora,
las cinco filas y columnas de este cuadrado no van numeradas del 1 al 5; sino que en su
lugar Nebel emple las letras A, D, F, G y X. Un ejemplo de tal configuracin puede ser
el siguiente:
A
D
F
G
X
f
n
c
m
u
r
e
d
o
v
i
b
g
p
w
t
l
h
q
x
z
a
k
s
y
En este ejemplo, la letra A tiene coordenadas DX. La razn de utilizar las letras A,
D, F, G y X en lugar de los nmeros de 1 al 5 tiene que ver con la transmisin en cdigo
Morse. En este cdigo, la representacin de los nmeros es parecida; pero la de las letras
anteriores es suficientemente distinta y permite corregir los errores en la transmisin. El
cdigo Morse de tales letras se muestra a continuacin:
A:
D:
F:
G:
X:
Para cifrar, cada letra del texto en claro se sustituye por su par de coordenadas. Por
ejemplo, usando la Tabla 6.1, el texto en claro SE NECESITAN MUNICIONES se
transformara en esta otra secuencia de A, D, F, G, X:
105
S E N E C E S I T A
N I C I O
N E S
GX DD DA DD FA DD GX AF AG DX DA GA XA DA AF FA AF GD DA DD GX
Pero la secuencia obtenida no es el texto cifrado. Antes hay que someterla a una
transposicin de columnas con otra clave. Hagmoslo con la clave LUDENDORFF, por
ejemplo. Primero formamos el correspondiente rectngulo:
L
10
106
con las cinco letras distintas. Lo primero era averiguar si el cifrado consista en una
simple sustitucin. Un anlisis de frecuencias de los pares de letras permiti a Painvin
descartar esta suposicin. Despus de la sustitucin tomogrfica el texto resultante se
cifraba de algn otro modo. Seguramente, mediante una transposicin o un sencillo
cifrado polialfabtico como, por ejemplo, el de Vigenre. Contempl varias posibilidades,
pero no hall evidencia de cual era la correcta. Tras varios das de agotador trabajo, la
nica nueva conclusin que obtuvo fue que los alemanes cambiaban diariamente la clave.
As lo indicaban las frecuencias de las letras.
El 21 de marzo comenz la gran ofensiva alemana. Tras horas de terrible fuego de
artillera, 62 divisiones alemanas desbordaron las lneas aliadas. Franceses y britnicos
tuvieron que replegarse a poco ms de 100 kilmetros de Pars donde lograron contener a
la infantera germana. Como era lgico, la ofensiva alemana vino acompaada de un
aumento considerable en el trfico de mensajes. Ahora Painvin dispona de grandes
cantidades de texto cifrado, pero de poca ayuda le sirvi.
Hasta que Painvin fij su atencin en los siguientes dos mensajes recibidos el 4 de
abril, con trece minutos de diferencia entre ellos. Los hemos recogido del libro ya citado
de Kahn The Codebreakers:
Mensaje 1:
Mensaje 2:
ADXDD XGFFD
DFADG AAFFF
GFGXX AGXXA
AGAAXD XGGAD
DXFDA XGGAGF
AAFFA
Painvin observ que cada cinco o seis letras haba siempre dos o ms coincidentes
(hemos subrayado todos esos pares repetidos de letras en uno y otro mensaje). Es lo que
sucede cuando ciframos mediante una transposicin de columnas dos textos con una
misma cabecera. Al formar con los textos el rectngulo correspondiente y despus escribir
secuencialmente las columnas, la coincidencia de los mensajes se traslada a las primeras
letras de las columnas. En consecuencia, Painvin acababa de descubrir el mtodo de
cifrado que segua a la sustitucin tomogrfica: una transposicin de columnas. Ms an,
gracias a las repeticiones pueden determinarse las columnas en cada texto (las hemos
separado insertando espacio en blanco entre ellas). En particular, como en ambos hay 20
columnas, esa deba ser la longitud de la clave que gobernaba la transposicin ese da 4 de
abril.
Painvin ya tena identificadas las columnas en los dos mensajes. Esta es la parte
ms difcil del criptoanlisis de una transposicin de columnas. Lo que sigue despus,
colocar las columnas en su orden correcto, es fcil si se hace uso de los bigramas y
trigramas ms frecuentes del idioma empleado. Sin embargo, aqu la sustitucin
tomogrfica previa imposibilita esta tcnica. Pero Painvin no se dio por vencido. Se fij
en el nmero de letras de los mensajes. El primero contiene 110 letras que hay que
107
repartir entre 20 columnas. Ello obliga a que diez de estas columnas contengan seis letras
y otras diez tengan cinco letras. Del mismo modo, al tener el segundo mensaje 104 letras,
en l tiene que haber cuatro columnas de 6 seis letras y diecisis de cinco. Las columnas
con ms letras son las situadas a la izquierda en el rectngulo que ha de formarse para
efectuar la transposicin. Sus nmeros son entonces los primeros en el orden que
determina la clave. En consecuencia, las cuatro columnas que en ambos mensajes tienen
seis letras deben ocupar las cuatro primeras posiciones del rectngulo. Estas son las
columnas que en los mensajes ocupan las posiciones 3, 6, 14 y 18. Por tanto, stos son los
cuatro primeros nmeros de la clave, aunque no en ese orden necesariamente. Las
columnas con seis letras en el primer mensaje pero cinco en el segundo deben seguir a las
cuatro anteriores. Son las siguientes: 4, 7, 9, 11, 16 y 19. Y, finalmente, las restantes diez
columnas deben situarse a la derecha del rectngulo. Painvin ya tena una primera
aproximacin al orden de las columnas determinado por la clave.
Pero esa era toda la informacin que poda extraerse de los dos mensajes con igual
cabecera, insuficiente para recuperar la clave. Por fortuna, entre los dems mensajes
interceptados ese mismo da, tambin haba dos de ellos con un final comn. De nuevo
esta coincidencia permita identificar sus columnas. Un razonamiento similar al anterior
llev a Painvin a la conclusin que las columnas 5 y 8 eran adyacentes y ocupaban las
posiciones 11 y 12 del rectngulo, aunque no poda deducirse si en el orden 5-8 en
orden 8-5. Tambin se deduca que las columnas 12 y 20 se situaban en los lugares 19 y
20 del rectngulo, pero tampoco poda precisarse el orden.
No concluy aqu el genio y la paciencia del criptoanalista francs. Consider el
resto de los mensajes del mismo da y en cada uno de ellos localiz las columnas 5 y 8.
Puso una a continuacin de la otra y form pares de letras. Obtuvo as un nmero
importante de ellos y efectu un anlisis de frecuencias. Estas frecuencias eran similares a
las de las letras en alemn, siendo el par ms frecuente el GD. Sin duda, la coincidencia
de frecuencias confirmaba que Painvin iba por el camino correcto. A continuacin repiti
el proceso anterior con las columnas 19 y 20. Obtuvo resultados similares pero con los
pares invertidos. As, ahora el par ms frecuente era el DG. Painvin comprendi
entonces que como la longitud de la clave era par, dos claves distintas daban lugar al
mismo cifrado. Fijada una de ellas, la otra se obtiene cambiando filas por columnas en el
cuadrado 55 que determina la sustitucin tomogrfica de la primera fase del cifrado, y
despus reemplazando las letras en lugar impar por sus consecutivas par en la clave que
rige la transposicin de columnas. Bastaba con recuperar una de ellas. Por ejemplo, la que
situaba las columnas 5 y 8 en ese mismo orden 5-8. En esta clave, el orden correcto de las
columnas 12 y 20 era 20-12.
Painvin no slo tena ya el orden exacto de cuatro de las veinte columnas que se
transponan, sino las casillas del cuadrado 55 que correspondan a las letras ms
frecuentes en alemn. Por ejemplo, como la letra ms comn en alemn es, con
diferencia, la e, esta letra debe ocupar la casilla correspondiente al par GD, el ms
frecuente. As, la e debe figurar en la fila de la G y en la columna de la D:
108
A D F G X
A
D
F
G
X
Mensaje 2:
AXADD
DAXAA
Painvin not que haba numerosos bloques de letras que eran comunes a ambos
textos pero en posiciones distintas, la mayora de cinco letras (hemos subrayado dos de
dichos bloques, uno de cinco letras y otro de cuatro). Haciendo coincidir los trozos
109
iguales, Painvin observ que los dos mensajes quedaban divididos en 21 partes (las
hemos separado insertando espacio en blanco en los mensajes anteriores). Como puede
observarse, todas las partes del primer criptograma tienen cinco letras excepto la que
ocupa la sexta posicin, que tiene seis. En el segundo texto hay tres trozos de seis letras,
los situados en los lugares 6, 7 y 16. El resto es de cinco letras. Estos 21 bloques en que
hemos dividido los mensajes son precisamente las columnas de la transposicin a la que
han sido sometidos. La coincidencia de las columnas es debida a que los textos en claro
son casi idnticos, slo se diferencian en unas pocas letras en su inicio.
Descubierta la longitud de la clave utilizada en la transposicin, el paso siguiente
que dio Painvin fue obtenerla. La siguiente argumentacin le condujo a ella. Puesto que el
nico trozo de seis letras en el primer criptograma es el sexto, debe ser la primera
columna del rectngulo. Por tanto, el primer nmero de la clave es el 6. El segundo
criptograma tiene dos letras ms que el primero. Luego las letras que en el primer
mensaje ocupan una determinada columna se trasladan dos columnas a la derecha en el
segundo mensaje. El sexto bloque del primer texto coincide con el sptimo en el segundo
texto. En consecuencia, el tercer nmero de la clave es el 7. El sptimo bloque del primer
mensaje y el decimosptimo del segundo coinciden en sus cuatro ltimas letras, luego 17
es el quinto nmero de la clave. Y as se obtienen los nmeros de la clave situados en una
posicin impar. Pero el mismo razonamiento permite descubrir tambin los nmeros de
los lugares pares: Las letras que en el primer mensaje ocupan la ltima columna van a
parar a la segunda columna en el segundo mensaje. Puesto que la ltima columna tiene
asociada el nmero 18 de la clave y el trozo decimoctavo de primer criptograma coincide
con las cinco ltimas letras del decimosexto del segundo, entonces 16 es el segundo
nmero de la clave. Y continuando con el argumento se recuperan los dems nmeros de
los lugares pares. De este modo, Painvin complet la clave que rega la transposicin de
columnas: 6, 16, 7, 5, 17, 2, 14, 10, 15, 9, 13, 1, 21, 12, 4, 9, 19, 3, 11, 20, 18.
El prximo objetivo era descubrir el cuadrado 66 que constitua la clave de la
sustitucin tomogrfica. Era ya fcil. Slo haba que deshacer la transposicin de
columnas en los mensajes de ese da 1 de junio, dividirlos en pares de letras A, D, F, G,
V, X y efectuar un anlisis de frecuencias con ellos. Esta tarea la concluy Painvin el da
siguiente. El cuadrado 66 era el que se muestra a continuacin:
A
D
F
G
V
X
c
m
n
5
p
e
o
k
w
s
1
q
8
3
l
i
v
7
x
a
0
y
b
t
f
z
j
h
6
2
4
9
d
u
r
g
110
111
7
LGEBRA Y CRIPTOGRAFA
7. GEBRA Y CRIPTOGRAFA
A B C D E F G H I J K L MN O P Q R S T U VWX Y Z
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Tabla 7.1. Identificacin de letras y nmeros.
Hecha esta asociacin entre letras y nmeros, la suma de letras se obtiene sumando
los nmeros correspondientes y sustituyendo despus el resultado por la letra asociada.
Naturalmente, puede ocurrir que la suma exceda a 26. En tal caso, 27 sera otra vez la A,
28 la B, 29 la C y as sucesivamente. Por tanto, bastar restar 27 a dicho resultado para
obtener la letra suma. Los siguientes ejemplos aclaran esta definicin:
F+J=
D+T=W
M+X=J
(5 + 9 = 14)
(3 + 20 = 23)
(12 + 24 = 36 36 27 = 9)
(36 = 18)
(410 = 40 40 27 = 13)
(1116 = 176 = 627 + 14 14)
(Propiedad conmutativa)
(Propiedad distributiva)
114
7. LGEBRA Y CRIPTOGRAFA
y = T. Como decamos antes, tenemos una regla que cambia una letra x por otra y. Puede
ser un mtodo de cifrado que transforme un texto en claro en un criptograma:
Claro: A T A C A M O S A L A M A N E C E R
0 20 0 2 0 12 15 19 0 11 0 12 0 13 4 2 4 18
y=Fx+L (y=5x+11)
11 3 11 21 11 17 5 25 11 12 11 17 11 22 4 21 4 20
Cifrado: L D L U L Q F Y L M L Q L V E U E T
Ahora bien, para que esta transformacin sea en efecto un modo de cifrar, ha de
resolverse antes el siguiente problema: cmo descifra el mensaje el receptor del mismo?
ste conoce la ecuacin que ha producido el criptograma y cada una de sus letras, que son
los valores que va tomando la indeterminada y; pero, cmo recupera los de x, las letras
del texto en claro? Tal vez despejando x en la ecuacin que ha originado el criptograma:
Fx + L = y Fx = y L x =
yL
F
No, no es tan sencillo. Hemos procedido como si de una ecuacin con coeficientes
numricos se tratara y, dejndonos llevar por el hbito con estas ecuaciones, hemos
recurrido a la resta primero y a la divisin despus. No hemos analizado si estn
disponibles estas operaciones en nuestra aritmtica de letras. Hay que despejar x con ms
cuidado.
En primer lugar, eliminar la L de la suma Fx + L requiere aadir a esta misma suma
la opuesta de L. Este concepto se entender mejor si recordamos antes su homnimo para
nmeros enteros. El opuesto de un nmero es aquel que al sumar ambos resulta 0, el
neutro para la suma. Como es bien sabido, el opuesto de un entero se obtiene cambindole
el signo. Sin embargo, las letras de nuestro alfabeto carecen de signo y no es tan
inmediato obtener sus opuestas. Aunque tampoco es difcil. La letra que resulta neutra
para la suma es la A, precisamente la que hemos identificado con el 0. Por tanto, la
opuesta de una letra es aquella otra que al sumar ambas se obtiene A. As, la opuesta de A
es ella misma porque A+A = A; la de B es Z, ya que B+Z = A; la de C es Y porque
C+Y = A; etctera. La opuesta de L es P y con ella cancelamos L en la suma Fx + L:
Fx + L = y Fx + L + P = y + P Fx + A = y + P Fx = y + P
Eliminar F en el producto Fx se consigue de un modo similar, pero operando ahora
con su inversa. La inversa de una letra es aquella que al multiplicar ambas resulta la
neutra para el producto; que es la letra B, la asociada al 1. Calcular inversas en esta
aritmtica de letras es ms complicado que hallar opuestas. Sucede que no todas las letras
tienen inversa. Por ello, siguiendo la terminologa algebraica, denominaremos unidades a
las letras que poseen inversa. Estas letras unidades se caracterizan por ser primo con 27 su
nmero asociado (as se dice cuando el mximo comn divisor de dos enteros es 1).
Razonar esta caracterizacin de las unidades escapa al nivel de este texto y remitimos al
115
7. GEBRA Y CRIPTOGRAFA
lector interesado a los textos de lgebra que tratan con la citada aritmtica modular. La
hemos incluido aqu porque permite determinar fcilmente qu letras son unidades:
aquellas cuyo entero asociado no es mltiplo de 3, que es el nico divisor primo de 27.
Esta es entonces la lista de letras unidades:
Unidades: B, C, E, F, H, I, K, L, N, , P, Q, S, T, V, W, Y, Z.
Afortunadamente, entre estas letras est la F y, en consecuencia, posee inversa. El
mejor modo de calcular la inversa de una letra es emplear un algoritmo que a tal efecto
dispone la aritmtica modular; pero de nuevo su compresin supera el nivel que aqu
pretendemos. No importa, tampoco es imprescindible. Podemos obtener la inversa de una
letra multiplicndola por cada una de las letras de la lista anterior hasta dar con ella.
Como la lista no es muy amplia, no tardaremos ms de unos minutos en calcular la
inversa de cada letra. He aqu el resultado de los clculos:
Unidad: B C E F H I K L N P Q S T V W Y Z
Inversa: B H L E Q S F Y C V I K W P T N Z
Tabla 7.2. Unidades y sus inversas.
x=Ly+ (x=11y+14)
0 20 0 2 0 12 15 19 0 11 0 12 0 13 4 2 4 18
Claro: A T A C A M O S A L A M A N E C E R
Notemos que este modo de cifrar a partir de ecuaciones de la forma y=ax+b
responde a la nocin de criptosistema. Las claves son los pares de letras (o sus
equivalentes numricos) formados por el coeficiente a y el trmino independiente b, con
la condicin que a sea una unidad para que el descifrado responda a una ecuacin similar.
En el ejemplo desarrollado antes, la clave es a=F y b=L. Algunas publicaciones utilizan
el trmino criptosistema afn para referirse a este modo de cifrar.
En este criptosistema afn el nmero de claves es muy reducido. El coeficiente a
puede tomar el valor de una de las 18 unidades del alfabeto, mientras que b puede ser
cualquiera de las 27 letras. En total: 1827 = 486 claves diferentes. Un nmero que
permite el criptoanlisis comprobando una a una todas las claves posibles. Por otro lado,
cada ecuacin de la forma y=ax+b, con a unidad, determina de hecho una sustitucin de
las letras del alfabeto y, en consecuencia, el criptosistema afn puede ser visto como un
116
7. LGEBRA Y CRIPTOGRAFA
subcriptosistema del cifrado por sustitucin. Esto implica que el criptoanlisis basado
en el anlisis de frecuencias es tambin aplicable al criptosistema afn. Ms an, una
combinacin del anlisis de frecuencias y la resolucin de sistemas de ecuaciones puede
permitir criptoanalizar textos muy reducidos. Veamos un ejemplo. Consideremos el
siguiente criptograma, obtenido al cifrar un breve texto en espaol mediante cierta
ecuacin del tipo y=ax+b:
HBCOB TTJIG IRTSH KTWGJ JCVIT TSFJT VCBCA HTCJH
FYHAR GAHTI KTNYH CRYHI ATCKT CAGHT CJHAY GFRVN
YHDGH SVKTY CH
Criptograma
cH + d = A
Para resolverlo procedemos como si de ecuaciones numricas se tratara, empleando
opuestas e inversas de letras. Imitando la notacin numrica, a la opuesta de una letra la
denotaremos con el signo delante; y a la inversa situando el signo 1 detrs de ella.
Tambin escribiremos TH en lugar de T+(H). As, al emplear esta notacin surge la
resta de letras, que en realidad es la suma de una de ellas con la opuesta de otra.
Despejemos ya c restando a la primera ecuacin la segunda:
c(TH) = EA cN = E c = EN1 = EY = S
Ntese que para poder despejar c hemos necesitado utilizar N1 (=Y), la inversa de
N. Obtenida c, la otra incgnita d se obtiene despejndola en una de las dos ecuaciones de
partida:
cT + d = E d = EcT = EST = E C = C
De este modo, la hiptesis que la E se transforma en la T y la A en la H ha
conducido a un sistema de ecuaciones cuya resolucin ha proporcionado la ecuacin de
descifrado x=Sy+C. Si la suposicin anterior es correcta, esta ecuacin permitir el
descifrado del criptograma. En otro caso, habr que efectuar otras conjeturas con la
procedencia de las letras T y H y resolver los correspondientes sistemas de ecuaciones,
117
7. GEBRA Y CRIPTOGRAFA
hasta dar con la ecuacin de descifrado correcta. No ser necesario resolver muchos de
ellos.
La seguridad del criptosistema afn se aumenta ampliamente si en lugar de partir de
una ecuacin del tipo y=ax+b, lo hacemos de un sistema con varias ecuaciones y varias
indeterminadas x e y; tal y como hizo Hill en su publicacin. Por ejemplo, consideremos
el siguiente sistema de cuatro ecuaciones, cuatro indeterminadas x y otras tantas y:
y1
y2
y3
y4
=
=
=
=
Cx1
Bx1
Gx1
Lx1
+
+
+
+
Dx2
Fx2
Dx2
Bx2
+
+
+
+
Bx3
Bx3
Hx3
Fx3
+
+
+
+
Bx4
Ex4
Fx4
Dx4
Si en este sistema cambiamos las x por letras, entonces las y toman el valor que
proporciona el resultado de efectuar las operaciones indicadas en cada ecuacin. Por
ejemplo, cambiemos x1 por A, x2 por T, x3 por A, x4 por C y hagamos operaciones segn
nuestra aritmtica de letras:
y1
y2
y3
y4
=
=
=
=
CA +
BA +
GA +
LA +
DT +
FT +
DT +
BT +
BA +
BA +
HA +
FA +
BC =
EC =
FC =
DC =
I (20+320+10+12=62 8)
A (10+520+10+42=108 0)
P (60+320+70+52=70 16)
(110+120+50+32=26)
Z
Obtenemos entonces las cuatro letras I, A, P y Z. Estamos ahora ante una regla que
transforma una cuaterna de letras en otra y que puede dar lugar a un mtodo de cifrado.
Del tipo poligrfico, ya que antes de cifrar hay que dividir el texto en claro en bloques de
cuatro letras:
Claro: A T A C A M O S A L A M A N E C E R X X
Cifrado: I A P Z P P T J R V M T R W W M C Y O L
(Ntese que hemos aadido dos letras nulas al final del texto en claro para aumentar
el nmero de sus letras a un mltiplo de cuatro y poder as dividirlo en trozos de cuatro
letras cada uno.)
De nuevo se presenta el mismo problema que antes: cmo descifra el mensaje el
receptor del mismo? La solucin tambin es idntica: despejando las indeterminadas x en
el sistema de ecuaciones que ha producido el criptograma. Ello puede hacerse despejando
sucesivamente una incgnita en una ecuacin y sustituirla en las restantes; pero este
proceso es largo y tedioso con la aritmtica de letras. Ms cmodo resulta recurrir al
clculo matricial, que esperemos no sea del todo desconocido por el lector. Para ello,
escribamos el anterior sistema de ecuaciones en forma matricial:
118
7. LGEBRA Y CRIPTOGRAFA
y 1 C D B B x1
y2 B F B E x2
y = G D H F x
3
3
y
4 L B F D x4
6
G D H F
11
L B F D
3
5
3
1
1
1
7
5
1
4
= 346
5
3
119
7. GEBRA Y CRIPTOGRAFA
1
6
11
3
5
3
1
1
1
7
5
4
5
8
346
155
= 346
81
346
216
346
8
346
18
346
92
346
130
346
38
346
1
346
91
346
12
346
50
346
26
346
56
346
34
346
38
11
L
M 1
T T
W J
=
A N
A B
N Q
L P
Y V
X E
Y calculada esta matriz, el receptor del mensaje puede descifrar el mismo a partir de
la ecuacin matricial X = M 1Y:
Cifrado: I A P Z P P T J R V M T R W W M C Y O L
X = M 1Y
Claro: A T A C A M O S A L A M A N E C E R X X
Este modo de cifrar a partir de ecuaciones matriciales de la forma Y = M X es el
criptosistema de Hill que mencionamos al comienzo del captulo. La clave es la matriz M,
que debe ser cuadrada y regular (as se llaman las matrices que tienen inversa). En
nuestro ejemplo, la matriz M empleada es de tamao 44, con 4 filas y 4 columnas; pero
perfectamente pueden considerarse matrices con cualquier otra dimensin. No obstante,
manejando slo matrices regulares 44, el nmero de claves es ya enorme. Puede
demostrarse que, con nuestro alfabeto espaol, el nmero de tales matrices se eleva a
44956345164157176721920. Y como este nmero representa un poco ms de la mitad del
total de matrices 44 (exactamente: el 56,36%), la bsqueda de matrices regulares puede
hacerse de modo aleatorio: eligiendo unas pocas al azar, muy probablemente alguna de
ellas es regular y puede emplearse como clave. No obstante, no es necesario recurrir al
azar para encontrar tales matrices: el lgebra matricial dispone de sencillos mtodos que
120
7. LGEBRA Y CRIPTOGRAFA
permiten obtener amplias colecciones matrices regulares y sus inversas, del tamao que se
desee. Con ellos, la generacin de claves en este criptosistema no constituye ningn
problema.
Resulta curioso notar que al emplear como clave matrices cuyas filas y columnas
son nulas a excepcin de un nico elemento que es un 1, el cifrado resultante es una
transposicin regular (vase el Captulo 5). Por ejemplo, de este tipo es la matriz 55 que
figura en la siguiente ecuacin matricial:
y1 0
y2 0
y = 0
3
y4 0
y
5 1
1 0 0 0 x1
0 0 1 0 x2
0 1 0 0 x3
0 0 0 1 x4
0 0 0 0 x5
Sabemos que ha sido originado con el criptosistema de Hill cifrando cierto texto
que comienza as: EN NOMBRE DE LA REINA.... Esta informacin va a ser
suficiente para obtener la matriz M que constituye la clave. O mejor an, su inversa M 1
que permite el descifrado.
En primer lugar, examinemos cul puede ser el tamao nn de estas matrices.
Puesto que el criptograma es la concatenacin de bloques de n letras, su longitud total ha
121
7. GEBRA Y CRIPTOGRAFA
de ser un mltiplo de este entero n. Dado que tal longitud es 68 y sus divisores son 2, 4 y
17, stos son los valores posibles de n. Y como emplear matrices 22 no es muy seguro y
las de tamao 1717 son poco manejables, contemplaremos como primera opcin de n el
valor 4. Entonces, dividiendo el fragmento de texto en claro y su correspondiente cifrado
en tetragramas, tenemos el siguiente esquema de descifrado:
Cifrado: H A H P T M D D Z J G Q G E T D . . .
Claro:
E N NO M B R E D E LA R E I N A...
M
T
B
1
R = M M ,
E
D
D
D
E
1 Z
L = M J ,
A
G
R
Q
E
1 G
I = M E
N
T
N
N
M D R
H T D Q
B E E
Z G
1 A
= M
H M J E
R L I
E A N
P
D
G
T
M 1D = C M 1D D 1 = C D 1 M 1 = C D 1
Afortunadamente, existe tal matriz D 1. Su cmputo puede realizarse de la manera
indicada antes. Resulta la siguiente matriz:
D 1
J M
F U
=
H F
U G
122
U S
A C
7. LGEBRA Y CRIPTOGRAFA
Entonces:
M 1 = CD 1
E M D R J M
N B E E F U
=
N R L I H F
O
E
A
N
U G
Q J R
U S R F
=
A C T P
K W R
P R
X Q
Q C
T
y3
y
5
y
7
y2 B C
y4 A H
=
y6 F M
y8 H L
N M x1
L K x3
J x5
N
Z
x7
x2
x4
x6
x8
Notemos que con una ecuacin matricial como sta se cifran 8 letras de una vez, el
doble de las que se cifraran empleando una matriz estndar 44. Ello hace el
criptosistema resultante ms resistente a un ataque con texto cifrado nicamente, ya que
es mucho menos probable que haya octogramas repetidos en los criptogramas que
tetragramas. No obstante, es igualmente inseguro ante un ataque con texto pleno y su
correspondiente cifrado. La matriz que permite el descifrado se obtiene resolviendo una
ecuacin matricial similar a la anterior C = M 1D.
Es interesante observar que criptosistemas de otra naturaleza pueden describirse
tambin en trminos de ecuaciones algebraicas. Ya lo hemos comprobado para las
transposiciones regulares. Mostremos a continuacin que tambin el criptosistema de
Vigenre, estudiado en el Captulo 3, tiene su representacin algebraica. Por ejemplo,
describamos con ecuaciones los procesos de cifrado y descifrado que se consiguen a partir
de la Tabla 3.2 y la palabra clave ROSA. A tal efecto, denotemos con la letra griega a
la sustitucin que genera la mencionada Tabla 3.2:
123
7. GEBRA Y CRIPTOGRAFA
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 r y p t o g a f i b d e h j k l m n q s u v w x z
y3 = ( x3 + S)
y4 = ( x4 + A)
1
x3 = ( y3 ) S
x = 1( y ) A
4
4
En fin, concluyamos el captulo sealando que tanto el cifrado de Hill como esta
descripcin del de Vigenre muestran como puede emplearse el lgebra en el diseo de
criptosistemas. Lo podemos resumir as: primero se identifican letras de un alfabeto (o,
ms generalmente, bloques de letras) con nmeros u otros objetos matemticos entre los
que haya definida una aritmtica; y a continuacin se transforman segn una ecuacin de
la forma
y = f(x, k),
donde f(x, k) es una expresin algebraica que involucra tanto al texto en claro x como a la
clave k. En el anterior cifrado de Vigenre esta expresin algebraica consiste en aplicar la
sustitucin a una suma, en el de Hill es un producto de matrices. En ambos casos
resultan ecuaciones sencillas que no proporcionan un cifrado seguro; pero pueden
emplearse otras ms complejas que quizs aumenten esta seguridad. El problema est en
considerar ecuaciones en las que resulte fcil despejar x, para que el receptor pueda
descifrar el mensaje; pero imposible despejar k, para que el criptoanalista no acceda a la
clave.
124
8
MQUINAS DE ROTORES
8. MQUINAS DE ROTORES
126
8. MQUINAS DE ROTORES
Jefferson ide su rueda durante la dcada que va de 1790 a 1800. Durante los cuatro
primeros aos de este periodo, Jefferson fue secretario de estado encargado de la poltica
exterior. La necesidad de cifrar la correspondencia trajo su inters por la Criptografa. No
obstante, el departamento del que Jefferson era secretario nunca hizo uso de la rueda y
continu empleando el nomencltor como criptosistema. Por esta razn, el invento de
Jefferson cay rpidamente en el olvido; y ah continuara si algn historiador interesado
por la Criptografa no lo hubiese rescatado de la biblioteca del Congreso americano.
La rueda de Jefferson fue reinventada en 1891 por el experto en cifras del ejrcito
francs Etinne Bazeries, quien con seguridad desconoca su existencia. La nica
diferencia entre el cilindro ideado por Bazeries y el de Jefferson est en que el primero
emplea 20 discos con 25 letras en lugar de los 36 discos y 26 letras del segundo. Bazeries
estaba convencido que su cilindro era indescifrable y, presumiendo de ello, lo someti al
criptoanlisis de sus compaeros en el ejrcito francs. Uno de ellos, el marqus Gatan
Henri Lon de Viaris, no descans hasta que dos aos despus logr derrotar al cilindro.
De Viaris haba inventado en 1888 una ingeniosa mquina de cifrar que incluso imprima
el texto cifrado, pero fue ridiculizada por el criptoanlisis de Bazeries. Esta fue la razn
de su empeo.
Curiosamente, el ataque de De Viaris fue posible por el modo en que Bazeries
dispuso el orden de las letras en los discos de su cilindro. En catorce de los veinte discos,
Bazeries coloc las letras ordenndolas a partir de frases mnemotcnicas como Dieu
protge la France, Honneur et patrie, Instruisez la jeunesse, etc. Al hacerlo as,
cualquiera que sea la posicin de los discos en el cilindro, en l hay siempre generatrices
con letras repetidas. Ello permite iniciar el criptoanlisis mediante el mtodo de De
Viaris, el cual no describiremos aqu. Si Bazeries hubiese ordenado las letras de los 20
discos de modo que girndolos convenientemente resultasen generatrices sin letras
repetidas, el ataque de De Viaris no habra sido posible. (Tal ordenacin de letras en los
discos puede conseguirse mediante cuadrados latinos, nombre que reciben las
127
8. MQUINAS DE ROTORES
128
8. MQUINAS DE ROTORES
varias partes del mundo se lleg a la misma solucin: el rotor. Tratar de explicar su
funcionamiento es el objeto de los siguientes prrafos.
Un rotor es un disco delgado fabricado con material aislante y con contactos
elctricos en sus dos caras, en nmero igual a las letras del alfabeto que se emplee. (En la
Figura 8.11 se muestra un rotor de la mquina Enigma.) Cada contacto de una cara se
conecta aleatoriamente con otro de la cara opuesta mediante un cable elctrico. Por otra
parte, los contactos de una cara rozan con otros que enlazan con las letras del alfabeto en
claro y, anlogamente, los contactos de la cara opuesta lo hacen con otros que conectan
con las letras del alfabeto cifrado. Cuando se pulsa una tecla, una corriente elctrica
atraviesa el rotor transformando la letra de la tecla pulsada en otra. Ayudmonos de un
ejemplo para entender mejor esta idea. Para simplificar, consideremos un rotor con cinco
contactos nicamente, correspondiente a un alfabeto con ese nmero de letras. Es el que
hemos esquematizado en la Figura 8.4.a).
Cifrado
Claro
Cifrado
a) Posicin inicial
Claro
b) Tras un giro
En esta figura puede observarse que si la corriente fluye de derecha a izquierda, las
letras del alfabeto en claro sufrirn la siguiente transformacin:
A
Tras pulsar una tecla, el rotor gira una o varias posiciones. Esto trae consigo una
conexin diferente entre los contactos de las letras del alfabeto en claro y las del alfabeto
cifrado. Se obtiene as una nueva sustitucin con la que se cifra la siguiente letra. En la
Figura 8.4.b) mostramos el mismo rotor anterior despus de haber girado una posicin.
Da lugar a esta nueva transformacin del alfabeto en claro:
129
8. MQUINAS DE ROTORES
A
C
D
B
D
B
B
E
C
E
C
D
C
D
A
D
E
A
D
B
E
A
B
E
E
A
B
C
A
C
Para identificar la posicin del rotor en cada momento, este lleva inscrito en su
borde nmeros o letras en el orden habitual. Antes de empezar a cifrar el texto, el emisor
debe situar el rotor en una posicin inicial convenida con el receptor autorizado.
Precisamente, esta posicin inicial es la clave. A continuacin, cifra el texto tecleando
una a una sus letras. Por ejemplo, imaginemos que disponemos de una mquina que
implementa el rotor de cinco contactos que nos viene ayudando en esta explicacin y que
en su borde figuran nmeros de 1 al 5, correspondiendo con sus diferentes posiciones
conforme a la Tabla 8.1. Si situamos el rotor en la posicin inicial que indica el 3, la
palabra DECADA se cifrara como AAACEB. La citada Tabla 8.1 permite efectuar tal
cifrado.
Para descifrar un mensaje, se deben generar las inversas de las sustituciones
empleadas en el proceso de cifrado. Un modo muy sencillo de obtenerlas es haciendo
pasar la corriente elctrica por el rotor en sentido contrario. As se hizo habitualmente,
incorporando en las mquinas de rotores un mecanismo al efecto. Tras activarlo, el
receptor del mensaje colocaba el rotor en la posicin inicial indicada por la clave y, al
teclear las letras del texto cifrado, la mquina revelaba el texto en claro.
130
8. MQUINAS DE ROTORES
En las lneas anteriores hemos tratado de describir el cifrado que produce una
mquina con un rotor. Si lo hemos hecho con mediana claridad, el lector habr
reconocido que es polialfabtico y con periodo y claves limitados por el nmero de letras
del alfabeto. Un nmero demasiado pequeo para alcanzar una mnima seguridad.
Cualquier criptoanalista, con muy poco texto cifrado solamente, construira sin mucho
esfuerzo una tabla similar a la 8.1. Y con ella descifrara rpidamente todos los mensajes.
Pero la situacin cambia radicalmente si en lugar de un nico rotor se utilizan
varios, concatenando uno a continuacin de otro. En la Figura 8.5 mostramos como
hacerlo, de nuevo con un alfabeto de 5 letras para simplificar el dibujo. En l, los rotores
estn en una de las 125 posiciones posibles. Con nuestro alfabeto completo de 27 letras, al
concatenar tres rotores el nmero de claves se eleva ya a 273 = 19683. Y este nmero es
tambin el de sustituciones distintas que pueden generarse. Un periodo tan grande que
cada letra del texto en claro se puede cifrar con una transformacin diferente. Incluso se
tendran que cifrar muchos mensajes para volver a utilizar la misma sustitucin. Tal
cifrado debe ser seguro; o, al menos, as lo creyeron los inventores del rotor.
Cifrado
Claro
Segn David Khan, el que hizo los primeros dibujos de un sistema de rotores fue el
americano Edward H. Hebern en 1917, y un ao despus construy la primera mquina
con dicho dispositivo. En 1921 mostr uno de sus inventos a expertos en cifras de la
armada americana, quienes quedaron impresionados. Meses despus, Hebern, animado
por el inters de la armada y creyendo que las mquinas de rotores gobernaran el mundo
de las cifras, fund la Hebern Electric Code, la primera industria destinada a fabricar
mquinas cifradoras. La idea de un gran negocio anim a numerosos inversores, y en
poco tiempo la factora lleg a contar con un capital de un milln de dlares y unos 1500
empleados. Sin embargo, en los siguientes cinco aos posteriores a su creacin, la Hebern
Electric Code apenas vendi una docena de sus mquinas y fue a la bancarrota.
En verdad, la armada americana estuvo muy interesada en la mquina de Hebern y
en 1924 lo tena todo preparado para incorporarla como su sistema de cifras. Pero la
armada, queriendo constatar la seguridad del criptosistema que proporcionaba, remiti 10
131
8. MQUINAS DE ROTORES
mensajes cifrados a la oficina de cifras del ejrcito de tierra, el Army Signal Corps. Y
all, para desgracia de la Hebern Electric Code, los criptogramas toparon con el genio del
mejor criptoanalista del momento, el antes mencionado William Friedman, quien descifr
los 10 criptogramas en seis semanas. Esta fue la causa de la quiebra de la empresa de
Hebern.
La referida mquina de Hebern se muestra en la Figura 8.6. Consta de cinco rotores
concatenados que se pueden extraer y volver a colocar en otro orden, incluso invertidos.
En total, de 3840 maneras distintas. Los cinco rotores van situados entre dos ruedas de
trinquete de aluminio, cuya funcin es gobernar su movimiento. Como los rotores, las
ruedas tambin giran y llevan grabadas en su borde las 26 letras del alfabeto ingls, en
correspondencia con sus posibles posiciones.
132
8. MQUINAS DE ROTORES
1
H
H
I
I
2
B
B
B
B
3
P
P
P
X
4
X
X
X
X
5
V
W
X
Y
D
M
N
O
P
133
8. MQUINAS DE ROTORES
tambin con las posibilidades de cmputo que ofrecan algunas mquinas automticas,
predecesoras de los ordenadores. La mquina de Hebern fue vencida de nuevo.
Esta nueva derrota apag por completo la ilusin de Hebern de hacerse millonario
vendiendo mquinas criptogrficas. Pero no disminuy el deseo del ejrcito americano de
poseer una mquina cifradora impenetrable. Trabajando sobre el modelo de Hebern, en
1934 consiguieron una mquina de rotores que super todos los tests de criptoanlisis a
los que fue sometida. Recibi el nombre de Electric Cipher Machine (ECM) Mark I.
Ms an, poco antes de comenzar la Segunda Guerra Mundial, el ejrcito americano logr
la que sin duda ha sido la mquina de rotores ms segura: la ECM Mark II, ms conocida
como Sigaba. Es la que se muestra en la Figura 8.7. En esta mquina, el movimiento de
los cinco rotores que intervienen en el cifrado es complicadsimo: tras pulsar una tecla, de
uno a cuatro de estos rotores avanzan guiados por una seal electrnica que se esconde al
atravesar otros diez rotores que a su vez se mueven mediante un dispositivo mecnico.
Hasta 1959, Sigaba ha cifrado la correspondencia ms confidencial del ejrcito
americano. No porque entonces su seguridad estuviera ya comprometida, sino porque era
demasiado lenta para el de trfico de mensajes que deba soportar. Todava hoy es objeto
de estudios de criptoanlisis en departamentos de universidades americanas.
134
8. MQUINAS DE ROTORES
Consta de cuatro rotores cuyo giro es causado por la accin de los dientes de otras
tantas ruedas. Estas cuatro ruedas avanzan una posicin cada vez que se pulsa una tecla,
completando una revolucin cada 11, 15, 17 y 19 pulsaciones, respectivamente. El
nmero de dientes de las ruedas es inferior a estos nmeros, por lo que hay ciertas
posiciones de cada rueda en las que el rotor que gua no avanza. Este diseo determina un
movimiento de los rotores bastante irregular, dependiente incluso de las posiciones
iniciales de las ruedas. Los rotores disponen de 28 contactos, ya que ste es el nmero de
letras del alfabeto de la mquina. Las claves son cada una de las posiciones posibles de
los rotores y las ruedas; en total: 11151719284, cifra que supera los treinta mil
millones. Todas estas caractersticas hacen de Enigma A una mquina de rotores muy
interesante, de difcil criptoanlisis. No obstante, apenas se vendieron unas pocas
unidades. Y eso que la mquina goz de enorme publicidad.
Ello no desanim a la firma alemana y en breve lanz al mercado una nueva versin
de la mquina, Enigma B. Muy parecida al modelo A, con la nica diferencia significativa
de contener el alfabeto estndar de 26 letras. De nuevo fue un fracaso comercial.
La compaa alemana entendi que la ansiada venta masiva de mquinas de cifrar
se lograra con un aparato de reducido tamao, que fuera fcilmente transportable. Con
esta idea comercializ Enigma C en 1926. Naturalmente, la disminucin de peso y
volumen en la mquina trajo consigo importantes cambios respecto a los modelos
135
8. MQUINAS DE ROTORES
Rotor
Rotor
Rotor
Teclado
Con el empleo del reflector, las sustituciones que se obtienen son involutivas. Esto
significa que si una letra se transforma en otra, sta tambin se transmuta por aquella. De
este modo, no es necesario alterar el sentido del flujo elctrico para descifrar. El receptor
del mensaje slo tiene que situar los rotores en el mismo orden y en las mismas
posiciones que lo haya hecho el emisor. En consecuencia, el reflector trae consigo una
simplificacin en la mecnica y en el uso de la mquina. Incluso sus creadores pensaron
que al atravesar dos veces la corriente elctrica el banco de rotores, el cifrado resultante
era ms seguro, equivalente al de una mquina con el doble nmero de rotores. Pero todo
lo contrario, el reflector impide que una letra se transforme en s misma y esto constituye
una de las debilidades de Enigma, lo que no pasara inadvertido a los criptoanalistas.
En Enigma C, el reflector se coloca en una de dos posibles posiciones y permanece
esttico durante el cifrado. A su derecha van los tres rotores, en el orden que se desee.
Cada rotor puede situarse en 26 posiciones diferentes, ya que ste es el nmero de sus
contactos. Para identificar esta posicin, los rotores llevan en su borde un anillo bien con
el alfabeto estndar de la A a la Z, bien con los nmeros del 1 al 26. La letra (o
nmero) correspondiente a la posicin del rotor es la nica visible al usuario a travs de
una pequea ventana en la mquina. Curiosamente, el anillo puede girar con respecto al
cuerpo del rotor y, en consecuencia, su rotacin respecto al corazn del rotor forma parte
de la configuracin de la mquina antes de empezar a cifrar. Teniendo todo esto en
cuenta, el nmero de claves es el resultado de multiplicar las dos posiciones del reflector
por las seis ordenaciones posibles de los rotores, por 263, que son sus distintas posiciones
136
8. MQUINAS DE ROTORES
iniciales, y otra vez por 263, debido al desplazamiento de cada anillo. En total,
3706989312.
El modo en que se mueven los rotores es otra de las simplificaciones de la versin C
de Enigma. Sus rotores incorporan en una de sus caras una rueda dentada y en la otra una
muesca destinada a encajar los dientes de la rueda de otro rotor. Al pulsar una tecla, y
antes de que circule la corriente elctrica por el banco de rotores, el rotor de la derecha
gira una posicin. Cuando llega a cierto punto en su revolucin, la muesca atrapa un
diente del rotor central y le hace avanzar un paso. Y de igual modo mueve el rotor de en
medio a su vecino de la izquierda, adelantando ambos una posicin cuando el rotor
central alcanza determinado punto en su rotacin. Por ejemplo, suponiendo que la muesca
de un rotor atrapa un diente cuando la Z de su anillo es visible por la ventanilla, de
modo que en la siguiente pulsacin har avanzar al rotor contiguo, una sucesin de letras
en dicha ventanilla podra ser esta:
H
H
H
I
I
Y
Y
Z
A
A
Y
Z
A
B
C
137
8. MQUINAS DE ROTORES
Las conexiones internas de los rotores con que se equip a Enigma D se presentan
en la Tabla 8.2. La hemos elaborado con datos del libro de C. A. Deavours y L. Kruh que
incluimos en la bibliografa. Expliqumosla. Segn el mencionado texto, los contactos de
los rotores estn numerados del 1 al 26 pero en orden inverso a como lo hacen las letras
del anillo exterior, de modo que si se hace coincidir la A con el contacto 1, entonces la
Z lo hace con el 2, la Y con el 3, etctera. Situando as los anillos en los tres rotores,
sus contactos se pueden identificar ya por letras. Hecha esta identificacin, las letras en
negrita de la primera fila de la tabla representan a los contactos de la cara del rotor por la
que entra la corriente por vez primera, y las letras de las filas de los rotores corresponden
a los contactos homnimos en la otra cara. Van colocadas en el orden que indica la
conexin. Por ejemplo, en el rotor 1 el contacto A se conecta con el L. La aclaracin
anterior no es necesaria para el reflector, ya que su anillo no se desplaza. En su fila hemos
agrupado entre parntesis los pares de contactos conectados. Por ejemplo, los contactos
B y M estn conectados en el reflector. Imaginemos ahora que, sin girar los anillos,
colocamos los rotores en la mquina en la posicin en que es visible la letra A por la
ventanilla. Entonces los contactos del rotor derecho tocaran a los del Stator y ello nos
permite identificar tambin con letras a sus contactos. En tal situacin, la segunda fila de
la tabla contiene la permutacin que tiene lugar entre las teclas y los contactos de Stator.
Y para completar la descripcin de Enigma D, sealemos que en los tres rotores la
muesca que hace avanzar al rotor contiguo va junto al contacto 21 (G en la
configuracin anterior) y producir tal avance despus de verse el contacto 2 (Z) en la
ventanilla.
Stator:
Rotor 1:
Rotor 2:
Rotor 3:
Reflector:
A B C D E F G H I J K LMN O P Q R S T U VWX Y Z
J WU L CMN O H P Q Z Y X I R A D K E G V B T S F
L P G S Z MH A E O Q K V X R F Y B U T N I C J DW
S L V G B T F X J Q O H EW I R Z Y AMK P C N DU
C J G D P S H K T U R AWZ X F MY N Q O B V L I E
(AI) (BM) (CE) (DT) (FG) (HR) (JY) (KS) (LQ) (NZ) (OX) (PW) (UV)
Tabla 8.2. Especificaciones de los rotores de Enigma D
Enigma D fue un gran xito comercial. Se vendi por todo el mundo. Lgicamente,
la popularidad de la mquina lleg a odos de muchos ejrcitos, quienes consideraron
emplearla como sistema de cifras. Entre ellos el propio ejrcito alemn, naturalmente.
Pero enseguida se dieron cuenta de las debilidades de Enigma D; de hecho, llegaron a
saber como criptoanalizarla. Conocimiento que mantuvieron en secreto. Por una razn
evidente: para poder acceder a las comunicaciones de ejrcitos de otros pases que
estuvieran cifrando con Enigma.
El criptoanlisis de Enigma D deriv tambin en una versin militar alemana de
Enigma, con dos modificaciones importantes respecto a la comercial que elevaron
considerablemente la seguridad. Este modelo militar se llam Enigma I y apareci en
junio de 1930.
138
8. MQUINAS DE ROTORES
a) Enigma D
b) Enigma I
Cada enchufe del Stecker va asociado a una letra del alfabeto. Mediante cables se
conectan pares de enchufes dando lugar a una permutacin involutiva que acta
doblemente, entre el teclado y el banco de rotores y entre ste y el panel de lmparas. As,
cada vez que se pulsa una tecla y tras producirse el avance de los rotores, se origina una
corriente elctrica que circula primero por el Stecker antes de adentrarse en el banco de
rotores. Si un cable conecta el enchufe correspondiente a la letra pulsada con otro, esta
letra se transforma en la asociada al otro enchufe. Tras abandonar el banco de rotores, la
corriente elctrica pasa de nuevo por el Stecker antes de concluir su viaje en el panel de
lmparas, produciendo el mismo efecto que antes. Esta doble entrada del flujo elctrico en
el Stecker mantiene el carcter involutivo del cifrado.
Por otro lado, el Stecker aumenta considerablemente el nmero de claves. Por
ejemplo, segn consta en el manual de operaciones de la Wehrmacht de noviembre de
1939, se empleaban diez cables que conectaban veinte enchufes. Ello puede hacerse de
ms de 150 billones de modos diferentes.
139
8. MQUINAS DE ROTORES
140
8. MQUINAS DE ROTORES
A B C
Rotor I: E K M
Rotor II: A J D
Rotor III: B D F
Rotor IV: E S O
Rotor V: V Z B
Rotor VI: J P G
Rotor VII: N Z J
Rotor VIII: F K Q
Rotor : L E Y
Rotor : F S O
Reflector A:
Reflector B:
Reflector C:
Reflector B dnn:
Reflector C dnn:
D E F G H I J K LMN O P Q R S T U VWX Y Z
F L G D Q V Z N T OWY H X U S P A I B R C J
Q
K S I R U X B L HWTMC Q G Z N P Y F V O E
E
H J L C P R T X V Z N Y E I WG A KMU S Q O
V
V P Z J A Y Q U I R H X L N F T G K D C MW B
J
R G I T Y U P S D N H L X A WM J Q O F E C K
Z
V O U M F Y Q B E N H Z R D K A S X L I C T W M, Z
H G R C X M Y S W B O U F A I V L P E K Q D T M, Z
H T L X O C B J S P D Z R A M E W N I U Y G V M, Z
J V C N I XWP B QMD R T A K Z G F U H O S
K A N U E R HMB T I Y CWL Q P Z X V G J D
(AE) (BJ) (CM) (DZ) (FL) (GY) (HX) (IV) (KW) (NR) (OQ) (PU) (ST)
(AY) (BR) (CU) (DH) (EQ) (FS) (GL) (IP) (JX) (KN) (MO) (TZ) (VW)
(AF) (BV) (CP) (DJ) (EI) (GO) (HY) (KR) (LZ) (MX) (NW) (TQ) (SU)
(AE) (BN) (CK) (DQ) (FU) (GY) (HW) (IJ) (LO) (MP) (RX) (SZ) (TV)
(AR) (BD) (CO) (EJ) (FN) (GT) (HK) (IV) (LM) (PW) (QZ) (SX) (UY)
141
8. MQUINAS DE ROTORES
142
8. MQUINAS DE ROTORES
143
8. MQUINAS DE ROTORES
144
8. MQUINAS DE ROTORES
145
9
CRIPTOANLISIS DE ENIGMA
9. CRIPTOANLISIS DE ENIGMA
148
9. CRIPTOANLISIS DE ENIGMA
Texto en claro
CGXINFORMAX
WUZKVOKXKWA
Reflector
Rotor
Rotor
Stator
Texto cifrado
CGXINFORMAX
Stator
BGFQVIQTQBJ
WUZKVOKXKWA
Supongamos ahora que con los nuevos fragmentos de texto repetimos la accin
anterior, empleando un rotor en lugar del Stator. Obtenemos otros dos trozos. Llamemos
C1 al transformado del fragmento UNTHXMIDYJT y D1 al de BGFQVIQTQBJ.
Sucede que si el rotor empleado es el rotor derecho de la clave y en la posicin inicial
correcta, entonces C1 y D1 son isomorfos, segn explicamos a continuacin. En el
proceso de cifrado, C1 se transforma en D1 mediante la accin del bloque constituido por
el reflector y los rotores izquierdo y central. Si durante esta transformacin tal bloque ha
permanecido inmvil, ha actuado como un reflector fijo; esto es, ha tenido lugar una
sustitucin involutiva. Ello implica que, por ejemplo, si una A en C1 se cambia una vez
por una P en D1, entonces toda A de C1 se transforma en P en D1 y viceversa: toda P de
C1 se sustituye por A en D1. En esto consiste el isomorfismo. Puede suceder que, durante
la transformacin de C1 en D1, el rotor central haya avanzado (recordemos que ello
ocurre tras verse la Z del rotor derecho en la ventanilla correspondiente.) En tal caso,
puesto que los fragmentos de texto tienen slo once letras, lo habr hecho una o dos veces
seguidas (en este segundo caso, el rotor central habr movido tambin al izquierdo.) Ello
rompe el isomorfismo entre C1 y D1. Aunque entonces estos fragmentos se parten en dos
trozos en los que el rotor central est inmvil y, en consecuencia, son isomorfos.
Por lo general, si C1 y D1 se obtienen con un rotor diferente al rotor derecho de la
clave o con el mismo rotor pero en una posicin inicial distinta, entonces C1 y D1 no son
isomorfos.
149
9. CRIPTOANLISIS DE ENIGMA
A
L
O
E
P
V
H
B
T
W
F
G
Z
J
K
D
Q
I
K
C
A
T
N
G
M
F
X
B
P
F
Q
W
I
C
U
X
G
H
A
K
L
E
R
J
L
D
B
U
O
H
N
G
Y
M
C
G
R
X
J
D
V
Y
H
I
B
L
M
F
S
K
M
E
C
V
P
I
O
H
Z
N
Q
D
S
Y
K
E
W
Z
I
J
C
M
N
G
T
L
N
F
D
W
Q
J
P
I
A
O
R
H
E
Z
L
F
X
A
J
K
D
N
O
H
U
M
O
G
E
X
R
K
Q
J
B
P
S
I
T
F
M
G
Y
B
K
L
E
O
P
I
V
N
P
H
F
Y
S
L
R
K
C
Q
T
J
U
A
G
H
Z
C
L
M
F
P
Q
J
W
O
Q
I
G
Z
T
M
S
L
D
R
U
K
V
B
N
H
A
D
M
N
G
Q
R
K
X
P
R
J
H
A
U
N
T
M
E
S
V
L
W
C
O
I
I
E
N
O
H
R
S
L
Y
Q
S
K
I
B
V
O
U
N
F
T
W
M
X
D
P
J
B
J
O
P
I
S
T
M
Z
R
T
L
J
C
W
P
V
O
G
U
X
N
Y
E
Q
K
C
F
K
Q
J
T
U
N
A
S
U
M
K
D
X
Q
W
P
H
V
Y
O
Z
F
R
L
D
G
P
L
K
U
V
O
B
T
V
N
L
E
Y
R
X
Q
I
W
Z
P
A
G
S
M
E
H
Q
R
M
V
W
P
C
U
W
O
M
F
Z
S
Y
R
J
X
A
Q
B
H
T
N
F
I
R
S
L
N
X
Q
D
V
X
P
N
G
A
T
Z
S
K
Y
B
R
C
I
U
O
G
J
S
T
M
W
O
R
E
W
Y
Q
O
H
B
U
A
T
L
Z
C
S
D
J
V
P
H
K
T
U
N
X
Y
P
F
X
Z
R
P
I
C
V
B
U
M
A
D
T
E
K
W
Q
I
L
U
V
O
Y
Z
S
Q
Y
A
S
Q
J
D
W
C
V
N
B
E
U
F
L
X
R
J
M
V
W
P
Z
A
T
G
R
B
T
R
K
E
X
D
W
O
C
F
V
G
M
Y
S
K
N
W
X
Q
A
B
U
H
Z
S
U
S
L
F
Y
E
X
P
D
G
W
H
N
Z
T
L
O
X
Y
R
B
C
V
I
A
C
T
T
M
G
Z
F
Y
Q
E
H
X
I
O
A
U
M
P
Y
Z
S
C
D
W
J
B
D
V
U
N
H
A
G
Z
R
F
I
Y
J
P
B
V
N
Q
Z
A
T
D
E
X
K
C
E
W
U
V
I
B
H
A
S
G
J
Z
K
Q
C
W
O
R
A
B
U
E
F
Y
L
D
F
X
V
O
W
C
I
B
T
H
K
A
L
R
D
X
P
S
B
C
V
F
G
Z
M
E
G
Y
W
P
J
X
J
C
U
I
L
B
M
S
E
Y
Q
T
C
D
W
G
H
A
N
F
H
Z
X
Q
K
D
Y
D
V
J
M
C
N
T
F
Z
R
U
D
E
X
H
I
B
O
G
I
A
Y
R
L
E
K
Z
W
K
N
D
O
U
G
A
S
V
E
F
Y
I
J
C
P
H
J
B
Z
S
M
F
L
E
9. CRIPTOANLISIS DE ENIGMA
inicial del rotor. A partir de la posicin P los textos estn partidos en dos. Ello es porque
el rotor ha llegado a la posicin Z durante su movimiento, ocasionando a continuacin el
avance del rotor central. Este momento lo representa el espacio en blanco que parte en
dos los fragmentos.
Z: PZYQSSWEVHJ
NQGNLWLJZLI
I: HONUROXYJBN
JZOHDXUDOXC
R: BDCPFPTV YFI
A: FCBJGLCHNAC
HDZGBOYCRJO
J: AQPFAURZMUY
PSAAWANWGND
S: URQZXJG TAQS
B: QLKDJYVXBKW
AVFQMMQMUCA
K: KIHLBNJSVOE
BKUUGQFQIYW
T: OUTAVB YMSWT
C: WMLWZQNIELP
GXYRSFSNDWU
L: LGFXUFMCWHQ
VYMNHBTJAEJ
U: HKJTO EAGQIM
D: IFECKSBOUEV
ZPQKEZKGEPM
M: EZYRETVDPNK
NBPTAHWPYQB
V: NVUG INSZJCZ
E: CPOVQKEAFRO
RNEXYSITXVP
N: RTSJFWWWZGC
QRYMNTMIRKD
W: GBA YBOQFDUR
FGHPQYBLHOY
O: JMLMYMPJAYF
ZCZEFNXALCV
X: YN MAHHJYWXT
IAXRTRVNIGZ
P: LSRVLXZBTM O Y: M HGSARDQCGL
YTIJCJOFBUS
Q: DLKWDDADG PP
F: UQPNCIUULJG
G: XJIBWBFMXLU
H: GWVEOVLPRDX
DODLXRJH DPG
EGWWQSB SVIZ
XJJCKL EYJSF
KSBOD VNKMTY
CTDI JWOECMQ
EMV ACPHWNZE
AISSHFDOEF T
WW TDUCRZTRH
U XMMIUSIFTX
TUCVZIPRK OM
151
9. CRIPTOANLISIS DE ENIGMA
NPSAHMM
El espacio en blanco que hemos aadido corresponde al momento que el rotor llega
a la posicin Z. Hasta ese espacio, podemos aadir letras a C1 en virtud del isomorfismo
ya conocido: encima de la X una I, sobre la N una M... Descubrimos cuatro nuevas letras
en C1:
C1:
D1:
IAXRTRVNIGZ***I*MBI
XJIBWBFMXLUQHCXPNRX
Obtengamos las letras del texto en claro que corresponden a las cuatro letras
recuperadas. Para ello, las sometemos primero a la accin inversa del rotor nmero 1 y
despus a la del Stator. Por ejemplo, efectuemos esta operacin con la I que ocupa el
decimoquinto lugar. Despus de quince pasos, el rotor ha llegado a la posicin U. En la
Tabla 9.1, la I de la fila correspondiente a la posicin U est en la columna D; por tanto,
la sustitucin inversa del rotor cambia la I por la D. Y como segn la Tabla 8.2 la D es la
transformada de la R mediante el Stator, resulta que la R es la letra decimoquinta del texto
en claro. De igual modo procederamos con las otras tres letras y descubriramos sus
asociadas en el texto en claro. Tras hacerlo, ste queda as:
Texto en claro: CGXINFORMAX***R*QUI
C1: IAXRTRVNIGZ***I*MBI
Hemos de completar los trozos reemplazando los asteriscos por las letras correctas.
El modo de hacerlo es conjeturar con letras que den sentido al texto en claro y que, al
transformarlas, mantengan el isomorfismo entre C1 y D1. O, recprocamente, suponer
letras en C1 que no contradigan el isomorfismo y que al trasladarlas al texto en claro
conserven el significado. Esta es la parte ms delicada del criptoanlisis, donde la
intuicin es ms eficaz que la argumentacin. Por ello, mejor presentamos ya los trozos
completos:
Texto en claro: CGXINFORMAXSEXREQUI
C1: IAXRTRVNIGZOPDIHMBI
D1: XJIBWBFMXLUQHCXPNRX
Ya hemos llegado hasta el espacio en blanco en C1. Pero debemos superar la
barrera que representa. Slo es posible recurriendo de nuevo al texto en claro. En l
parece asomar una forma impersonal de los verbos requerir o requisar. Probemos con
requiere. Si acertamos, habremos prolongado correctamente C1 con tres letras ms.
152
9. CRIPTOANLISIS DE ENIGMA
Pasando ERE primero por el Stator y despus por el rotor 1 (que ha llegado a la posicin
Z), obtenemos:
C1:
D1:
IAXRTRVNIGZOPDIHMBI
XJIBWBFMXLUQHCXPNRX
GYX
NPS
153
9. CRIPTOANLISIS DE ENIGMA
JSNYMYPWJFUIRGJXELJ WTC
YSEUHULIYOVGZFYARKY ZUB
JSNYMYPWJFUIRGJXELJ WTC
CJBOSOWFCZRYIMCXHVC WQT
PKCZJZBHPWRQYAPIVUP HQS
OUTFJFCXOWIHSKOBEDO AHP
MTSKNKLPMHJXWRMOGEM NIP
YCPQUQZGYATRMLYNWKY MSG
EDPHZHAWENSVXCELOYE KRH
NJGHAHRQNMBLDWNXFIN WAR
AXHLJLQUAKCWITADVPA CBQ
DHRSXSNKDWICOTDMPJD LHZ
ROQXYXNVRCWHFERZTAR YVA
AIZYPYEBALGNFXACJUA BFG
CZAHOHFGCYNEJKCQURC PMU
STGVLVPMSBHEQJSZARS YGE
KQUWLWODKPYIVHKBFCK AXL
BQENCNXDBYSPWTBRLVB QRF
RBLMDMYHRAPUFZRJCIR IOW
LUFJNJEOLQPVTILACHL ZOQ
PHWJMJSTPIAEUVPQGFP PZN
FGQAVACUFZTSLYFKNRF JSN
QENBWBJDQPGTKMQOSXQ NFY
WQNLCLDRWJFKHVWETGW DER
BWYKQKUSBNDJHXBPCTB OCE
HFRTATOJHDPGYNHVQWH UDN
9. CRIPTOANLISIS DE ENIGMA
sus estructuras militares. Una de ellas, su oficina de cifras. Como consecuencia, las pocas
comunicaciones cifradas se hacan de un modo muy simple, frecuentemente mediante
transposiciones. Eran fcilmente criptoanalizadas por los servicios de inteligencia de los
pases vencedores de la Primera Guerra Mundial. Pero esta situacin dur muy poco. A
finales de los aos veinte, los aliados interceptaron algunas comunicaciones militares
alemanas que ya no seguan los simples patrones empleados hasta ese momento. Eran las
pruebas que el ejrcito alemn estaba realizando con el nuevo criptosistema que pensaba
adoptar, basado en la versin militar de Enigma. Entr en vigor en junio de 1930. A partir
de entonces, los aliados dejaron de acceder a las comunicaciones de un ejrcito alemn en
expansin.
El anlisis de los mensajes cifrados mostraba que la nueva cifra alemana era un
sistema polialfabtico, con un periodo que superaba la longitud de los textos y con una
clave que cambiaba diariamente. Todo indicaba que Alemania haba adoptado un
criptosistema basado en una mquina de rotores y contra el que no se conoca
criptoanlisis alguno. Por otra parte, el mencionado anlisis revel una curiosa norma que
afectaba a las seis primeras letras de los criptogramas y que enseguida fue observada por
los criptoanalistas: Todos los textos cifrados de un mismo da que coincidan en su
primera letra, lo hacan tambin en la cuarta. La misma regla seguan la segunda y quinta
letras. Y tambin la tercera y sexta. Pero estas coincidencias no abrieron ninguna grieta en
la cifra alemana. Pareca impenetrable.
La razn de la regla anterior est en el modo de cifrar con Enigma que inicialmente
se escogi y que permaneci vigente hasta el 15 de septiembre de 1938. Hasta esa fecha,
antes de cifrar un mensaje, el operador encargado de hacerlo deba disponer la mquina
segn la configuracin inicial que se indicaba en la correspondiente Tageschlssel, o
clave del da. Cada una de ellas constaba de los siguientes datos:
1. El orden de los tres rotores disponibles (Walzenlage) y la posicin de sus
anillos (Ringstellung).
2. Las conexiones del Stecker, que hasta noviembre de 1936 fueron seis
exactamente. Despus de esta fecha y hasta fin de 1938, su nmero vari entre
cinco y ocho.
3. La posicin inicial de los rotores en la mquina (Grundstellung), determinada
por las letras visibles en la ventanilla.
El Grundstellung y las conexiones del Stecker eran diferentes en cada
Tageschlssel. Pero el orden de los rotores y el Ringstellung se mantenan durante un
trimestre. No obstante, este periodo se redujo a un mes a partir de enero de 1936. Y desde
octubre de ese mismo ao, todos los datos variaron ya diariamente.
Un ejemplo de Tageschlssel es el siguiente:
155
9. CRIPTOANLISIS DE ENIGMA
Walzenlage
I III II
Ringstellung
X P R
Stecker
AT DS IJ MO WZ XY
Grundstellung
D E O
Una vez situada Enigma en la posicin indicada en la clave del da, el emisor del
mensaje elega tres letras al azar y las cifraba dos veces. Las seis letras resultantes
encabezaban el texto cifrado. Por ejemplo, si el tro de letras escogidas por el operador es
amx, ste cifraba el fragmento amxamx. Si, por ejemplo, obtena PHBCJZ, estas
seis letras eran la cabecera del mensaje cifrado. Seguidamente, giraba los rotores hasta
leer las tres letras escogidas en la ventanilla (amx, en este caso). En esta nueva posicin
cifraba el mensaje propiamente dicho. El texto resultante se aada a la cabecera anterior,
obtenindose el criptograma que se transmita. El receptor del mismo, con Enigma en la
posicin sealada en la Tageschlssel, descifraba primero las seis letras de la cabecera,
recuperando as las tres letras elegidas por el emisor. A continuacin, situaba los rotores
en la posicin marcada por esas tres letras y tecleaba el resto del criptograma, obteniendo
el mensaje en claro. Los alemanes denominaban Spruchschlssel (clave del mensaje) al
tro de letras elegido por el operador.
De este modo, cada mensaje se cifraba con una posicin diferente de los rotores,
con la que elega el operador que lo transmita. A su vez, esta posicin se radiaba cifrada
con la clave indicada en la Tageschlssel. Se cifraba por duplicado para que el receptor
pudiera corregir posibles errores producidos durante la transmisin de la cabecera, los
cuales impediran descifrar el mensaje que segua a continuacin. El doble cifrado de la
Spruchschlssel explica que dos criptogramas que coincidan en su primera (segunda o
tercera) letra lo hagan tambin en su cuarta (quinta o sexta, respectivamente) letra, ya que
as lo hacen los dos fragmentos de texto en claro de los que proceden. Pero esto
constituye un tremendo error criptogrfico que, como veremos, comprometi la seguridad
de Enigma. El mismo fin se hubiese conseguido cifrando la Spruchschlssel una sola vez
y transmitiendo el resultado por duplicado: PHBPHB, en nuestro ejemplo.
Los aliados supieron como empleaba Enigma el ejrcito alemn el 8 de noviembre
de 1931. En esa fecha, espas franceses se reunieron en Blgica con Hans-Thilo Schmidt,
empleado de la oficina de cifra del ministerio de defensa alemn. A cambio de una
importante suma de dinero, Schmidt facilit a los franceses varios documentos secretos.
Uno de ellos describa detalladamente el manejo de Enigma, otro haca lo mismo con el
sistema de claves en vigor.
Sin embargo, de nada sirvieron estos documentos a los criptoanalistas franceses.
Tampoco a los ingleses, quienes dispusieron de una copia das despus. Tras la
descorazonadora respuesta inglesa, al jefe del servicio francs de Decryptement et
Interceptions, el capitn Gustave Bertrand, se le ocurri proporcionar dichos documentos
al Biuro Szyfrow, la oficina de cifras polaca. Bertrand haba odo hablar de la habilidad
polaca en materia de criptoanlisis. As, el 7 de diciembre de 1931, Bertrand viaj a
Varsovia con una copia de los citados documentos y la entreg al mayor Gwido Langer,
responsable del Biuro Szyfrow. Langer explic a Bertrand que la informacin
156
9. CRIPTOANLISIS DE ENIGMA
157
9. CRIPTOANLISIS DE ENIGMA
NEZ
PKG
DCI
EGR
WPB
WLP
GZH
MOQ
RWX
FMD
OQR
IDL
CTH
DSI
YXR
RUZ
RKV
GNO
TMF
AZK
NLM
QOR
CLX
RLD
BRK
ISN
JLY
YQH
QJN
JNI
TYM
DML
TEP
XKK
AKM
EVY
ZFG
PKU
WOO
JIG
PAI
BGP
DLA
BDV
AXW
QCH
XLT
MDG
VCK
VAW
HIQ
YVO
UDN
GLD
LND
FYN
JSO
SKB
TRH
LSY
LCN
UWF
WQJ
VRG
GKM
KAM
YXF
AEW
SYR
WAU
LFT
IZU
OAI
ABB
QHJ
JNZ
VCK
WYT
FDN
HGR
RCC
KHB
ZNC
QCI
FPZ
JJS
PAL
LSY
JCS
SNK
ISL
RLK
SPV
BAN
HKZ
SPV
ZOE
GLZ
FFF
PSX
HAY
ZFA
AKY
HUQ
ECG
UTL
HUQ
MMD
GKL
NHT
WPB
LFT
QYC
PEO
IJA
OHO
TUQ
WTC
EOT
KQA
QDM
RUZ
KHB
JGW
CDJ
ZIE
QJJ
BBF
REW
YMB
OOE
JRP
B
E
P
Z
C
X
S
W
D
D
R
M
E
Y
D
D
F
N
H
T
G
G
X
H
H
U
J
O
I
Z
W
I
J
P
I
S
K
O
T
Y
L
K
K
A
M
T
L
P
N
I
A
G
O
Q
M
J
P
C
U
V
Q
J
O
F
R
A
V
R
158
S
H
F
X
T
B
E
B
U
V
B
C
V
L
Q
Q
W
R
Z
N
X
S
Y
K
Y
W
G
U
Z
M
N
L
9. CRIPTOANLISIS DE ENIGMA
9. CRIPTOANLISIS DE ENIGMA
160
9. CRIPTOANLISIS DE ENIGMA
3 = (B X)(Z S)(L J)(A O)(E H)(D G)(M N)(P W)(V C)(Q U)(F Y)(T K)(I R)
6 = (X Z)(S L)(J A)(O E)(H D)(G M)(N P)(W V)(C Q)(U F)(Y T)(K B)(I R)
Si emparejamos la P con la X en los correspondientes ciclos de 52, nicamente
descubriramos tres transposiciones de 2 y 5, ya que 3 es la longitud de dichos ciclos.
Para calcular las otras diez, necesitamos emparejar letras de los otros dos ciclos.
Consideremos otra vez la cabecera repetida VCKLSY. Bajo el supuesto que proceda de
un tro de letras iguales, hemos deducido que tal letra repetida es una de estas tres: M, T,
o E. Como 1(T) = V, dicha letra debe ser T. Adems, el hecho que 3(T) = K confirma
que vamos por buen camino. Entonces 2(T) = C y ya tenemos el emparejamiento que nos
faltaba: T con C. Slo resta escribir convenientemente los ciclos de 52 :
(C S F H J I W Z N A)
(T K L M O Q V R D E)
(P U B)
(X G Y)
Y obtener ya 2 y 5 :
2 = (C T)(S K)(F L)(H M)(J O)(I Q)(W V)(Z R)(N D)(A E)(P X)(U G)(B Y)
5 = (T S)(K F)(L H)(M J)(O I)(Q W)(V Z)(R N)(D A)(E C)(X U)(G B)(Y P)
Calculadas las permutaciones i de cierto da, se pueden recuperar todas las
Spruchschlssels de ese da. Por ejemplo, la terna que dio lugar a la primera cabecera de
nuestra lista, NEZIDL, es qas; ya que 1(N) = Q, 2(E) = A y 3(Z) = S. El primer paso
haca el criptoanlisis de Enigma ya estaba dado. Gracias al doble cifrado de las
Spruchschlssels.
No obstante, el conocimiento de las claves no sirve de nada si no se dispone de un
ejemplar de la mquina con el que descifrar los mensajes. Y como los alemanes no iban a
prestar una a los polacos, stos, si la queran, deban construir una. Ello pasaba por
conocer las conexiones internas de los rotores, algo que el espa alemn Schmidt o no
poda o no quera proporcionar. No hizo falta, Rejewski las calcul.
El movimiento de los rotores tampoco figuraba en los documentos aportados por el
espa alemn. Rejewski pens que deba ser similar al de la mquina comercial. Si esto
era as, la Enigma militar segua teniendo el mismo punto dbil que aquella: al cifrar
fragmentos pequeos, nicamente el rotor derecho se mueve. Es lo que deba ocurrir la
mayora de las veces al cifrar las Spruchschlssels que acababan de ser calculadas. De
esta observacin parte el anlisis que permiti a Rejewski deducir las conexiones de los
rotores.
Fijmonos de nuevo en la Figura 9.1, que esquematiza el cifrado de la comercial
Enigma D. Sirve tambin para la mquina militar, cambiando el Stator por el Stecker.
Supongamos que la mquina est dispuesta inicialmente segn cierta Tageschlssel.
Designemos por la letra griega a la permutacin que proporciona el Stecker; por , y
a la de los rotores izquierdo, central y derecho, respectivamente; y por a la del reflector.
Observando la Figura 9.1 y teniendo en cuenta como fluye la corriente elctrica en el
161
9. CRIPTOANLISIS DE ENIGMA
-6 -1 6 -1 -1
6 = -6 6
En verdad, en las ecuaciones que inicialmente obtuvo Rejewski incluso apareca
una permutacin ms. Guindose por la mquina comercial, en un principio supuso la
presencia de un Stator que actuaba entre el Stecker y el banco de rotores. Le llev algn
tiempo darse cuenta que, en la Enigma militar, el Stecker no se aada sino que
reemplazaba al Stator.
Las permutaciones i y son datos conocidos en las ecuaciones anteriores. Tambin
lo es , la sustitucin del Stecker, si las ecuaciones corresponden a un da incluido en las
Tageschlssels suministradas por Schmidt. Entonces y el producto = -1-1
pueden ser calculados en el sistema anterior. No lo haremos, porque explicarlo nos
162
9. CRIPTOANLISIS DE ENIGMA
163
9. CRIPTOANLISIS DE ENIGMA
Una vez identificado el rotor derecho, el paso siguiente es encontrar las conexiones
del Stecker; esto es, la permutacin que antes representamos por . Para ello,
consideramos de nuevo el sistema de seis ecuaciones obtenido por Rejewski, con las
permutaciones i ya calculadas. Si en estas ecuaciones no figurase la permutacin ,
entonces al efectuar los productos
-i ii -i-1 i
obtenemos siempre la permutacin = -1-1. Pero, claro, est y, por tanto,
ninguno de esos seis productos es . Tanto como estos productos constan de 13
transposiciones disjuntas. Como en el Stecker hay seis conexiones, altera doce letras y
deja fijas las catorce restantes. Ello implica que, an no siendo , cada uno de los seis
productos anteriores contiene entre una y siete transposiciones de . Lo ms probable es
que sean tres o cuatro. Sucede que y son desconocidas. Ahora bien, como es una de
las 26 permutaciones que implementa el rotor derecho, el cual hemos identificado,
podemos calcular para cada valor posible de los seis productos de antes y tratar de
averiguar cual es la permutacin correcta. Muy probablemente ser aquella que
proporcione seis productos con ms transposiciones repetidas. Y tambin muy
posiblemente estas transposiciones duplicadas pertenezcan a . Se trata de analizar
cuidadosamente cada caso para determinar correctamente y . Para facilitar esta labor,
los polacos confeccionaron un catlogo con todas las permutaciones posibles, una por
cada ordenacin de los rotores y por cada posicin de los rotores izquierdo y central. En
total: 6 26 26 = 4056. Identificada , es fcil calcular . Slo hay que comparar con
los seis productos obtenidos; las doce letras que cambian, proporcionan . De este modo
se averiguan las conexiones del Stecker. Y tambin el orden de los tres rotores y sus
posiciones iniciales, determinados por las permutaciones y . (Por supuesto, todo este
proceso se complica considerablemente si durante el doble cifrado de las
Spruchschlssels no es el rotor derecho el nico que se mueve.)
Todava falta por calcular el Ringstellung, ya que las anteriores posiciones iniciales
de los rotores slo proporcionan la diferencia entre el Grundstellung y el Ringstellung.
Cuando las conexiones del Stecker son conocidas, la Enigma militar se puede
criptoanalizar como la comercial, mediante el mtodo de los isomorfismos que vimos
antes. (Ms fcil an, porque el reflector no se mueve.) En la aplicacin de dicho mtodo,
los polacos utilizaron el hecho que el texto en claro de muchos mensajes alemanes
empezaba por ANX (AN significa PARA en alemn y la X se empleaba como
separador de palabras). Lo supieron cuando gracias a las Tageschlssels proporcionadas
por Schmidt, descifraron mensajes de 1932. Un trigrama es, por supuesto, una cantidad
muy pequea de texto en claro, pero hay que multiplicarla por el nmero de mensajes en
los que est presente. Determinada la posicin inicial del rotor diestro en un mensaje que
comience por ANX, la de los otros dos rotores se puede obtener en el catlogo de
permutaciones antes mencionado. Estas nuevas posiciones iniciales dan la diferencia
entre la Spruchschlssel y el Ringstellung. Y como la primera ya es conocida, puede
calcularse el segundo.
El mtodo anterior para determinar el orden de los rotores y las conexiones del
Stecker fue mejorado notablemente en 1937. Todo el anlisis anterior arranca de los
164
9. CRIPTOANLISIS DE ENIGMA
productos 41, 52 y 63. Como bien not Rejewski, diferentes conexiones del
Stecker cambian estas permutaciones pero no su estructura cclica. Exactamente: el
nmero de ciclos y sus longitudes no dependen de las conexiones del Stecker, slo del
orden de los rotores y de sus posiciones iniciales. Rejewski llam caracterstica a dicho
nmero de ciclos y longitudes. En el ejemplo que pusimos antes, la caracterstica es la
siguiente terna ordenada de listas de nmeros: {12, 12, 1, 1}, {10, 10, 3, 3} y {12, 12, 1, 1}.
Otro ejemplo podra ser este: {10, 10, 1, 1, 1, 1}, {10, 10, 2, 2, 1, 1} y {13, 13}. Para cada
orden de los rotores y cada posicin inicial de stos, se hall su caracterstica (suponiendo
siempre que slo el rotor derecho es el que se mueve). En total, hubo que calcular 6 26 3
= 105456 caractersticas. Algunas se repetan, pero casi todas eran diferentes. Los
resultados se ordenaron en un catlogo en el que a continuacin de cada caracterstica iba
el correspondiente orden de los rotores y sus posiciones iniciales. Calculada la
caracterstica de un da, el catlogo proporcionaba de forma inmediata el orden de los
rotores y sus posiciones iniciales (la diferencia entre el Grundstellung y el Ringstellung).
A continuacin se proceda al clculo de , la sustitucin Stecker. Para ello, se
comparaban los productos 41, 52 y 63 con sus homnimos obtenidos sin conexin
alguna en el Stecker. Las letras cambiantes proporcionan . Todo este proceso se
efectuaba en unos pocos minutos.
En la confeccin del catlogo de caractersticas, los polacos emplearon un aparato
que llamaron ciclmetro. La Figura 9.2 muestra el dibujo que de este artefacto hizo el
propio Rejewski. Consista en dos bancos de rotores conectados convenientemente y de
modo que el rotor de la derecha de un banco estaba desplazado tres posiciones con
respecto a su homnimo del otro banco. Debajo de los dos bancos de rotores figuraba un
panel de lmparas y palancas, una por cada letra del alfabeto. Al accionar una palanca,
una corriente elctrica atravesaba varias veces los bancos de rotores y encenda un
nmero par de lmparas, las correspondientes a dos ciclos asociados de la permutacin
41 . Accionando otra palanca de una letra no iluminada se encontraba otro par de ciclos
asociados. As se determinaba la descomposicin en ciclos disjuntos de 41 . Y variando
el orden de los rotores y sus posiciones iniciales, se calcularon todas las permutaciones
41 existentes. Ello fue suficiente para elaborar el catlogo, ya que las permutaciones
52 y 63 asociadas a una determinada posicin de los rotores coinciden con la 41
que se obtiene adelantando los rotores diestros una o dos posiciones, respectivamente.
An empleando ciclmetros, los polacos tardaron casi un ao en completar el
catlogo. Y poco tiempo despus, el 1 de noviembre de 1937, los alemanes cambiaron el
reflector y el proceso tuvo que empezar de nuevo. (Obviamente, tras hallar las conexiones
del nuevo reflector.)
165
9. CRIPTOANLISIS DE ENIGMA
ABC OXUCXW
166
ETV ASTBUT
9. CRIPTOANLISIS DE ENIGMA
167
9. CRIPTOANLISIS DE ENIGMA
Hecho esto, el siguiente proceso ha de repetirse para cada orden de los rotores y
cada posicin del Ringstellung del rotor izquierdo. Fijado un orden de los rotores, se
normalizan de nuevo aquellas females cuyo Grundstellung indique un avance del rotor
central. Por ejemplo, si el orden de rotores es III-I-II, el Grundstellung AHE debe
normalizarse AIE, ya que la E del rotor II ocasiona un avance del rotor central.
Seguidamente, se seleccionan las 26 hojas asociadas al orden de los rotores y se aparta el
resto. Fijada tambin una letra del Ringstellung del rotor izquierdo, digamos C, se
considera el Grundstellung de una primera female. Por ejemplo: PDY. Su letra izquierda
es P. Puesto que PC=N, se escoge la hoja correspondiente a la letra N y se coloca
168
9. CRIPTOANLISIS DE ENIGMA
encima de una mesa transparente. Esta hoja hace de referencia bsica. Se considera a
continuacin el Grundstellung de otra female. Por ejemplo: HXT. Su primera letra es H
y HC=F. Se elige entonces la hoja correspondiente a esta letra F. Se coloca encima de la
anterior hoja bsica desplazndola 6 recuadros hacia la derecha y 5 hacia abajo, seis a la
derecha porque de la X a la D van 6 letras y cinco hacia abajo porque de la T a la Y van 5.
Se hace lo mismo con el resto de las females. Colocadas todas las hojas, se hace actuar un
foco de luz sobre las hojas y se observa si la luz traspasa algn agujero comn a todas
ellas.
Si hay suficientes females, el haz de luz atravesar un nico agujero. Este agujero
proporciona de forma inmediata el orden de los rotores y el Ringstellung del rotor
izquierdo. Para obtener el de los otros dos rotores, notemos que, fijada una de las females
(normalizada si ha sido necesario), las letras del agujero de la hoja correspondiente
determinan la posicin de los rotores que la ha producido. Esta posicin es precisamente
la diferencia entre el Grundstellung de la female y el Ringstellung que se pretende
calcular. Por tanto, el Ringstellung de los rotores central y diestro se obtiene restando al
Grundstellung de una female las letras del agujero. Ya slo queda obtener las conexiones
del Stecker. Como ste cambia las letras de los ciclos de longitud 1 del catlogo de
caractersticas por las letras repetidas de las females, entonces la letra repetida de una
female est conectada con una de las letras de los ciclos de longitud 1 de la
correspondiente permutacin 41 del catlogo. Contemplando todas las females a un
tiempo, no ser difcil averiguar cual.
Puede ocurrir que el haz de luz atraviese ms de un agujero. En tal caso se procede
con cada uno de ellos como antes. Las contradicciones descartarn casi todos los casos. Y
si todava queda ms de uno, la solucin correcta ser aquella que permita descifrar los
mensajes.
Adems de las hojas de Zygalski, los polacos contaron con una mquina diseada
por Rejewski que, bajo las condiciones que describimos a continuacin, tambin
calculaba el orden de los rotores y el Ringstellung. Le dieron el nombre de bomba.
Expliquemos en qu consiste.
Entre las females de un mismo da, en ocasiones haba tres que presentaban la
misma letra repetida. Como por ejemplo:
XTH RPYRAC
AQL TRVSRJ
MOZ RFGRVW
La primera de estas females indica que el ciclo (R) est presente en la permutacin
41 . Supongamos que la R no se vea alterada por el Stecker, que no est conectada con
ninguna otra letra. Entonces, tambin el ciclo (R) aparece en la sustitucin 41 que se
obtendra sin ninguna conexin en el Stecker. Como ya sabemos, el nmero de tales
productos 41 es 105456, tantos como configuraciones posibles de los rotores (orden y
posiciones iniciales). Desconocemos cuantos de estos productos contienen al ciclo (R); no
obstante, la Teora de Probabilidades muestra que, fijado un ciclo de longitud 1, si 1 y 4
se eligen aleatoriamente entre las de su clase, entonces el 4% de los productos 41
contienen dicho ciclo. Admitamos esta regla para las sustituciones de Enigma. Entonces,
169
9. CRIPTOANLISIS DE ENIGMA
el anterior nmero 105456 se reduce en un factor de 0.04 cada vez que se observe una
female con la letra R repetida. Como 105456(0.04)3 = 6.75, resulta que muy
probablemente tan slo seis o siete configuraciones de los rotores pueden ocasionar las
tres females anteriores. La mquina ideada por Rejewski automatizaba la identificacin
de esas configuraciones.
Esencialmente, la bomba de Rejewski consiste en tres ciclmetros conectados
convenientemente. Un motor elctrico hace girar de forma sincronizada los seis bancos de
rotores recorriendo las 17576 posibles posiciones. Cuando se llega a una posicin en la
que los tres ciclmetros reconocen el ciclo programado, (R) en nuestro ejemplo, el
mecanismo se detiene mostrando dicha posicin.
Los polacos construyeron seis bombas, una por cada orden de los rotores. Antes de
utilizarlas, es preciso ajustar adecuadamente las posiciones de los rotores de los
ciclmetros. Para ello, primero se normalizan las females del mismo modo que
explicamos antes. Hecho esto, se asocia cada uno de los tres ciclmetros a una female y
se colocan sus rotores en la posicin indicada en el Grundstellung, con el rotor derecho
del segundo banco desplazado tres posiciones respecto a su homnimo del primer banco.
En nuestro ejemplo, los rotores del ciclmetro asociado a la primera female deben
colocarse as: el primer banco en la posicin XTH, el segundo XTK. Tras situar los
rotores se activa la palanca de la letra R y se pone en marcha la bomba. Las seis bombas
encontraban las seis o siete posiciones que ocasionan las tres females en unos 90 minutos.
Entre esas posiciones se encuentra la que proporciona la clave. Para reconocerla, se sigue
el mismo proceso que con los agujeros de las hojas de Zygalski.
Las bombas de Rejewski supusieron una comodidad para el personal de la Biuro
Szyfrow y eliminaban los errores debidos al factor humano. Por el contrario, requeran
que entre las females hubiera tres con la misma letra repetida y que sta fuese invariante
por el Stecker. Algo que no ocurra todos los das.
El 15 de diciembre de 1938 los alemanes pusieron en servicio dos nuevos rotores.
Con ello, aumentaron de tres a cinco los rotores disponibles y, por consiguiente, de seis a
sesenta el nmero de ordenaciones posibles. La consecuencia para los criptoanalistas
polacos es obvia: a partir de esa fecha, slo uno de cada diez das pudieron descifrar los
mensajes alemanes. No obstante, los polacos encontraron enseguida las conexiones de los
nuevos rotores. De nuevo contaron con la ayuda alemana. En esta ocasin no fue el
espa Schmidt, quien meses atrs haba dejado de tener acceso a las claves de Enigma,
sino el servicio de inteligencia del partido nazi. Su red de comunicaciones incorpor los
nuevos rotores, pero segua cifrando con el sistema anterior al 15 de septiembre. Gracias a
ello, las conexiones de los nuevos rotores pudieron obtenerse como las de los tres
anteriores, manipulando el antiguo sistema de ecuaciones obtenido por Rejewski. Esta
vez, los polacos tuvieron mucha suerte. Habra sido muy difcil recuperar los dos nuevos
rotores sin la colaboracin del servicio de inteligencia del partido nazi,
A pesar de ello, el paso de tres a cinco rotores super con creces las posibilidades
de cmputo de la pequea oficina de cifras polaca. Poder emplear el mtodo de Zygalski
con los nuevos rotores requera preparar 2654 = 1404 nuevas hojas, una tarea que poda
170
9. CRIPTOANLISIS DE ENIGMA
costar varios aos de trabajo a la reducida plantilla de la Biuro Szyfrow. El otro mtodo,
el de las bombas de Rejewski, qued inoperante el 1 de enero de 1939, cuando los
alemanes incrementaron a diez las conexiones del Stecker. Los polacos no lograron
aumentar la proporcin de das que accedan a las comunicaciones alemanas.
Durante todos estos aos, ningn otro pas tuvo noticia del xito polaco con
Enigma. Ni siquiera Francia, cuyo servicio secreto haba facilitado a Polonia los
documentos comprados al espa Schmidt. El gobierno polaco entendi que comunicar a
otros pases como descifrar Enigma violaba el pacto de no agresin firmado con
Alemania en enero de 1934. La situacin cambi el 27 de abril de 1939, cuando Hitler
declar nulo y vaco el tratado de no agresin. Das despus, la Biuro Szyfrow recibi
la orden de compartir secretos con Francia e Inglaterra. Atendiendo a este mandato, los
polacos reunieron secretamente en Pyry, cerca de Varsovia, a una delegacin francesa y
otra britnica el 24 de julio. En este encuentro, Rejewski y compaa mostraron a sus
colegas franceses e ingleses todo y cuanto saban de Enigma y les proporcionaron rplicas
polacas de la mquina. El 1 de septiembre, cincuenta y tres divisiones alemanas
invadieron Polonia. A los pocos das, la seccin alemana de la Biuro Szyfrow borraba
todo rastro de Enigma y hua del pas por la frontera rumana.
Tras la invasin de Polonia, el criptoanlisis de Enigma qued en manos de Francia
y Gran Bretaa, ya en tiempo de guerra. En Francia, el capitn Bertrand organiz una
unidad de interceptacin y decodificacin en torno a los tres matemticos polacos, los
cuales llegaron a Francia procedentes de Rumania. El grupo, que operaba cerca de Pars,
contaba con unas setenta personas (curiosamente, entre ellas haba siete republicanos
espaoles), pero careca de medios para enfrentarse por s solo a Enigma. Con el apoyo
ingls, penetraron en algunas redes de comunicaciones alemanas durante el primer
trimestre de 1940. En mayo de 1940 tuvo lugar la invasin alemana y la unidad de
Bertrand estableci dos puestos de interceptacin y decodificacin, uno en Uzs, en la
Francia no ocupada, y otro en Argelia. Los matemticos polacos alternaron estancias en
uno y otro. En uno de estos viajes, en enero de 1942, Rozycki muri al naufragar el barco
que le transportaba. A finales de 1942, los alemanes ocuparon toda Francia y el puesto de
Uzs se disolvi. Tras una larga y penosa huda por nuestro pas, Rejewski y Zygalski
llegaron a Inglaterra en agosto de 1943, con la intencin de continuar el criptoanlisis de
Enigma al lado de los britnicos. Sin embargo, stos no lo estimaron conveniente y ah
acab su lucha con la mquina alemana.
Cuando en septiembre de 1938 Hitler invadi Checoslovaquia, el director del GCCS
britnico, Alistair Denniston, consider probable la guerra con Alemania. Su centro
tendra que pelear con la Enigma del ejrcito alemn. El equipo de Knox haba tenido
xito con la versin comercial, pero ninguno con la militar. Quizs fuese tarea de
matemticos. Haba llegado a la misma conclusin que los jefes de la Biuro Szyfrow diez
aos antes. Denniston pens en la Universidad de Cambridge. Pocas semanas despus, el
GCCS estaba dando un curso introductorio de Criptografa a algunos de los mejores
matemticos ingleses. Denniston encabez la delegacin britnica que se reuni con
polacos y franceses en Pyry. A su regreso a Londres tena muy claro lo que haba que
hacer. Traslad la sede del GCCS en Londres a Bletchley Park, un lugar tranquilo, a 70
kilmetros de Londres y muy bien comunicado; a salvo de los bombardeos areos que en
171
9. CRIPTOANLISIS DE ENIGMA
9. CRIPTOANLISIS DE ENIGMA
trfico de las comunicaciones del ejrcito alemn permiti tal identificacin. Las cribs
proporcionaron los ciclos necesarios en la bomba de Turing. Expliqumoslo con un
ejemplo.
Sospechamos que cierto mensaje interceptado comienza con Fuhrerhauptquartier
(cuartel general del Furer). Coloquemos cada letra de este pequeo fragmento de texto en
claro encima de su correspondiente letra del texto cifrado y ambas debajo de un nmero
que indica su orden:
1
10 11 12 13 14 15 16 17 18 19
Texto claro: F U H R E R H A U P T Q U A R T I E R
Texto cifrado: I D Z O Z L A H X Y B G I U A H L R H
173
9. CRIPTOANLISIS DE ENIGMA
O
4
1
17
I
13
18
15
14
19
7
5
3
16
11
10
12
Figura 9.4.
14
7
13
19
15
17
15
El primero indica que ((A)) pertenece al producto 78, como ya hemos visto
antes. Anlogamente, este mismo ciclo de longitud 1 est presente en las permutaciones
15197 y 156171314. Ahora, recurramos de nuevo a la Teora de Probabilidades.
Si las sustituciones i se eligen aleatoriamente entre las de su clase, slo una vez de cada
17576 ( = 263) figurar el ciclo ((A)) en los tres productos de antes. La bomba de Turing
utiliza esta circunstancia para determinar el correcto orden y posicin de los rotores. Su
funcionamiento se esquematiza en la Figura 9.5.
174
9. CRIPTOANLISIS DE ENIGMA
17
I
13
15
14
19
7
8
I
17
L
6
R
19
H
7
A
15
R
ABCDEFGHIJKLMNOPQRSTUVWXY Z
A
14
U
13
I
H
8
A
175
9. CRIPTOANLISIS DE ENIGMA
ajustar los rotores, se hace una conjetura sobre la letra del ciclo de longitud 1 comn a los
tres productos de permutaciones i . En nuestro caso, (A). Hagamos la suposicin
(A) = B, por ejemplo. Entonces en el panel de lmparas se activa la palanca
correspondiente a la letra B y, a continuacin, se pone en marcha la bomba. Un motor
elctrico hace girar de forma sincronizada todos los bancos de rotores, recorriendo stos
las 17576 posiciones posibles. Cada una de ellas da lugar a un juego de permutaciones i
diferentes.
Del panel de lmparas parte una corriente elctrica por la direccin B del cable y
llega a las entradas A de los bancos 7, 8, 14 y 15. De ellos sale por la entrada opuesta, por
las direcciones i(B) del cable. Y as va entrando y saliendo por los diferentes bancos de
rotores, siguiendo el camino al que obligan las conexiones entre ellos. Cuando la corriente
regrese a una entrada A, circula tambin por el panel, por la misma direccin que lo hace
que en dicha entrada.
Si en una determinada posicin de los rotores el ciclo (B) es comn a los tres
productos de permutaciones i , entonces en cada trozo de cable la corriente circula por
una nica direccin. En las entradas A y en el panel lo hace por la direccin B y slo se
enciende la bombilla de esta letra. En tal caso, un mecanismo detiene la bomba. Se anota
el orden de rotores, la posicin y la suposicin (A) = B. Ms adelante habr que
comprobar si estos datos coinciden con los de la clave buscada. Supongamos por el
momento que, en efecto, as es. Entonces en otra entrada, la U por ejemplo, la corriente
circula por la direccin de la letra emparejada con la U en el Stecker. Esta letra puede
determinarse conectando otro panel de lmparas a la entrada U y observando cual es la
nica bombilla que luce. De este modo, repitiendo esta operacin con las dems entradas,
pueden averiguarse las conexiones en el Stecker de las letras que figuran en las entradas.
En cambio, si la posicin de los rotores o la conexin AB no figuran en la clave
buscada, entonces el proceso anterior proporciona falsas conexiones en el Stecker que
ayudarn a rechazar tales datos cuando se comprueben.
Como dijimos antes, muy probablemente el ciclo (B) slo sea comn a los tres
productos de permutaciones i en una posicin por cada orden de los rotores. En el resto
de las posiciones, alguno de estos productos transforma la B en otra letra. Entonces, en el
panel, la corriente elctrica fluye tambin por la direccin de esta nueva letra,
encendiendo su correspondiente lmpara. A su vez, la nueva letra se transforma en otra en
alguno de los productos y as sucesivamente. El resultado es que la corriente elctrica
circula por todas las direcciones y, en consecuencia, todas las bombillas lucen. Cuando
esto ocurre, los rotores avanzan automticamente una posicin.
En unas pocas posiciones puede suceder que resten lmparas no encendidas. En
estos casos, la bomba tambin se detiene. Entonces el operario activa la palanca de una
bombilla apagada, digamos la C. Si no se enciende otra lmpara apagada es porque el
ciclo (C) es comn a los tres productos de permutaciones i . Habr que anotar tambin la
posicin, la conexin (A) = C y las de las otras letras que pueden obtenerse como se
indic antes. Tal situacin sucede, por ejemplo, cuando slo resta una bombilla apagada.
Una vez que lucen todas las bombillas se reinicia la bomba en la siguiente posicin.
176
9. CRIPTOANLISIS DE ENIGMA
177
9. CRIPTOANLISIS DE ENIGMA
17
13
R
15
14
18
19
8
H
16
T
11
B
Figura 9.6.
178
9. CRIPTOANLISIS DE ENIGMA
ABCDEFGHIJKLMNOPQRSTUVWXY Z
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
9
U
L
I
13
U
14
A
15
R
19
H
16
T
11
B
A
8
ABCDEFGHIJKLMNOPQRSTUVWXY Z
H
R
18
E
La utilizacin de esta bomba es idntica a la diseada por Turing y no hace falta que
repitamos todo el proceso. Slo es preciso mostrar el efecto del tablero diagonal. Al poner
en marcha la bomba el fluido elctrico circula por la direccin B y se introduce por la
entrada A de los bancos 8, 14 y 15 y tambin por esta misma entrada del tablero diagonal.
Al estar conectado al punto (A, B) con el (B, A), la corriente elctrica sale del tablero por
la direccin A de la entrada B y se dirige al banco 11. Despus de abandonar cada uno de
estos bancos, el flujo elctrico entra en otro conectado y tambin en el tablero diagonal.
Por ejemplo, la corriente que abandona el banco 14 llega al tablero por cierto cable de la
fila U. Si la letra de este cable figura en la entrada de algn banco, se introducir en l por
el cable U. Y as sucesivamente. El tablero diagonal abre nuevas direcciones de flujo
elctrico en la red de bancos.
Al igual que en el diseo de Turing, en casi todas las posiciones de los rotores la
corriente elctrica circular por las 26 direcciones de cada trozo de cable, en el panel se
179
9. CRIPTOANLISIS DE ENIGMA
180
9. CRIPTOANLISIS DE ENIGMA
181
10
CRIPTOGRAFA MODERNA
183
n = nr b r + nr 1 b r 1 + ... + n1 b + n0 ,
donde r es el nico entero tal que br n < br+1 y n0, n1, ..., nr, son enteros estrictamente
menores que la base b. Si buscamos signos para representar a cada uno de los enteros
comprendidos entre el 0 y b1; si, por ejemplo, nr se representa por el signo %, nr-1 por
$, ..., n1 por # y n0 por &, entonces n se escribe en base b como %$...#&.
Cuando la base b es 2, el sistema de representacin que resulta recibe el nombre de
binario. Los nmeros binarios son entonces los enteros expresados en forma binaria. Slo
requiere dos smbolos, que suelen ser los dgitos 0 y 1, llamados ahora bits, y que, como
es de suponer, corresponden con los nmeros cero y uno, respectivamente. As pues, un
nmero binario es una secuencia de bits. Por ejemplo: 1101101, que escrito en modo
decimal es 109 ya que:
1101101 = 126 + 125 + 024 + 123 + 122 + 02 + 1 = 109.
Si se desea expresar en forma binaria un nmero escrito en otro sistema, basta con
dividir sucesivamente dicho nmero entre 2 y tomar la sucesin de restos en orden
inverso. Por ejemplo, escribamos en binario el nmero que en modo decimal es 25. Las
divisiones entre 2 son las siguientes:
184
25
1
2
12
0
2
6
0
2
3
1
2
1
Decimal:
Binario:
65
68
73
79
83
01000001 01000100 01001001 01001111 01010011
Es precisamente sobre esta secuencia de bits donde actan los modernos mtodos de
cifrado, transformndola en otra que ser la que se transmita al receptor del mensaje.
185
Cuando ste la reciba, deber someterla al proceso de descifrado para obtener de nuevo la
secuencia inicial originada por el cdigo empleado. Por tanto, en los criptosistemas que
cifran la informacin interna del ordenador, tanto el alfabeto en claro como el de cifrado
constan slo de dos signos: 0 y 1; y los textos en claro y cifrado son largas secuencias de
tales bits. Ntese que el cdigo no forma parte del criptosistema.
Signo
Dec.
Bin.
Signo Dec.
Bin.
Signo Dec.
Bin.
Signo Dec.
Bin.
Nulo
0000000
32
0100000
64
1000000
96
1100000
Inicio cabecera
0000001
33
0100001
65
1000001
97
1100001
Inicio texto
0000010
"
34
0100010
66
1000010
98
1100010
Fin texto
0000011
35
0100011
67
1000011
99
1100011
Fin transmisin
0000100
36
0100100
68
1000100
100 1100100
Enquiry
0000101
37
0100101
69
1000101
101 1100101
Acknowledge
0000110
&
38
0100110
70
1000110
102 1100110
Beep
0000111
'
39
0100111
71
1000111
103 1100111
Backspace
0001000
40
0101000
72
1001000
104 1101000
Tab. horizontal
0001001
41
0101001
73
1001001
105 1101001
Salto lnea
10 0001010
42
0101010
74
1001010
106 1101010
Tab. vertical
11 0001011
43
0101011
75
1001011
107 1101011
Salto pgina
12 0001100
44
0101100
76
1001100
108 1101100
Retorno carro
13 0001101
45
0101101
77
1001101
109 1101101
Shift fuera
14 0001110
46
0101110
78
1001110
110 1101110
Shift dentro
15 0001111
47
0101111
79
1001111
111 1101111
Escape lnea
16 0010000
48
0110000
80
1010000
112 1110000
Ctrl. disp. 1
17 0010001
49
0110001
81
1010001
113 1110001
Ctrl.. disp. 2
18 0010010
50
0110010
82
1010010
114 1110010
Ctrl.. disp. 3
19 0010011
51
0110011
83
1010011
115 1110011
Ctrl. disp. 4
20 0010100
52
0110100
84
1010100
116 1110100
Neg. Acknow.
21 0010101
53
0110101
85
1010101
117 1110101
Sincronismo
22 0010110
54
0110110
86
1010110
118 1110110
Fin bloque
23 0010111
55
0110111
87
1010111
119 1110111
Cancelar
24 0011000
56
0111000
88
1011000
120 1111000
Fin medio
25 0011001
57
0111001
89
1011001
121 1111001
Sustituto
26 0011010
58
0111010
90
1011010
122 1111010
Escape
27 0011011
59
0111011
91
1011011
123 1111011
Sep. Archivos
28 0011100
<
60
0111100
92
1011100
124 1111100
Sep. Grupos
29 0011101
61
0111101
93
1011101
125 1111101
Sep. Registros
30 0011110
>
62
0111110
1011110
126 1111110
31 0011111
63
0111111
^
_
94
Sep. Unidades
95
1011111 Del
186
127 1111111
1 0=1,
0 1=1,
1 1=0.
Texto cifrado:
100010011011000111011000
187
Luego sumar un bit del texto en claro con un 0 de la secuencia clave equivale a
aplicarle la sustitucin 0, y aadirle un 1 es lo mismo que hacer actuar 1 sobre l. As
pues, sumar una secuencia clave a un texto en claro produce el mismo resultado que el
cifrado polialfabtico obtenido con la sucesin correspondiente de sustituciones 0 1.
Y siguiendo con esta analoga entre modernos cifrados secuenciales y antiguos
polialfabticos, un aparato electrnico que genere secuencias clave es la versin digital de
una mquina de rotores, en donde su estado inicial se corresponde con la posicin inicial
de los rotores.
Si los cifrados secuenciales pertenecen a la categora polialfabtica, los cifrados en
bloque responden al modelo poligrfico descrito en el Captulo 4. Dividen el texto en
claro en bloques de bits del mismo tamao y cada uno de ellos se transforma en otro
segn determina el proceso de cifrado, en el que interviene la clave elegida.
Seguidamente, presentamos un ejemplo sencillo de cifrado en bloques de 8 bits en el que
emplearemos una clave de ese mismo tamao. En la prctica, valores tpicos de estas
longitudes son 64, 128 256 bits; y sus procesos de cifrado son mucho ms complejos
que el que aqu sirve de ejemplo.
Nuestro cifrado consiste en dividir la sucesin de bits que conforma el texto en
claro en trozos de 8 bits y sobre cada uno de ellos efectuar las siguientes tres operaciones:
1. Reordenar los 8 bits segn el orden 4, 7, 8, 1, 6, 5, 2, 3.
2. Efectuar la suma XOR con la clave.
3. Volver a realizar la permutacin de bits del paso 1.
188
Reordenacin
00100010 00001010 00100110
10100111
Reordenacin
Texto cifrado: 00111000 00111101 00110000
Notemos que los pasos de este cifrado son involutivos y que, en consecuencia, el
proceso de cifrado sirve tambin para descifrar. Esta es una propiedad que suele estar
presente en la mayora de los criptosistemas que se emplean en la prctica, por la
comodidad que ello supone.
En el ejemplo anterior hemos empleado un cifrado en bloque de la manera ms
simple y natural que puede hacerse. Los textos americanos lo denominan modo ECB,
acrnimo de Electronic Code Book. En ocasiones no es el ms conveniente. En este
modo, si no vara la clave, bloques iguales de texto en claro dan lugar tambin a trozos
idnticos de texto cifrado. Con frecuencia, los mensajes que generan los ordenadores
tienen estructuras muy regulares y presentan numerosos fragmentos idnticos; sobre todo
en la cabecera y en el final. Esto puede presentar un gran riesgo para la seguridad de un
cifrado en bloque. Tal problema puede resolverse usando el cifrado en bloque de la
manera que explicamos a continuacin.
Antes de cifrar, el emisor elige aleatoriamente el denominado vector de
inicializacin, que es un bloque de bits de la misma longitud con la que opera el cifrado y
que se transmite en claro al receptor en la cabecera del mensaje. Con este vector y el
primer bloque de texto en claro se efecta la suma XOR y se cifra el resultado,
obtenindose el primer fragmento de texto cifrado. Este primer trozo de texto cifrado se
suma con el segundo bloque de texto en claro y se cifra el resultado, dando lugar al
segundo trozo de texto cifrado. Y as se contina, sumando un bloque de texto en claro
con el anterior de cifrado y cifrando la suma resultante. Para descifrar, el receptor del
mensaje debe aplicar el proceso de descifrado a cada trozo de texto cifrado y el resultado
obtenido sumarlo con el bloque anterior. Quizs sea ms clarificador expresar todo esto
matemticamente:
Cifrado: yi = C(xi yi1)
Descifrado: xi = yi1D(y i ),
DES es un cifrado en bloques de 64 bits que opera con claves de 56 bits. El proceso
de cifrado de cada bloque sigue los siguientes tres pasos:
1. Se efecta una permutacin inicial de los 64 bits. El resultado se parte en dos
trozos de 32 bits, uno su mitad izquierda L0 y el otro su otra mitad diestra R0.
2. Estos trozos L0 y R0 se someten a 16 rondas de idnticas operaciones. El
resultado de cada ronda es otro par de bloques de 32 bits: Li y Ri, que se
obtienen a partir de los anteriores Li1 y Ri1 de este modo:
Li = Ri1
191
0
1
2
3
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7
0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8
4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0
15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13
Tabla 10.2. La primera caja de DES.
192
como abrir. Algo que la NSA siempre neg, obviamente; aunque reconoci que haba
ciertas razones en su diseo que por motivos de seguridad no podan publicarse. Por otro
lado, los numerosos estudios llevados a cabo por personas ajenas a la NSA y a IBM no
han podido confirmar ni desmentir la presencia de puertas traseras en las cajas de DES;
pero s la existencia de ciertos hechos extraos. Por ejemplo, Lexar Corporation dio a
conocer un informe en septiembre de 1976 que conclua diciendo:
Han sido encontradas en DES ciertas construcciones que
indudablemente fueron insertadas para fortalecer el sistema contra ciertos
tipos de ataques. Otras que tambin han sido halladas parecen debilitar el
sistema.
En cualquier caso, las cajas de DES proporcionan a este cifrado una seguridad muy
superior a la de Lucifer, a pesar de la reduccin en el nmero de bits de la clave.
Poco a poco, a lo largo de los aos setenta y ochenta, una nueva comunidad de
criptgrafos surgi por empresas y universidades de todo el mundo; debido al desarrollo
de la informtica y los sistemas de comunicacin, digmoslo una vez ms. Para ellos, la
implantacin de DES como estndar fue todo un desafo; motivados ms an por el
certificado de seguridad que otorg la participacin de la NSA.
El reducido nmero de bits de las claves invitaba a un ataque por fuerza bruta;
esto es, comprobando una a una todas las claves posibles. (Manejando claves de 56 bits
hay en total 256, un nmero que supera los 70 mil billones). Ya en 1977, Whitfield Diffie
y Martin Hellman pensaron en la posibilidad de construir un chip que comprobase un
milln de claves por segundo. Un ordenador que incorporase otro milln de tales chips
descubrira la clave a lo largo de un da. Sin embargo, hay que esperar hasta 1998 para
que se tenga constancia de la fabricacin de uno de estos ordenadores. En ese ao, la
Cryptography Reseach, la Avanced Wireless Technologies y la Electronic Frontier
Fundation construyeron conjuntamente el que llamaron DES Cracker, un ordenador con
ms de 1800 chips que, siendo capaz de comprobar ms de 90 mil millones de claves por
segundo, recuperaba una clave DES en una media de 5 das. Su coste rond los 250 mil
dlares. No obstante, la bsqueda exhaustiva de claves DES ya haba tenido xito un ao
antes, en junio de 1997. En esa ocasin, con motivo del concurso DES Challenge
convocado por la empresa RSA Data Security, 14000 PCs coordinados a travs de
Internet descubrieron la clave ganadora. Tardaron 120 das en encontrarla. El premio:
10000 dlares.
En realidad, la fuerza bruta ha resultado ser el nico mtodo efectivo para derrotar a
DES. Se han descubierto otros mtodos que requieren menos clculo computacional, pero
ninguno es viable en la prctica. Los ms conocidos son los denominados criptoanlisis
diferencial y criptoanlisis lineal, dos tcnicas genricas contra los cifrados en bloque. El
primero fue dado a conocer por los israeles Eli Biham y Adi Shamir en 1990. Es un
ataque con texto pleno escogido, lo que significa que el criptoanalista debe disponer de
texto pleno (y su correspondiente cifrado) con ciertas caractersticas. Se ha mostrado
eficaz contra algunos cifrados en bloque, incluidos Lucifer y una versin de DES que no
supere las 8 rondas del segundo paso; pero para aplicarlo al autntico DES de 16 rondas
193
en Ventura, California, en agosto de 1998; y que sirvi de inicio a una primera ronda de
evaluacin por parte de la comunidad criptogrfica. Los resultados de las pruebas
realizadas se discutieron en una segunda conferencia de candidatos que tuvo lugar en
marzo de 1999, esta vez en Roma. Aqu se puso de manifiesto que cinco de los quince
cifrados concursantes no reunan las condiciones de seguridad exigidas por el NIST, as
como que algunos algoritmos eran ms eficientes que otros. Unos meses despus de esta
reunin, en agosto, el NIST dio a conocer los cinco candidatos finalistas: Mars, de
IBM; Rijndael, de los belgas J. Daemen y V. Rijmen; RC6, de RSA Data Security;
Serpent, del britnico R. Anderson, el israel E. Biham y el dans L. Knudsen; y
Twofish, de Counterpane Systems. En abril de 2000 se celebr en Nueva York la
tercera y ltima conferencia, dedicada a los cinco cifrados finalistas. En su ltima sesin,
la organizacin solicit una valoracin de los candidatos a travs de un cuestionario. El
cifrado preferido de los asistentes result ser Rijndael, el criptosistema de los
investigadores belgas. El mismo que el NIST eligi como vencedor del concurso, cuyo
anuncio oficial tuvo lugar el 2 de octubre de 2000.
Desde ese momento, DES ya tiene sustituto: AES. Naturalmente, la decisin del
NIST de adoptar el nuevo criptosistema slo obliga a la administracin federal americana,
y en lo concerniente a la informacin no clasificada; pero con toda seguridad, AES va a
ser el cifrado ms usado en los prximos aos. La recomendacin del cifrado por parte
del NIST es todo un certificado de garanta para empresas y organizaciones. Prueba de
ello es que organismos internacionales como el consorcio europeo NESSIE (New
European Schemes for Signatures, Integrity and Encryption) ya han recomendado el uso
de AES. Ms an, recientemente, en junio de 2003, la misma NSA ha aprobado el uso de
AES para cifrar informacin clasificada: la secreta con claves de 128 bits y la de alto
secreto con claves de 192 y 256 bits.
A continuacin damos una descripcin resumida del nuevo estndar de cifrado. El
lector que desee conocer todos sus detalles puede consultar las pginas web del NIST o el
libro The Design of Rijndael, escrito por los belgas creadores del cifrado.
AES, como la gran mayora de los cifrados en bloque, consiste en someter a los
bloques de texto en claro a una serie de operaciones que se repiten cierto nmero de
rondas. Estas operaciones se expresan en trminos algebraicos empleando cierta
aritmtica de bytes (recordemos: un byte son 8 bits). En esta aritmtica, la suma de bytes
es justamente la suma XOR introducida antes y el producto Bueno, este producto de
bytes es mucho ms complicado de definir y mejor no lo hacemos. Baste con sealar que
esta aritmtica de bytes est extrada de la teora matemtica de los cuerpos finitos y no es
elemental. Lo que importa saber es que cada byte no nulo ( 00000000) tiene inverso para
el producto. Dicho esto, el proceso de cifrado de cada bloque de 128 bits de texto en claro
sigue los siguientes tres pasos:
1. Se efecta una suma XOR entre el bloque de texto en claro y los 128 primeros
bits de la clave. El resultado se parte en 16 bytes: B1 B2 B3 B16 y se forma con
ellos una matriz 44:
195
B1
B2
B
3
B
4
B5
B9
B6
B10
B7
B8
B11
B12
B13
B14
B15
B16
c a a x1
b c a x2
a b c x3
a a b x 4
Cada byte se reemplaza por su inverso para el producto. Como el byte nulo no
tiene inverso, se deja invariante.
Sea a7 a6 a5 a4 a3 a2 a1 a0 el byte resultante de este primer paso.
II.
196
b7
b
6
b5
b4
b3
b2
b1
b
0
= a 7 a 6 a5 a 4 a3
=
=
a 6 a5 a 4 a3 a 2
a5 a 4 a3 a 2 a1
a 4 a3 a 2 a1 a 0
= a7
a3 a 2 a1 a 0
= a7 a6
= a 7 a 6 a5
a 2 a1 a 0
a1 a 0 1
= a 7 a 6 a5 a 4
a0 1
197
11
CRIPTOGRAFA EN CLAVE PBLICA
199
cada mensaje recibido es autntico, que en efecto ha sido trasmitido por la otra parte y no
por un intruso? Adems, cmo realizar esta idea en la prctica?
La respuesta a estas cuestiones (y tambin a otras relacionadas) se encuentra dentro
de la Criptografa en clave pblica. Se llama as porque en esta criptografa cada clave
consta a su vez de dos claves: una pblica, conocida por todo el mundo; y otra privada, en
poder de una nica persona. Con la clave pblica se cifran los mensajes y con la privada se
descifran. De este modo, cualquiera puede cifrar mensajes y transmitirlos al receptor
conocedor de la clave privada. Slo l ser capaz de entenderlos. La Criptografa de clave
pblica se denomina tambin criptografa asimtrica. Dicho trmino asigna entonces el
calificativo de simtrica a la criptografa tradicional, en la que tanto el emisor como el
receptor emplean una clave secreta.
La primera publicacin que incluye este revolucionario concepto criptogrfico fue el
artculo escrito por Whitfield Diffie y Martn Hellman, de la Universidad de Stanford,
titulado New Directions in Cryptography y publicado en la revista IEEE Transactions on
Information Theory, en noviembre de 1976. En l se presentan las nociones bsicas de la
Criptografia en clave pblica, se plantean algunos problemas que con ella se resuelven y se
describe el primer criptosistema perteneciente a esta nueva rama de la Criptografa. Sus
autores mencionan tambin el trabajo de Ralph Merkle, de la Universidad de California en
Berkeley, quien haba llegado a la misma idea de clave pblica que los investigadores de
Stanford.
No obstante, aunque se considera a estos tres investigadores americanos los
creadores de la Criptografa en clave pblica, es probable que sta fuera desarrollada antes
en el seno de las todopoderosas organizaciones gubernamentales dedicadas a las tareas
criptogrficas. A finales de los aos 70, Robert Inman, siendo director de la NSA,
manifest que esta agencia ya haca uso de la criptografa en clave pblica diez aos antes
de la publicacin del artculo de Diffie y Hellman. Naturalmente, Inman no mostr
documentos que avalaran su afirmacin; pero son varias las personas vinculadas a la alta
seguridad americana que lo han ido confirmando. Hay hasta quien ha relacionado ese
precoz inters de la NSA en la criptografa en clave pblica con el control del armamento
nuclear. Ms recientemente, en diciembre de 1997, el Goverment Communication
Headquarters (GCHQ), la organizacin britnica equivalente a la NSA, desclasific una
serie de documentos que, de ser cierto lo que en ellos se dice, muestran que el GCHQ
trabajaba con la idea de la clave pblica desde finales de los aos 60.
La seguridad en la Criptografa asimtrica es un problema mucho ms delicado que
en la simtrica, ya que el nico dato no pblico es la clave que sirve para el descifrado.
Adems, no es fcil reunir seguridad y efectividad en un cifrado en clave pblica; y
solamente unos pocos de los numerosos criptosistemas que han sido propuestos lo han
logrado. Por lo general, estos algoritmos estn basados en las llamadas funciones
unidireccionales. Nos ayudar a entender este concepto matemtico el siguiente ejemplo.
Imaginemos que disponemos de pintura de los cinco colores bsicos: negro, blanco, rojo,
azul y amarillo. Mezclando estos colores en diferentes proporciones se puede conseguir
cualquier otro color. Esta operacin puede contemplarse como una funcin que toma como
argumento una proporcin de los cinco colores bsicos y produce un color compuesto. Es
200
fcil obtener un color determinado si se conoce la proporcin exacta de los colores bsicos.
Por el contrario, dado un determinado color, es prcticamente imposible averiguar su
composicin, la proporcin exacta de cada color bsico. Estas son las dos condiciones que
debe verificar una funcin unidireccional.
Con cierta formalidad: una funcin que transforma una variable x en otra y se dice
unidireccional si:
a) Dada x, el clculo de y se puede realizar en tiempo polinomial.
b) Dada y, el cmputo de una x que produce tal y es un problema intratable.
Expliquemos los trminos tiempo polinomial y problema intratable, extrados de
la Teora de la Complejidad de Algoritmos. El tiempo de ejecucin de un algoritmo es el
nmero de instrucciones elementales (pasos) que realiza. Este nmero de pasos depende de
la longitud de los datos de entrada; esto es, del nmero de bits que ocupa su codificacin
en el ordenador. Dicho de un modo informal: un algoritmo se ejecuta en tiempo polinomial
si existe cierto entero k tal que si los datos de entrada tienen una longitud de n bits,
entonces el algoritmo se ejecuta en un nmero de pasos prximo a nk. (Si k=1, se dice
lineal; si es 2, cuadrtico, etc.). El tiempo polinomial es un tiempo corto, de acuerdo con la
nocin de tiempo que todos tenemos. Esto puede observarse en la tercera columna de la
siguiente Tabla 11.1. En ella figura el tiempo que tardaran en ejecutarse los algoritmos de
la primera columna, suponiendo entradas de 100 bits y una velocidad de ejecucin de un
billn de pasos por segundo (velocidad de un supercomputador). Comprense los tiempos
polinomial con el exponencial.
Tipo
Pasos
Tiempo
Lineal: n
100
0,1 nanosegundos
Cuadrtico: n2
10000
10 nanosegundos
Cbico: n
1 microsegundo
30
10
n
Exponencial: 2
10
201
es el siguiente. Fijemos una lista de r enteros positivos: m1, m2, , mr. A cada bloque de r
bits b1b2br le asociamos la suma:
S = b1m1 + b2 m2 + + br mr
Definimos as una funcin, la que a cada bloque de de r bits b1b2br le hace
corresponder la suma S. El clculo de S a partir del bloque de bits es inmediato: requiere
efectuar r1 sumas como mucho y ello se realiza con un algoritmo lineal. Pero dada una
suma S, recuperar un bloque de bits que la produce es un problema intratable; es el
conocido como problema de la mochila. Naturalmente, para observar la intratabilidad
de este problema hay que considerar valores de r que no sean pequeos. Pinsese en el
problema con r100, por ejemplo.
Un criptosistema asimtrico diseado a partir de una funcin unidireccional basa su
seguridad en el problema intratable asociado a esta funcin. Se trata de que su
criptoanlisis sea equivalente a resolver dicho problema. Al mismo tiempo, la rapidez de
su va directa (esto es, el clculo de y a partir de x) puede ser empleada en los procesos de
cifrado o descifrado. Por ejemplo, la funcin unidireccional asociada al problema de la
mochila puede servir de base a un criptosistema en el que el cifrado consista en
transformar bloques de r bits en sumas S, que es un proceso rpido. El criptoanalista que
pretenda recuperar los bloques de bits a partir de las sumas estar ante un problema
intratable. De esta idea partieron Merkle y Hellman para concebir un criptosistema que
dieron a conocer en 1978 y que describimos en los prrafos siguientes.
Sucede que el problema de la mochila es fcil de resolver si los enteros mi forman
una sucesin supercreciente, que as se dice cuando cada entero mi es mayor que la suma
de los anteriores. Por ejemplo, la sucesin de 8 nmeros: {3, 4, 10, 21, 43, 85, 177, 350} es
supercreciente: 3<4, 3+4<10, 3+4+10<21, etc. Cuando la lista de enteros mi es
supercreciente, si existe solucin al problema de la mochila, sta es nica y puede
obtenerse de la manera que explicamos a continuacin. Por ejemplo, dado S=482,
calculemos, si es que existe, un byte b1b2b8 solucin de la ecuacin:
482 = 3b1 +4b2 +10b3 +21b4 +43b5 +85b6+177b7 +350b8
Primero comparamos 482 con 350, el ltimo entero. Como es mayor, b8 ha de ser 1;
en otro caso, sera 0. Al ser 1 este bit, restamos: 482350=132. Comparamos 132 con 177,
el penltimo entero de la lista. Como es menor, b7 =0. Comparamos entonces 132 con el
siguiente entero de la lista: 85. Es mayor, luego b6 =1. Restamos: 13285=47. Como esta
diferencia supera a 43, b5 =1. Volvemos a restar: 4743=4. Esta diferencia es menor que
21 y 10 pero igual al segundo nmero de la lista, luego b4 =b3 =0 y b2 =1. La siguiente resta
es ya 0: 44=0. Llegar a 0 es precisamente la condicin de existencia de solucin. Los bits
que faltan por calcular son nulos. Luego b1 =0 y hemos obtenido el (nico) byte solucin:
01001101. (Comprubese, si no se est convencido de ello).
En el criptosistema de Merkle y Hellman (tambin llamado de la mochila) se parte
de una sucesin de enteros supercreciente. Se consideran tambin otros dos enteros: uno el
mdulo, mayor que la suma de todos los enteros de la sucesin; y otro el multiplicador,
202
primo con el mdulo (esto es, que el mximo comn divisor de ambos enteros es 1). La
sucesin supercreciente, el mdulo y el multiplicador constituyen la clave privada que slo
conoce el receptor de los mensajes. Por ejemplo, la sucesin supercreciente anterior {3, 4,
10, 21, 43, 85, 177, 350}, el mdulo 700 y el multiplicador 79 constituyen una clave
privada.
Seguidamente, consideramos la aritmtica modular de la que hablamos en el captulo
7; pero fijando ahora como mdulo de esta aritmtica el mdulo de la clave privada: 700
en nuestro ejemplo. Como el multiplicador es primo con el mdulo, tiene inverso para el
producto. El inverso de 79 (mdulo 700) es 319, como puede comprobarse. Multiplicamos
este inverso por cada uno de los trminos de la sucesin supercreciente que forma parte de
la clave privada (recordemos que las operaciones con la aritmtica modular se realizan
recurriendo a las operaciones habituales de enteros y sustituyendo el resultado por el resto
de dividirlo entre el mdulo):
3319 = 957 = 257,
(957=1700+257).
4319 = 1276 = 576,
(1276=1700+576).
10319 = 3190 = 390, (3190=4700+390).
Se obtiene as la sucesin {257, 576, 390, 399, 417, 515, 463, 350}, que ya no es
supercreciente. Esta sucesin es precisamente la clave pblica que conoce todo el mundo.
Para cifrar con ella un mensaje que se supone codificado en binario, el emisor lo
divide en bloques de 8 bits b1b2b8 y los reemplaza por la suma
S = 257b1 +576b2 ++ 350b8.
He aqu un ejemplo:
Clave pblica: {257, 576, 390, 399, 417, 515, 463, 350}
Texto claro:
Texto cifrado:
01001101
10001110
00110011
1858
1652
1602
Para descifrar, el receptor del mensaje debe usar la aritmtica mdulo 700 y
multiplicar S y el otro miembro de la ecuacin anterior por 79 (el multiplicador). Al
hacerlo:
25779=331979=3,
203
ya que 257=3319 y 319 es el inverso de 79. De igual manera 57679=4, 39079=10, etc.
Se obtiene as esta otra ecuacin, en la que figuran los enteros de la sucesin
supercreciente:
79S = 3b1 +4b2 ++ 350b8.
A partir de ella, el receptor puede recuperar el bloque b1b2b8 de la manera
explicada antes. Por ejemplo, al multiplicar el primer nmero del texto cifrado por 79
obtenemos 482; y ya hemos comprobado que la nica solucin de la igualdad
482=3b1 +4b2 ++ 350b8
es 01001101, justamente el primer bloque de ocho bits del texto en claro.
Con ocho enteros, el problema de la mochila es fcil de resolver y, por tanto, el
criptosistema resultante carece de seguridad alguna. Como ya sealamos antes, hay que
considerar listas de por lo menos 100 nmeros para que el problema de la mochila sea en
efecto intratable. De hecho, cuando Merkle y Hellman dieron a conocer su criptosistema,
propusieron utilizar mochilas a partir de 256 enteros. Con tal cantidad, un computador
capaz de comprobar un billn de posibles soluciones por segundo tardara ms de 1053 aos
en comprobarlas todas. Basndose en este hecho, Merkle y Hellman creyeron que su
criptosistema era seguro y, con el fin de obtener beneficios de su trabajo, lo patentaron en
1980. No obstante, poco provecho obtuvieron de esta patente; ya que Adi Shamir logr
criptoanalizarlo tan slo un par de aos despus. Naturalmente, Shamir no emple la
fuerza bruta; sino que mostr que era posible recuperar en tiempo polinomial la clave
privada a partir de la clave pblica y de los textos cifrados.
En agosto de 1977, la famosa revista Scientific American inclua una breve
descripcin del criptosistema de clave pblica ms usado en la actualidad. Nos referimos al
popular RSA, nombre que se forma con las iniciales de los apellidos de sus creadores:
Ronald Rivest, el anteriormente citado Adi Shamir y Leonard Adleman, entonces tres
investigadores del prestigioso Massachussetts Institute of Technology. No gust esta
publicacin a la NSA, quien reconociendo su inters por el algoritmo y tratando de
controlar su uso, intent en vano prohibir la publicacin de los detalles del mismo; hecho
que ocurri pocos meses despus, en febrero de 1978. Tras una larga batalla legal con el
gobierno americano, los tres investigadores fundaron en 1982 la compaa RSA Data
Security, con objeto de comercializar las aplicaciones de su criptosistema. Un gran
negocio, pues la vendieron en 1996 por 200 millones de dlares.
RSA est basado en el problema de la factorizacin de enteros. Como es bien sabido,
factorizar un entero es descomponerlo en producto de nmeros primos. En la escuela nos
ensean un sencillo mtodo conocido desde siempre y que consiste en dividir
sucesivamente el nmero a factorizar por los primos 2, 3, 5, 7 hasta dar con uno que
produzca una divisin exacta. Tal primo es uno de los factores buscados y los dems
pueden calcularse repitiendo este proceso con el cociente de la divisin exacta. Cuando el
nmero no es muy grande, de unas cuatro o cinco cifras todo lo ms, este mtodo no
requiere ms que unas pocas divisiones y puede efectuarse en unos pocos minutos
204
205
n = 257307= 78899,
= 256306= 78336.
Nmeros C:
16717
36412
21249
B 101
B 101
B 101
45456
22284
20485
Para descifrar, el receptor del mensaje recupera de nuevo los nmeros B calculando
las potencias C 37229 (recurdese que 37229 es la clave privada). La justificacin de que
B=C 37229 es la siguiente. Como 37229 es el inverso de 101 mdulo , entonces
10137229=1+k, para cierto entero k. (Igualdad que ha de contemplarse con la
aritmtica habitual de enteros). Luego,
C 37229 =(B101)37229 =B10137229 =B1+k =BB k =B(B )k .
Y la igualdad C 37229 =B se sigue del llamado teorema de Euler, que establece que
B =1.
Los nmeros considerados en nuestro ejemplo son pequeos, de tan slo 5 cifras
decimales. En la prctica, los enteros que se utilizan tienen un tamao mnimo de 256 bits
(77 cifras decimales) y no es raro llegar incluso a los 1024 bits (308 cifras decimales). Usar
RSA con nmeros de este tamao requiere superar dos dificultades que hemos de
comentar. La primera, manejar y operar con estos nmeros de un modo eficiente. Como es
sabido, la aritmtica entera que incorpora un ordenador tiene unos lmites que, por
ejemplo, impiden multiplicar dos nmeros de ms de 5 cifras. Para poder hacerlo, es
necesario incorporar un conjunto de algoritmos especiales que se conocen con el nombre
genrico de aritmtica multiprecisin. Gracias a estos algoritmos es posible realizar
operaciones con enteros arbitrariamente grandes; y de una manera muy rpida, siempre en
tiempo polinomial. No obstante, el cmputo de potencias modulares es lento y, como
consecuencia de ello, el cifrado con RSA tambin lo es. Al menos 100 veces ms lento que
cualquiera de los algoritmos simtricos presentados en el captulo anterior. El otro
problema al que nos referamos es la generacin de la clave. Concretamente: la bsqueda
206
de dos nmeros primos arbitrariamente grandes. Por fortuna, hay suficientes nmeros
primos del tamao que se deseen. Por ejemplo, hay aproximadamente 41098 nmeros
primos de 100 cifras decimales. Pero encontrar dos de ellos slo es posible si se
implementa en el ordenador un algoritmo que permita decidir si un nmero dado es primo.
El conocido con test de Miller-Rabin es uno de ellos, quizs el ms empleado. Con dicho
algoritmo, la bsqueda de los dos primos puede efectuarse de modo aleatorio. Y una vez
hallados, el cmputo de la clave pblica y privada es inmediato; con la aritmtica
multiprecisin, naturalmente.
La razn de emplear nmeros de tamao semejante no es otra que impedir que un
criptoanalista logre factorizar el mdulo: n=pq. Si ello sucede, el clculo de es
inmediato: = (p1)(q1); y, seguidamente, la clave privada: d=e 1 (mdulo ). Por
tanto, impedir la factorizacin del mdulo es vital para la seguridad del criptosistema.
Decamos anteriormente que cuando se propuso el RSA, a mediados de los aos setenta,
factorizar un entero de 50 cifras era algo imposible. Hoy en da, tales nmeros se pueden
factorizar en unos pocos minutos en cualquier PC. La razn principal de este avance no es
el aumento de la velocidad de cmputo en los modernos ordenadores; sino el
descubrimiento de nuevos algoritmos de factorizacin, que han reducido
considerablemente la cantidad de operaciones requeridas. No obstante, an con estos
algoritmos, el nmero de operaciones sigue siendo enorme. Una idea de ello nos la puede
dar la Tabla 11.2. En su tercera columna incluimos el nmero de operaciones que debe
ejecutar un ordenador para factorizar un mdulo RSA de tantas cifras como se indica en la
primera columna, empleando siempre el algoritmo ms rpido que se conoce. (Para enteros
de hasta 116 cifras este algoritmo es el mtodo de la criba cuadrtica, descubierto por C.
Pomerance en 1985; para enteros de ms de 116 cifras es preferible el mtodo de la criba
del cuerpo numrico, encontrado por J. M. Pollard en 1993).
N de dgitos
50
100
155
200
308
500
1000
N de bits
166
332
512
664
1024
1664
3322
N de operaciones
1,61010
3,71014
9,51017
2,21020
61024
91030
61041
207
208
16717
36412
21249
Nmeros E:
45981
11037
64159
C1 =aE C2 =ByE
C1 =aE C2 =ByE
C1 =aE C2 =ByE
Par C1 y C2:
41073
5298
15494
58065
209
17737
57206
Para descifrar, el receptor del mensaje recupera de nuevo los nmeros B calculando
C2C1-x. En efecto:
C2C1-x = ByE(aE)-x = ByE(ax)-E = ByEy -E = B.
La seguridad del criptosistema de ElGamal radica en que como x es el logaritmo
discreto de y en base a, encontrar esta clave privada x es un problema intratable. No
obstante, al igual que ha ocurrido con la factorizacin de enteros, los algoritmos
encontrados recientemente han hecho que el clculo de logaritmos discretos sea un
problema menos intratable. Sin entrar en detalles, para que el criptosistema sea seguro, p
debe tener al menos 512 bits (155 cifras decimales) y ser un primo fuerte; que as se dice
cuando p1=2q, con q otro nmero primo.
Los tres criptosistemas que aqu hemos presentado son slo una pequea muestra de
los muchos que han sido propuestos desde 1976. Otros que suelen incluir la mayora de los
libros de texto son el de Rabin, el de McElice y los basados en curvas elpticas. No
creemos que sea ya necesario entrar a describirlos y dedicamos el resto del captulo a
mostrar algunas aplicaciones de la criptografa en clave pblica que tienen inters en la era
de la informacin en que nos encontramos.
La anterior solucin de Diffie y Hellman al problema de la distribucin de claves no
da respuesta a la siguiente pregunta que ya planteamos al comienzo del captulo: cmo
sabe cada una de las dos partes implicadas, A y B, que cada mensaje recibido es autntico,
que en efecto ha sido trasmitido por la otra parte y no por un intruso? Si este suplanta a B,
puede boicotear el proceso de intercambio de claves; o peor an, intercambiar informacin
confidencial con A. La respuesta a la pregunta anterior ha conducido a la llamada firma
digital.
Se pretende que la firma digital sea el perfecto sustituto de la tradicional firma en
papel. Por tanto, debe cumplir con estas caractersticas: ser imposible de falsificar, fcil
de autentificar e irrevocable (que el firmante no puede negar su autora). Para introducir el
concepto de firma digital, planteemos la siguiente situacin general: que A manda un
mensaje M a B y que ste quiere tener constancia de que efectivamente ha sido enviado por
A. La solucin a este problema depende del criptosistema de clave pblica que se emplee.
La firma digital que presentamos a continuacin se basa en RSA.
Supongamos que A tiene clave pblica el mdulo n y el exponente e, y clave privada
el entero d. Si contemplamos al mensaje M como un nmero menor que n, A computa la
potencia modular f=M d y transmite a B ambos M y f. La firma digital es precisamente el
entero f. Es infalsificable e irrevocable, porque solamente quien conozca d (la clave secreta
de A) puede generar f a partir de M. Tambin es fcil de verificar: se calcula f e y se
comprueba si coincide con M. Veamos un sencillo ejemplo. Admitamos que A tiene clave
pblica el mdulo n = 78899 y el exponente e=101, y que su clave privada es d=37229. A
desea enviar a B el mensaje M=0100000101001101, que se corresponde con el nmero
decimal 16717. La potencia modular
f=M d =1671737229 =55907
210
211
continuacin fue dado a conocer por Clauss Schnorr en 1990 y est basado en el problema
de los logaritmos discretos.
En el esquema de Schnorr se requiere que una autoridad proporcione a cada usuario
una identificacin y certifique esta identificacin, tal y como explicaremos seguidamente.
En la prctica, la autoridad es una institucin como un banco o un organismo oficial; la
identificacin puede ser una serie de datos como el nombre y apellidos o un nmero (el
DNI, por ejemplo). Inicialmente, la autoridad elige un par de nmeros primos p y q con
p=2q+1 (de al menos 512 bits si se desea garantizar seguridad), y un entero b<p tal que
b21 (mdulo p). Los tres nmeros p, q y b son pblicos. Una vez que la autoridad ha
facilitado a un individuo A una identificacin IDA, le proporciona un certificado siguiendo
estos dos pasos:
1. A elige secretamente un nmero sA (su contrasea) con 0<sA <q y se calcula
v A = b sA (mdulo p).
2. La autoridad firma digitalmente los datos IDA y vA. Sea fA esta firma.
El certificado para A es la terna IDA, vA y fA; que es infalsificable, ya que as lo es
una firma digital. Este certificado es pblico y A puede exhibirlo sin comprometer su
contrasea sA; ya que recuperar este dato a partir de vA requiere calcular un logaritmo
discreto. Con su certificado, A puede identificarse remotamente ante otra persona B
siguiendo los siguientes pasos:
1) A enva a B su certificado y ste comprueba si es autntico; esto es, verifica la
firma fA. En tal caso, B elige un nmero aleatorio r<q y lo comunica a A.
2) A elige tambin un nmero aleatorio k<q, computa el par de nmeros x e y:
x=bk (mdulo p),
y los transmite a B.
3) Por ltimo, B verifica si x=byvAr (mdulo p); en cuyo caso ha de aceptar la
identidad de quien le ha transmitido el certificado.
Slo quien conozca la contrasea sA puede generar el entero y, por lo que nadie
puede suplantar a A. Por otra parte, la comprobacin que ha de hacer B en el paso 3) se
justifica as:
b y v A = b k + sA r v A = b k + sA r b sA r = b k = x .
r
En la actualidad, la tecnologa permite que los clculos anteriores sean realizados por
diminutos chips que pueden incorporarse a las tarjetas de crdito. Estas son las llamadas
tarjetas inteligentes. Ya estn reemplazando a las tradicionales tarjetas de crdito y muy
pronto sern las nicas que se usen. Adems de sacar dinero en un cajero automtico y
212
efectuar compras en tiendas, las emplearemos para firmar documentos, operar en Internet,
identificarnos en diferentes contextos Naturalmente, la seguridad que proporcionan es
mucho mayor que las que ahora estamos usando.
213
Bibliografa.
215
BIBLIOGRAFA
216
Figura. 2.1: Sustitucin del duque de Mantua. Archivio di Stato, n 42. Mantua, Italia. La
imagen que aqu se incluye est extrada del libro de D. Kahn: The Codebreakers. The
Story of Secret Writing, pg. 107.
Figura 2.2: Un nomencltor espaol de 1563. Procede de la pgina web de la Fundacin
Casa de Medina Sidonia: http://www.fcmedinasidonia.com/
Figura 2.3: Nomencltor compilado en Florencia en 1554. Archivio di Stato, n 457.
Florencia, Italia. La fotografa est extrada del libro de D. Kahn: The Codebreakers. The
Story of Secret Writing, pg. 107.
Figura 2.4: Nomencltor de 1568 usado por Felipe II. Archivo General de Simancas,
Seccin Secretara de Estado, leg. 664. La imagen que incluimos est tomada del libro de
J. C. Galende: Criptografa. Historia de la escritura secreta, pg. 100.
Figura 3.2: Tabla de Trithemius. Ilustracin del libro de Trithemius Poligrafa, escrito
en 1508. http://www.unimainz.de/~pommeren/Kryptologie/Klassisch/2_Polyalph/
Figura 4.1: Una pgina de un cdigo militar telegrfico. Obtenida de la pgina web:
http://www.cix.co.uk/~klockstone/cbprop.htm.
Figura 4.2: Cifrado digrfico de Porta. Dibujo de libro de Porta: De Furtivis
Literarum. http://www.und.nodak.edu/org/crypto/crypto/graphics.html.
Figura 6.1: El telegrama Zimmermann. Procede del la pgina web del U. S. National
Archives:
http://www.archives.gov/digital_classroom/lessons/zimmermann_telegram/
zimmermann_telegram.html
Figura 8.1: Criptgrafo de Wheatstone. http://www-wi.cs.uni-magdeburg.de/~pauer/
images
Figura 8.2: La rueda de Jefferson. Tomada de la pgina web del Nacional Cryptologic
Museum: http://www.nsa.gov/museum
Figura 8.3: El M-94 del ejrcito americano. El mismo origen que la Figura 8.1.
217
218
ndice alfabtico
C-38 142
Cabinet Noir 31
cmaras negras 31
Cardano, G. 39
cifrado de 39
certificado 212
Chase, P. 62
cifrado de 62
chiffre indchiffrable, le 35, 40
ciclmetro 165, 166
cifra de campo 56
Cifra General de Felipe II 28
cifrado en bloque 186
modo CBC 189
modo ECB 189
cifrado secuencial 186
autosincronizado 187
sincronizado 186
clases de congruencia 114
clave 2, 11
pblica 199, 200
cdigo 55
comercial 55
de dos partes 56
de trinchera 103
de una parte 56
desordenado 56
oficial 56
ordenado 56
telegrfico 55
Babbage, C. 43
Bazeries, E. 33, 127
cilindro de 127
Belaso, G. 38
cifra de 38
Bergenroth, G. 32
Bertrand, G. 156
bfida, cifra 63
bigrama 19
Biham, E. 193
binario, sistema 184
219
NDICE ALFABTICO
female 167
firma digital 210
Fleissner, E. 83
Foss, H. 147
fraccionado, cifrado 63
frecuencia 13
Friedman, W. 43, 128
funcin hash 211
funcin unidireccional 200
Coppersmith, D. 194
crib 154
criba cuadrtica, algoritmo de la 207
criptoanlisis 5
con texto cifrado 5
con texto claro y cifrado 5
diferencial 193
lineal 193
total 5
criptoanalista 5
Criptografa 4
asimtrica 200
Moderna 183
simtrica 200
criptograma 2
criptosistema 5, 11
cuadrado latino 127
cuerpo numrico, algoritmo 207
GCCD 147
GCHQ 200
Geheime Kabinets-Kanzlei 31
Gran Cifra de Luis XIV 32
Grey, N. 97
Grundstellung 155
Habitacin 40 97
Hagelin, B. 142
Hayhanen, Reino 5
Hebern, E. 131
mquina de 132
Hellman, M. 193, 200
Hill, L. 113
criptosistema de 113, 118
homfonos 24
Daemen, J. 195
Deavours, C. 138
Deciphering Branch 32
Delastelle, F. 63
cifra de 64
Denniston, A. 171
DES 190-193
Cracker 193
caja del 192
Diffie, W. 193, 200
digrafo 19
distribucin de claves 199
Doppelkstenschlssel 61
dos cuadrados, cifra de los 61
ndice de coincidencia 43
del espaol 44
mutua 47
intratable, problema 201
inversa de una letra 115
isomorfos, textos 149
Jefferson, T. 126
rueda de 126, 127
Jeffreys, J. 172
Julio Csar 10
sustitucin de 10
Feistel, H. 190
220
NDICE ALFABTICO
Rivest, R. 204
rodding 148
Rossignol, A. 30
Rossignol, B. 32
rotor 129
rotores concatenados 131
rotores, mquina de 125, 131
Rowlet, F. 133
Rozycki, J. 157
RSA 204-208
RSA Data Security 193, 204
M-138 128
M-209 142
M-94 128
Magdeburgo, cdigo 99
Matsui, M. 194
Merkle, R. 200
Merkle-Hellman, criptosistema de 203
mochila, criptosistema de la 202-204
mochila, problema de la 202
Montgomery, W. 97
Morse, S. 55
mladeviya 10
mltiples anagramas, mtodo de los 86
Musefili, P. 28
Scherbius, A. 135
Schmidt, H. 156
secuencia clave 186
Shamir, A. 193, 204
Sigaba 134
simetra de la posicin 51
Simonetta, C. 28
Singh, S. 16
Sinkov, A. 133
Smith, F. 55
Soro, G. 28
Spruchschlssel 156
Stator 137, 149
Steckerverbindung 139, 154
suma de letras 114
supercomputador 183
sustitucin 7
del Duque de Mantua 24
homofnica 24
cifrado por 7, 11
NBS 190
Nebel, F. 105
NIST 194
nomencltor 23, 26
NP, clase 201
NSA 190
nulos 26
opuesta de una letra 115
P, clase 201
Painvin, G. 106
palabra probable, mtodo de la 65
pin and lug 142
Playfair, L. 59
cifrado 59
doble 61
polialfabtico, cifrado 35
Polibios 9, 63, 105
cifrado de 9
polfonos 100
poligrfico, cifrado 55, 58
Pollard, J.M. 207
Pomerance, C. 207
Porta, G. 39, 58
cifra de 39
cifrado digrfico de 58
Pratt, F. 15
producto de letras 114
Purple 142
tabla de Trithemius 38
tabla de Vigenre 40
tablero diagonal 177
tabula recta 38
Tageschlssel 155, 156
tarjeta inteligente 212
texto 2
cifrado 2
claro 2
llano 2
tiempo polinomial 201
tomogrfico, cifrado 63
transposicin 11
cifrado por 11, 58, 77
de columnas 78
doble 80
variante francesa 102
de los nihilistas rusos 81
regular 86
periodo de una 86
rail fence 77
reflector 136, 148
Rejewski, M. 157
bomba de 169, 170
rejilla giratoria 83
Rijmen, V. 195
Ringstellung 140, 155
221
NDICE ALFABTICO
trigrafo 19
trigrama 19
Trithemius J. 37
cifrado de 37
tabla de 38
Turing, A. 172
bomba de 173-175
Turing-Welchman, bomba de 178,179
Typex 142
BCHI, cifra 101
Uhr Box 141
Unicode 185
unidad, letra 115, 116
vector de inicializacin 189
Viaris, H. de 127
Vite, F. 30
Vigenre, B. 35, 40
cifrado de 40
tabla de 40
Wallis, J. 31
Welchman, G. 177
Wheatstone, C. 59, 125
criptgrafo de 125, 126
Wierner, M. 208
Winterbotham, F. 147
Zimmermann, A. 96
telegrama 97
Zygalski, H. 157
hoja de 168
222