Boletín ENIGMA - nº 55
1 Noviembre 2007
Boletín del Taller de Criptografía
de Arturo Quirantes Sierra
Dirección original: http://www.cripto.es/enigma/boletin_enigma_55.htm
CRIPTO 101 - Shannon y la teoría de la comunicación (I)
CRIPTOGRAFÍA HISTÓRICA - Rommel y su "espía" americano
TEMAS DE ACTUALIDAD - jHashCalc, herramienta para funciones hash
LIBERTAD VIGILADA - El Parlamento Europeo, alarmado
Hoy no tengo muchas ganas de enrollarme, así que seré breve. Hoy tenemos una
historia interesante sobre criptoanálisis alemán (sí, también ellos se movieron
en ese campo) con el Zorro del Desierto como protagonista. También abrimos una
serie sobre la teoría matemática de la comunicación, que tiene importantes
aplicaciones en criptografía y teoría de la codificación y transmisión. Espero
que la matemática no os sea demasiado pesada. No lo será para al menos uno de
nuestros lectores, quien ni corto ni perezoso nos ofrece una herramienta para
calcular funciones hash.
Por cierto, ya que hablamos de ello, nuestra contribución al proyecto SHA-1
Collision Search de la Universidad de Graz va viento en popa. Nos encontramos en
la posición 71 dentro del ránking de equipos, con un total de 18.730 créditos.
Una contribución modesta, considerando que el global casi supera ya los 24
millones de créditos, pero ahí está. Por cierto, a ver si descubrimos qué es "un
crédito" Mientras tanto, tomemos este boletín, guardémoslo en la maleta y
disfrutémoslo en este puente de todos los santos, o de Halloween, o de lo que
corresponda. Feliz mes a todos.
CRIPTO 101 - Shannon y la teoría de la comunicación (I)
"Sgeun
un etsduio de una uivenrsdiad ignlsea, no ipmotra el odren en el que las ltears
etsan ersciats, la uicna csoa ipormtnate es que la pmrirea y la utlima ltera
esetn ecsritas en la psiocion cocrrtea. El rsteo peuden etsar ttaolmntee mal y
aun asi pordas lelelo sin pobrleams. Etso es pquoreno lemeos cada ltera por si
msima, snio la paalbra en un tdoo"
Si ha podido usted comprender el párrafo anterior, ha hecho usted un buen
trabajo de corrección de errores. Para un ser humano, resulta tan sencillo que
puede leerlo hasta un niño de seis años (he hecho la prueba con uno). Eso
también nos dice que el lenguaje es redundante. Textos incorrectos o mutilados
pueden comprenderse con relativa facilidad. Si han visto a algún joven enviar
mensajes por móvil del estilo "kdams a ls 7 en l br, bsos, tq" sabrán a lo que
me refiero.
La redundancia y la existencia de patrones en el lenguaje es uno de los
elementos que hacen tan difícil cifrar mensajes bien. ¿Podemos cuantificar
matemáticamente esa redundancia? O dicho de otro modo, ¿hay algún modo de
aplicar técnicas de análisis estadístico para, de alguna forma, determinar cuán
redundante es un idioma? Este, y otros problemas similares, fueron resueltos por
Claude Shannon en dos artículos ya clásicos de 1947 y 1948, mientras trabajaba
en los laboratorios Bell.
El primero de esos artículos se titula "Teoría matemática de la comunicación", y
veremos algo de él en el presente artículo. En él, Shannon trató el problema de
cuantificar la información procedente de una fuente, ver qué pasa con él cuando
un mensaje es transmitido y cuáles son las consecuencias que se pueden extraer.
Puesto que esto tiene relación con la transmisión de información, la
codificación y la criptografía, nos resultan de especial interés aquí. Así que
prepárense para un baño matemático, en el entendido de que nos saltaremos los
escollos más áridos para centrarnos en los conceptos fundamentales.
Antes de lanzarnos a la piscina, hagamos algunos ejercicios de calentamiento.
Vamos a suponer el siguiente ejemplo. Estamos en un puesto de observación
meteorológica, y nuestra misión consiste en enviar mensajes acerca del estado
del tiempo. Para simplificar, vamos a suponer tan sólo cuatro estados del
tiempo: soleado, nublado, lluvioso y con niebla. Pero estamos en un lugar remoto
y solamente tenemos una línea telegráfica por la que transmitir mensajes.
Olvidemos el código Morse por un momento, y limitémonos a mensajes formados por
elementos binarios (1= señal, 0= no señal). Si los cuatro estados del tiempo son
igualmente probables, podemos realizar el siguiente tipo de codificación:
Soleado = 00, Nublado = 01, Lluvioso = 10, Con niebla = 11
Es decir, una codificación en forma de dos elementos binarios o bits. Cada
mensaje consta de dos bits. De esa forma, un mensaje semanal que indicase
"soleado, niebla, niebla, nublado" se transmitiría como 00111101.
Esto sería bastante bueno si los cuatro fenómenos meteorológicos fuesen
equiprobables. Pero imaginemos que no lo sea. Supongamos que las probabilidades
fuesen: 50% para la niebla, 25% para el sol, 12.5% para las nubes y otro tanto
para la lluvia. En ese caso, podemos imaginarnos otros tipos de codificación más
eficaces, esto es, que nos permitan reducir el número de bits que necesitamos.
He aquí uno de tales códigos:
Soleado = 10, Nublado = 110, Lluvioso = 1110, Niebla = 0
Veamos que este código es más eficiente. De cada mil mensajes, tendremos en
promedio 500 veces "niebla" (500*1=500 bits en total), 250 "soleado" (250*2=500
bits), 125 "nubes" (125*3=375 bits) y 125 "lluvia" (125*4=500 bits). El número
total de bits que hemos empleado es, sumando, 500+500+375+500=1875 bits. En el
primer código hubiéramos necesitado 2000 bits. Es decir, codificando el evento
más probable con un menor número de bits, hemos conseguido un código que es un
6% más eficiente y nos permitirá, en promedio, transmitir la misma información
un 6% más rápido. Esto podemos hacerlo porque nos apoyamos en el hecho de que
los sucesos no tienen todos la misma probabilidad. Y seguro que hay otros
procedimientos de codificación aún más eficaces.
Antes de tirarnos a la piscina, voy a poner otro ejemplo que he robado
descaradamente a Manuel Lucena (cuyo libro, "Criptografía y seguridad en
computadores", les recomiendo). Supongamos una bolsa con una bola blanca y nueve
bolas negras. Evidentemente, la probabilidad de sacar una bola y que sea la
blanca es de 1/10, y la de sacar una negra es de 9/10. Pero supongamos que yo
les digo que he sacado una bola, y que esa bola es negra. ¿Cuánta información
les he proporcionado? La verdad, no mucha, porque es algo que cabía esperar con
una probabilidad alta. Sin embargo, si lo que he sacado es la bola blanca, esa
información es mayor, puesto que era poco probable que la bola fuese blanca. Y
si ya he sacado la bola blanca, ¿qué información les daré si les digo que he
vuelto a meter la mano en la bolsa y he sacado la bola negra? Ninguna, porque si
la bola blanca ya está fuera, forzosamente cualquier bola posterior será negra.
Según lo explica Lucena, podemos fijarnos en la cantidad de información como una
medida de la disminución de incertidumbre acerca de un suceso. Si le digo, por
ejemplo, que la lotería le ha tocado a alguien en algún lugar, eso y nada es lo
mismo, la incertidumbre es grande y la información es poca. Pero si les digo el
nombre de la persona a la que le ha tocado la lotería, dónde vive y cuántas
hijas solteras tiene, la incertidumbre desaparece y la información transmitida
es mucho mayor. Es decir, la información que obtenemos de un suceso es un
resultado de la disminución en la incertidumbre, y está relacionada con la
probabilidad de que éste suceda
Bien, pues vamos a intentar construir alguna función matemática que nos lo
represente. Vamos a suponer que tenemos N sucesos posibles, y que el suceso i
(i=1,2...N) tiene una probabilidad Pi de que suceda, de forma que P1+P2+...+PN =
1. Queremos una función H(P1,P2...PN) que nos represente la incertidumbre
asociada al resultado final. Según Shannon, deberíamos exigir una serie de
propiedades a H, por ejemplo, que cuando las probabilidades Pi sean todas
iguales, entonces H aumente con N. Nos vamos a saltar la letra pequeña para ir
directamente al grano.
Para un suceso i, que tiene una probabilidad Pi de que suceda, diremos que hemos
recibido I(i)=-Log(Pi) unidades de información (recuerden que seguimos usando
logaritmos en base 2). Como la probabilidad de que suceda dicho suceso es Pi, la
cantidad de información PROMEDIO que nos da el suceso i es Pi*I(i), o lo que es
lo mismo, -Pi*Log(Pi). Y si sumamos la cantidad de información media de todos
los sucesos i obtendremos la cantidad de información promedio que nos da el
conjunto de N sucesos:
H = -P1*Log(P1)-P2*Log(P2)-P3*Log(P(3)-...-PN*Log(PN).
A esa cantidad la llamaremos ENTROPÍA. Hablando coloquialmente, viene a darnos
una idea del número medio de bits necesarios para codificar cada uno de los
estados posibles de un suceso. Puesto que el logaritmo de un número positivo
menor que la unidad es negativo, la entropía definida así tiene un valor cero o
positivo.
Vamos a calcularla con un par de ejemplos. En primer lugar, el ejemplo
meteorológico primero. El suceso 1 será "soleado", el 2 será "nublado", el 3
será "lluvioso" y el 4 será "con niebla". Vamos a usar logaritmos en base 2. En
el caso de que los cuatro sucesos sean equiprobables, P1=P2=P3=P4=1/4. Eso
significa que cada suceso tiene -Log(1/4) = 2 unidades de información
(bits), y nos da una información promedio de (1/4)*2 = 1/2 bit. Dicho de otra
forma: cada suceso tiene 2 bits y sucede una vez de cada cuatro, así que
obtenemos 0.5 bits por suceso cada vez que sale. La entropía del sistema sería H
=4*(1/2) = 2 bits.
Ahora, el segundo ejemplo meteorológico. Los cuatro sucesos (soleado, nublado,
lluvioso, con niebla) tienen probabilidades distintas, lo que nos da esto:
SUCESO PROBABILIDAD Información
media
-Pi*Log(Pi)
Soleado 1/4
0.5
Nublado 1/8
0.375
Lluvioso 1/8
0.375
Niebla 1/2
0.5
La suma de la columna de la derecha nos da la entropía, que en este caso es de
1.75 bits. Antes las probabilidades eran iguales y obteníamos 2 bits de
entropía; ahora, el sistema tiene probabilidades distintas y la entropía es algo
menor.
Un nuevo ejemplo. Supongamos que lanzamos una moneda al aire. La probabilidad de
sacar cara y la de sacar cruz es la misma, 0.5. La entropía es
H=-[0.5*Log(0.5)+0.5*Log(0.5)] = 1 unidad de información.
Pero supongamos que la moneda está "trucada", de forma que sacamos cara el 60%
de las veces y cruz el 40% restante. Ahora la entropía es
H=-[0.6*Log(0.6)+0.4*Log(0.4)] = 0.970
Truquemos la moneda hasta el límite: 99.9% de probabilidades para cara, 0.1%
para cruz. H= [0.999*Log(0.999)+0.001*Log(0.001)] = 0.011.
Nuevamente, cuando las probabilidades no son iguales, la entropía baja. Fíjense
que, cuando teníamos la probabilidad 50-50, tanto podía salir cara como cruz, la
incertidumbre era alta y el sistema no nos daba mucha información porque no
sabemos qué va a salir. Sin embargo, en el caso del trucaje al 99.9%, solamente
obtendremos de promedio una cruz por cada 999 caras, de forma que la información
obtenida al obtener cara es escasa. Cuando sale cruz, la información es alta (es
algo que no nos esperábamos), pero la probabilidad de que suceda es muy baja,
así que en promedio tenemos poca incertidumbre, mucha información sobre el
sistema (sale cara casi siempre) y baja entropía.
En realidad, siempre se tiene el siguiente resultado: si la probabilidad de un
determinado suceso tiende a uno (y la de los demás, por consecuencia, tiende
hacia cero), la entropía tiende hacia cero. En un sistema con entropía cero,
sólo puede darse un suceso ya que los demás no tienen probabilidad alguna de
suceder. Esto es un resultado general, válido para cualquier número de posibles
sucesos.
Como vemos, cuanto menor sea la entropía, menor será la incertidumbre (y mayor
la información) sobre el sistema. Eso significa que esa cantidad llamada
entropía nos da una medida de la información que sabemos del sistema a partir de
las probabilidades de los sucesos. En realidad, esa cantidad H que hemos
definido (una suma de productos Pi*Log(Pi) ) aparece en cálculos de mecánica
estadística y representa estados de probabilidad. Los estados termodinámicos de
baja probabilidad son precisamente aquellos a los que se asocia valores cada vez
más bajos de entropía, lo que permite asociar el concepto de entropía con el de
desorden. Los sistemas de alta entropía son los de mayor desorden. ¿O alguna vez
han visto ustedes a un niño ordenar espontáneamente su habitación? Lo normal es
lo contrario. De forma que llamar "entropía de información" a H es una
descripción bastante buena.
A estas alturas, vamos a interrumpir nuestro chapuzón en la piscina para
preguntarnos el por qué de todo este jaleo matemático. ¿Qué tiene todo esto que
ver con la criptografía? Pues bastante, como iremos viendo poco a poco. Porque
esos "sucesos" de los que hemos hablado hasta ahora han sido cosas como monedas
al aire, bolas de colores y similares. Pero podemos tomar una fuente de
información y considerar los elementos de información como sucesos. Podremos así
examinar la "entropía" asociada a un lenguaje estructurado, y también la de un
sistema cifrado.
Vamos, por ejemplo, a calcular la "entropía" asociada al lenguaje castellano.
Vamos a suponer un alfabeto de 26 letras (incluyendo la ñ pero sin la w). Lo
primero que necesitaríamos es conocer con qué probabilidad cada letra aparecen
en un texto por término medio. Ya hablamos de las frecuencias del lenguaje en el
Boletín ENIGMA 32 ("Frecuencias y coincidencias"). Tomemos la distribución de
frecuencias calculadas por Joaquín García Carmona. Según él, la probabilidad de
obtener una letra a es P(a)=0.119; la de b es P(b)=0.011, la de c es P(c)=0.048,
P(d)=0.05, P(e)=0.146 y así hasta la z. Un poquito de cálculo nos muestra algo
así:
LETRA
PROBABILIDAD -P*Log(P)
a
0.119 0.3655
b
0.011 0.0716
c
0.048 0.2103
d
0.050 0.2161
e
0.146 0.4053
... y cortamos aquí por motivos de espacio. Pero si lo hiciésemos para las 26
letras del alfabeto, la suma de los términos de la última columna nos daría una
entropía de H=3.99 bits/letra. Si usted se encuentra otras frecuencias de letras
en otro libro, saldrá una entropía levemente diferente. También dependerá,
naturalmente, del idioma en cuestión. Un librito que tengo encima de la mesa,
titulado "Teoría de la información y codificación", escrito por Norman Abramson,
da una entropía de 4.03 bits/símbolo para el idioma inglés. En ese caso no
aparece la ñ pero sí la w. Y en ninguno de los dos casos consideraremos el
efecto del espacio entre palabras, que si bien no es propiamente una letra sí
constituye un "signo" que hay que tener en cuenta en algunas situaciones.
Por contra, supongamos que tenemos un lenguaje no estructurado, compuesto por 26
símbolos con idéntica probabilidad. Este es el caso de un mono tecleando una
máquina de escribir de forma totalmente aleatoria. También, y esto nos interesa,
se correspondería con un mensaje cifrado de forma perfecta. En este caso, la
probabilidad de cada una de las 26 letras es de 1/26, con lo que su entropía
sería -26*(1/26)*Log(1/26), lo que equivale a Log(26)=4.7 bits/símbolo. Es
decir, un batiburrillo de letras tomadas al azar contiene más entropía, y por lo
tanto mayor incertidumbre (y menos información), que un lenguaje como el español
o el inglés.
Volviendo al caso del español, el hecho de que su entropía sea menor que la del
batiburrillo aleatorio significa que está estructurado. Pero aquí hemos
aprovechado tan sólo la información relativa a la frecuencia relativa de las
letras, no la forma en que éstas aparecen. Para que lo vean, he aquí un ejemplo.
Supongamos que leemos un texto en español y aparecen las letras QU. Pregunta,
¿cuál es la probabilidad de que la siguiente letra sea la A? Si fuésemos a
"piñón fijo" mirando la tabla de frecuencias de letras, diríamos que es del
11.9%, ¿no?. Sin embargo, la probabilidad real es CERO. Piénsenlo un poco. ¿Qué
palabra conocen ustedes en español que contenga las letras QUA en ese orden? Que
yo recuerde, ninguna. En español, a las letras QU solamente le siguen la E o la
I.
Es decir, la probabilidad de que una letra determinada aparezca en el texto no
depende solamente de la probabilidad de dicha letra en el idioma, sino que
también depende de las letras que han salido antes. Eso contrasta con lanzar una
moneda al aire, donde la probabilidad de que salga cara sigue siendo la misma
independientemente de cuántos lanzamientos hayamos hecho antes, o de qué haya
salido antes. Tenemos, por tanto, que perfeccionar la entropía para que nos sea
de utilidad. Pero eso lo haremos en el próximo chapuzón.
CRIPTOGRAFÍA HISTÓRICA - Rommel y su "espía" americano
En
las crónicas sobre la criptología de la Segunda Guerra Mundial, las hazañas de
los aliados forman la parte del león. A lo largo de decenas de libros e
incontables artículos y conferencias (por no hablar de este vuestro Boletín) se
han narrado los éxitos de polacos, ingleses y norteamericanos en el descifrado
de mensajes alemanes. Cierto es que tan sólo la ruptura de Enigma supuso una
ventaja equivalente a la de ejércitos enteros, pero ¿qué pasa con los logros
criptoanalíticos del Eje? Existieron, ciertamente, y lograron algunas ventajas
notables para Hitler.
Sin embargo, existe todavía una escasez de noticias al respecto. Algunos han
llegado a creer que la mentalidad alemana esa incapaz de asimilar que una cifra
supuestamente perfecta pudiera ser rota. Otros apuntan a rivalidades entre los
departamentos responsables del Tercer Reich. O, sencillamente, puede ser que la
historia alemana esté aún esperando ser contada y que más de una sorpresa
duerman todavía en los archivos. En tanto que eso ocurra, vamos a recordar un
hecho de armas que favoreció a los alemanes. Más concretamente, a uno de los
generales más famosos y brillantes del ejército aleman: Erwin Rommel. La
narración que sigue se basa en el libro Codebreakers y algunas fuentes menores.
Nos encontramos en el otoño de 1941. Los ejércitos alemanes avanzan por Rusia y
el Norte de África, amenazando con redondear su serie de victorias y convertir
Europa y el Mediterráneo en territorios alemanes. En aquellos momentos, la
ofensiva británica había expulsado a Rommel de Libia y éste se encontraba a la
defensiva. Sin embargo, contaba con una fuente de primer orden que le ayudaría
en la contraofensiva que estaba preparando. Esta fuente era de origen americano,
y no era resultado de una traición o un soborno. La "fuente" hacía su trabajo de
forma honrada, sin saber que con ello estaba ayudando al comandante del Afrika
Korps.
El nombre de la fuente es Bonner Frank Fellers, y era coronel del ejército
norteamericano. En aquella época estaba destinado en El Cairo como agregado
militar, con la misión evidente de verlo todo, anotarlo todo e informar de todo.
Aunque entonces Estados Unidos todavía no había entrado en guerra, los
británicos le introducían en sus círculos íntimos y le revelaban sus secretos,
quizá con la esperanza de que el Tío Sam les proporcionase más material bélico y
ayuda económica. Fellers disponía de información de primera mano, material que
hubiera supuesto una gran ventaja a los alemanes.
Fellers enviaba sus informes cifrados, para lo cual usaba el llamado código
Black (Negro). Se trataba de un código reciente, creado para los agregados
militares y que también puede que fuese usado por algunos embajadores. Por
desgracia para los americanos,Black fue robado en la embajada americana en Roma
por el Servicio de Información Militar (SIM) italiano. La fecha del robo no está
muy clara. Según David Alvarez, la historia oficial del servicio de inteligencia
italiano da la fecha inmediatamente anterior a la declaración de guerra contra
Estados Unidos, hacia diciembre de 1941. Sin embargo, parece ser que en Agosto
el SIM había obtenido algunas claves norteamericanas, incluida la Black, en
Agosto o septiembre. El propio ministro de Asuntos Exteriores italiano, conde
Ciano, escribía en su diario: "... el SIM se ha apoderado de la clave secreta
americana y todo lo que [el embajador de EEUU] Philips telegrafía es descifrado
por nuestra oficina".
En cualquier caso, los italianos tardaron poco en compartir su descubrimiento
con sus amigos alemanes. De esa forma, los mensajes transmitidos por Fellers
eran diligentemente captados por los alemanes, descifrados y transmitidos (bajo
clave alemana, naturalmente) a Rommel. Ayudado con estos nuevos datos, el Zorro
lanzó un contra-contraataque el 21 de Enero de 1942. Durante su avance, que
recuperó para el Eje más de 500 kilómetros en algo más de dos semanas, Fellers
transmitía información de gran precisión y valor táctico. Por ejemplo, tan sólo
dos días después de comenzada la ofensiva, Fellers informó que 270 aviones
estaban siendo retirado del Norte de África para reforzar a las fuerzas
británicas en el Lejano Oriente. Seis días después llegaba una lista exhaustiva
de las unidades blindadas británicas: número, daños, ubicaciones, grado de
eficiencia. En otra ocasión, Fellers causó un gran sobresalto a los alemanes, al
informar de un envío de gasolina. Los alemanes, al parecer, ignoraban que los
norteamericanos llaman "gas" a la gasolina, así que leyeron el mensaje y
pensaron que los americanos se preparaban !para un ataque con armas químicas!
Evidentemente, no fue tan sólo la información de Fellers la que llevó a Rommer
hasta la frontera con Egipto. No le llamaban el Zorro del Desierto por nada.
Pero es innegable que la información que recibía aumentó la efectividad de sus
fuerzas y le permitió optimizar sus esfuerzos. También le libró de más de un
contratiempo. En Junio, por ejemplo, los británicos realizaron un gran esfuerzo
por cortar las líneas de suministros alemanas. En la noche del 12 al 13,
unidades de sabotaje fueron enviadas por aire y tierra para neutralizar los
aeródromos alemanes mientras una fuerza marítima atacaba la base de la armada
italiana en Tarento. Sin embargo, el bocazas de Fellers envió un mensaje a
Washington que fue interceptado y descifrado por los alemanes. Como resultado,
los comandos enviados contra los aeródromos cayeron en una emboscada y fueron
aniquiladas. Los aviones que iban a sabotear apenas sufrieron daños, y al día
siguiente lanzaron duros ataques contra los convoyes británicos. Hundieron tres
destructores y dos mercantes, a añadir a otro crucero hundido por un submarino.
La operación contra Tarento fue suspendida. Sólo dos buques mercantes
consiguieron llegar a la asediada Malta hasta el mes de Noviembre. El eslógan de
guerra "el desliz del labio puede hundir un buque" ("a slip of the lip can sink
a ship") nunca fue tan literalmente cierto como entonces.
Es posible que el mensaje de Fellers, número 11.119, haya sido uno de los más
perjudiciales para el esfuerzo de guerra aliado. De haber tenido éxito la
operación aliada, las líneas de suministros entre Europa y el Norte de África
podrían haber quedado seriamente dañadas, los carros alemanes habrían sido
privados del combustible que tan desesperadamente necesitaban y Rommel hubiera
tenido que ponerse a la defensiva. En vez de ello, al Afrika Korps se supo en
movimiento con el objetivo de tomar El Cairo y expulsar a los aliados de Egipto
de una vez por todas.
Sin embargo, la suerte estaba a punto de cambiar. Ya en Febrero de 1942,
Churchill informó a Roosevelt de que los criptoanalistas británicos habrían
logrado éxitos parciales contra algunas cifras usadas por el Cuerpo Diplomático
de EEUU. Hacia Junio, los británicos estaban descifrando mensajes Enigma que
contenían referencias a los informes de Fellers, e informaron a los
estadounidenses de que sus códigos del El Cairo habían sido comprometidos.
Algunos de los mensajes captados por los británicos resultaban embarazosos en
extremo. En uno de ellos, Fellers indicaba el mal estado de las defensas
británicas y predecía de que Rommel podría tomar fácilmente el delta del Nilo en
una ofensiva. ¿Influyó esa noticia sobre el Zorro? Teniendo en cuanta de que eso
fue exactamente fue lo que hizo, resulta como menos curioso.
Para complicar más las cosas, dentro de los servicios de inteligencia británicos
había quienes se olían juego sucio, pero no por parte alemana sino americana.
Hubo quien pensó que los ingleses no estaban leyendo los mensajes alemanes
relativos a los informes de Fellers, sino esos mismos informes directamente.
¿Estaban los británicos espiando a los norteamericanos? Parece que no, pero hubo
quien no estaba muy convencido. Incluso circuló la teoría de que todo era un
retorcido plan británico para poder echarle mano a la máquina de cifrar SIGABA,
que los norteamericanos se negaban a compartir con sus aliados. En cualquier
caso, una SIGABA fue rápidamente despachada al El Cairo para asegurar las
comunicaciones allí, y Fellers fue reclamada por Washington.
Las consecuencias no pudieron ser peores para Rommel. En el momento en que
preparaba lo que podía ser su ofensiva final, con escasez de combustible y
material, la ventana de información se había cerrado. La derrota de El Alamein
ha sido bien estudiada, y no puede justificarse por el hecho de que Fellers
hubiera cerrado el pico. Rommel estaba en inferioridad numérica y material, hubo
de enfrentarse a una aviación enemiga poderosa, profundos campos de minas y el
agotamiento de sus hombres. Sus pérdidas no podían ser repuestas con la rapidez
con que lo hacían los británicos. En suma, era el canto del cisne para el Afrika
Korps, con o sin la ayuda de Fellers.
Con todo, es indudable que la ausencia de los informes de Fellers perjudicó a
Rommel en el momento más crítico. Sin conocer la situación precisa o el estado
de las fuerzas enemigas, su capacidad para defenderse o atacar se redujo. Los
británicos, mientras tanto, habían reforzado su 8º Ejército con tanques y
artillería. La sorpresa obtenida por los británicos fue tal que, en el momento
del ataque, Rommel estaba en Alemania, donde había viajado por cuestiones de
salud. Regresó rápidamente a África, tan sólo para recoger los restos de su
ejército. En esta ocasión, los aliados habían conseguido la sorpresa y con ella
la victoria.
Teniendo el cuenta el daño que sus informes hicieron a la causa aliada, resulta
curioso que el coronel Fellers no diese con sus huesos en un penal militar.
Aunque pensándolo bien, hay que reconocer que se limitó a hacer su trabajo, y lo
hizo (para desgracia de su propio bando) muy bien. Pocos meses después, de
hecho, se le concedió la Medalla de Servicios Distinguidos por su labor como
agregado militar, citando que
"sus informes al Departamento de Guerra fueron modelos de claridad y precisión".
Seguro que hasta el Zorro de Desierto estaría de acuerdo con tal afirmación.
TEMAS DE ACTUALIDAD - jHashCalc, herramienta para funciones hash
En
diversos boletines hemos hablado de las funciones resumen o hash, tan útiles
para "destilar" mensajes de cara a una firma digital. Justo el mes pasado el
Boletín ENIGMA 54 recogió el reto lanzado por una universidad austríaca para
buscar colisiones en SHA-1, uno de los algoritmos hash más usados.
Por supuesto, SHA-1 no es el único algoritmo de su clase usado. Hay muchos por
ahí. Y seguro que, después de inventar un algoritmo de cifrado, el siguiente
paso de un afectado por el criptobacillus enigmaticus, mutación programadora,
sería hacer una función que calculase el hash de un mensaje. Dicho y hecho, y
seguro que hay muchos programas disponibles en Internet.
Sin embargo, a uno de nuestros lectores habituales le ha sabido a poco. Por un
lado, como él dice, programas como el HashCalc son software privativo (es decir,
con derechos de copia). Por otro, cuando nos salimos del entorno Windows la
disponibilidad de software de hash no es tan alta. Así que, ni corto ni
perezoso, nuestro colaborador Death Master se ha sacado de la manga jHashCalc,
una implementación en software libre en entorno Java.
jHashCalc permite obtener el valor de once funciones de hash simultáneamente,
desde el vetusto MD2, pasando por SHA-1, hasta algunos poco conocidos del
público como Tiger o Whirlpool. Por supuesto, no aconsejo a nadie que emplee
funciones hash como el MD2 o MD4 para aplicaciones de alta seguridad, pero
resulta interesante tener un programa que los incorpore. También incluye
variaciones del algoritmo SHA, desde el propio SHA-1 hasta SHA-512, lo que
considero muy valioso vistos los últimos ataques contra SHA-1 que sugieren el
cambio a funciones SHA con mayor número de bits.
Todos los lectores interesados en descargaros el programa lo tenéis disponible
en
http://omniumpotentior.wordpress.com/software/ y también en la sección "Caja
de Herramientas" de vuestro Taller de Criptografía. También podréis leer
comentarios de su autor en:
http://omniumpotentior.wordpress.com/2007/10/01/jhashcalc-implementacion-libre-de-hashcalc/
Por cierto, que Death Master ha confesado haber hecho un "Taller de
Criptografía" para la Campus Party 2007. Quede claro que yo no tengo nada que
ver con eso, así que las medallas sean para su legítimo dueño. Si yo fuera un
directivo de la SGAE, ya le habría denunciado como un centenar y medio de veces.
Pero bueno, luego nos regala perlas como jHashCalc y se le perdona todo.
Disfrutad del programa, y no olvidéis enviar vuestros comentarios al Boletín y a
la web del autor, que os espera en
http://omniumpotentior.wordpress.com/
LIBERTAD VIGILADA - El Parlamento Europeo, alarmado
[Extraído del libro
"Libertad Vigilada", de Nacho García Mostazo, con permiso del autor]
Segunda parte, capítulo 22:
La agenda política del Parlamento Europeo suele prepararse
con mucha antelación. Una organización política de carácter burocrático y
multinacional, como es su caso, necesita trabajarcon previsión para coordinar
sus actividades. A mediados de 1997, los funcionarios de la Eurocámara ya tenían
listo un borrador con el plan de sesiones para el curso político que se
iniciaría en septiembre de 1998. Entre otros, se iba a celebrar un debate sobre
la vigilancia electrónica y las tecnologías de control político. La Comisión de
Libertades Públicas y Asuntos de Interior del Parlamento sería la encargada de
exponer el temaante el Pleno, pero los eurodiputados no conocían en profundidad
en área tan compleja, así que la Oficina del Programa de Evaluación de Opciones
Científicas y Tecnológicas (Scientific and Technological Options Assessment,
STOA), un servicio de la Dirección General de Estudios del Parlamento Europeo,
encargó un informe sobre este controvertido asunto a la Fundación Omega de
Manchester, en el Reino Unido. El objetivo era documentar a los diputados
europeos a propósito del uso que se da actualmente a las tecnologías aplicadas
al espionaje.
Bajo el título "Evaluación de las Tecnologías de Control Político", el borrador
del primer informe de la Fundación Omega se presentó al grupo STOA el 18 de
diciembre de 1997 y la Comisión de Libertades Públicas el 27 de enero de 1998.
El doctor Steve Wright, autor del mismo, explicaba a los europarlamentarios que
"la tecnología de vigilancia puede definirse como los dispositivos o sistemas
que pueden vigilar, seguir y evaluar los movimientos de personas, sus
propiedades, etc. Gran parte de esta tecnología se utiliza para seguir las
actividades de disidentes, activistas por los derechos humanos, periodistas,
dirigentes estudiantiles, minorías, dirigentes sindicales y opositores
políticos". Estos avances, "concebidos en principio para los sectores de defensa
y espionaje, se han expandido rápidamente tras la Guerra Fría a las autoridades
policiales y aduaneras, así como al sector privado". [1]
El informe de la Fundación Omega advertía sobre todo del uso de las nuevas
tecnologías del espionaje en regímenes autoritarios, como en el caso de China,
que usó las cámaras de control del tráfico urbano instaladas en la plaza de
Tiananmen con fines represivos. Según el documento, "después de la matanza de
estudiantes de 1989, se produjo una caza de brujas en la que las autoridades
torturaron e interrogaron a miles de personas para localizar a los subversivos.
El sistema de vigilancia 'Scoot', con cámaras 'Pelco' fabricadas en Estados
Unidos, se utilizó para grabar fielmente las protestas. Las imágenes se
emitieron repetidamente por la televisión china, ofreciendo una recompensa por
la
información, con el resultado de que se identificó a casi todos los
transgresores".
Aunque hay acuerdos internacionales para restringir la exportación de tecnología
que pueda considerarse de "doble uso" a determinados países, sobre todo a
regímenes dictatoriales, el doctor Wright afirmaba que, sorprendentemente,
"empresas extranjeras exportan sistemas de control del tráfico a Lhasa, en el
Tíbet, aunque en Lhasa no existan aún problemas [...] de tráfico". Como se
deduce de sus palabras, las cámaras mencionadas no servirían precisamente para
controlar el tráfico rodado, sino para vigilar las calles en una región donde el
nacionalismo está en plena ebullición. El documento de la Fundación Omega
subrayaba que, en estos casos "el problema puede que consista en una culpable
falta de imaginación" por parte de los vendedores, que no pensaron que sus
cámaras podrían utilizarse con otros fines que aquellos para los que fueron
diseñadas. "Una vez más, la responsabilidad democrática es el único criterio que
distingue a un moderno sistema de control del tráfico", en principio inofensivo,
"de una tecnología avanzada para la captura de disidentes", afirmaba el doctor
Wright en su informe.
Los parlamentarios europeos también pudieron ver otros ejemplos concretos de
tecnologías avanzadas que estarían utilizándose actualmente para el control
político, como "los anteojos de visión nocturna, los micrófonos parabólicos para
detectar conversaciones a más de un kilómetro de distancia" o los micrófonos
láser, "que pueden detectar cualquier conversación" enfocando a una "ventana
cerrada situada en la línea de visión". Asimismo, el informe mencionaba "la
cámara estroboscópica danesa Jai, que puede registrar centenares de imágenes en
cuestión de seguidos y fotografiar de forma individual a todos los participantes
en una manifestación o marcha", o a las técnicas "de reconocimiento automático
de vehículos, que pueden seguir coches por toda una ciudad mediante un sistema
cartográfico". Sobre los dispositivos de escucha y grabación, el informe de la
Fundación Omega afirmaba que "la colocación de micrófonos ilegales es una
tecnología del pasado", ya que "los espías modernos pueden comprar ordenadores
portátiles adaptados especialmente y sintonizar con facilidad todos los
teléfonos móviles en funcionamiento (a su alrededor) simplemente colocando el
cursos sobre el número. La máquina puede incluso buscar números 'de interés' y
comprobar si están activos". Esta definición concreta se puede asimilar a los
ordenadores del modelo "ELVIRA" fabricados por AST y mencionados con
anterioridad.
Pero lo que más llamó la atención de los europarlamentarios fue el epígrafe
dedicado a la red "Echelon". Basándose sobre todo en el libro Secret Power, de
Nicky Hager, el doctor Wright explicaba que "todas las comunicaciones por correo
electrónico, teléfono y fax son interceptadas como cuestión de rutina por la
Agencia de Seguridad Nacional de los Estados Unidos". También subrayaba que "Echelon"
está diseñado "para objetivos fundamentalmente no militares: gobiernos,
organizaciones y empresas en prácticamente todos los países". Al mencionar la
"relación especial" que une el Reino Unido con Estados Unidos para operar "Echelon",
el documento detallaba cómo esta situación es "incompatible con sus obligaciones
en virtud del Tratado de Maastricht, cuyo Título V establece que 'los Estados
miembros se informarán mutuamente y se concertarán en el seno del Consejo sobre
cualquier cuestíón de política exterior y de seguridad que revista un interés
general, a fin de garantizar que su influencia combinada se ejerza del modo más
eficaz mediante una acción concertada y convergente". Sin embargo -afirmaba el
doctor Wright-, el Reino Unido no puede consultar abiertamente a sus socios
europeos" por su integración en el pacto UKUSA.
La Oficina STOA del Parlamento Europeo elaboró un resumen posterior del mismo
documento donde revela la sorpresa de los eurodiputados: "Aunque nadie negó la
utilidad de tales redes (de espionaje) en las operaciones antiterroristas y la
lucha contra el tráfico de drogas, el blanqueo de dinero y el tráfico de armas,
se manifestó la alarma por la escala de la red extranjera de interceptación
identificada en el estudio, y por si la legislación y salvaguardias en cuanto a
la protección de datos y de la intimidad existentes en los Estados miembros
serían suficientes para proteger la confidencialidad entre los ciudadanos y
empresas de la UE, y de éstos con los terceros países", afirmaba. [2]
El documento elaborado por la Fundación Omega era simplemente un borrador de
trabajo donde el propio doctor Wright aconsejaba al Parlamento Europeo que
encargase informes más detallados. La Comisión de Libertades Públicas y Asuntos
de Interior de la Eurocámara siguió su consejo y pidió a la Oficina STOA nuevos
estudios sobre las tecnologías de vigilancia aplicadas al control político. Un
año más tarde se presentaron cinco voluminosos documentos incluidos en un solo
informe titulado "Desarrollo de la Tecnología de Vigilancia y Riesgos del Uso
Indebido de la Información Económica". El grupo STOA seleccionó al escocés
Duncan Campbell para elaborar el volumen 2/5, titulado "Capacidades de
Interceptación en 2000". Físico y periodista, Campbell se había destacado desde
1988 como el principal investigador sobre
"Echelon" en todo el mundo, como ya hemos podido comprobar con anterioridad. Su
informe se presentó en el Parlamento Europeo el 22 de febrero de 2000, en una
sesión abierta a los medios de comunicación. Durante dos horas, Duncan Campbell
explicó detalladamente las cualidades del sistema "Echelon", aportando pruebas y
testimonios que no dejaban lugar a dudas sobre la existencia de una red mundial
de espionaje de las telecomunicaciones. [3]
[1]. Doctor Steve Wright, "An Appraisal of Technologies for Political Control"
("Evaluación de las Tecnologías para el Control Político"). Fundación Omega.
Londres, 1997. Documento PE 166.499.
[2]. Grupo STOA, "Evaluación de las Tecnologías de Control Político". Estudio
Provisional. Resumen Ejecutivo. Septiembre de 1998. STOA Publications.
Parlamento Europeo.
[3]. Duncan Campbell, "Interception Capabilities 2000". Op. cit.
El boletín ENIGMA es una publicación gratuita del Taller de
Criptografía, y se rige por las normas de la licencia de Creative Commons
Reconocimiento-NoComercial-CompartirIgual. Se permite su libre copia,
distribución y comunicación para fines no lucrativos, citando nombre y
referencia.
Para más información, véase la licencia Creative Commons en sus formas reducida
y completa:
http://www.cripto.es/licencia/deed.es.htm
http://creativecommons.org/licenses/by-nc-sa/2.5/es/legalcode.es
PARA DARSE DE ALTA: envíe un mensaje a la dirección alta arroba cripto.es
añadiendo las palabras alta_enigma en el asunto (subject).
PARA DARSE DE BAJA, envíe un mensaje a la dirección baja arroba cripto.es
añadiendo las palabras baja_enigma en el asunto (subject)
Para comentarios a este boletín (dudas, preguntas, consultas, críticas,
noticias, colaboraciones, etc.), estoy a su disposición en la dirección
noticias arroba cripto.es
Página del Boletín Enigma (incluyendo números atrasados):
http://www.cripto.es/enigma.htm
(c) Arturo Quirantes 2007
Vuelta a la Página principal del Boletín ENIGMA