che-fidel_lq.jpg

Cuando en 1967 Ernesto Ché Guevera fue capturado y ejecutado en Bolivia llevaba –según la biografía de Daniel James– lo que se conoce como un "cuaderno de un solo uso" o "libreta de uso único" (en inglés One-Time Pad, OTP). Se trata de una libreta de claves que servía para cifrar y descifrar mensajes secretos que intercambiaba con otras personas que debían poseer, a su vez, una copia del OTP. Precisamente, este cuaderno sirvió para descifrar una comunicación que Guevara mandó a Fidel Castro pocos meses antes de morir. La imagen siguiente muestra el proceso de codificación del mensaje del Ché.

che.jpg

El cifrado de Vernam (1918) se basa en una clave numérica común que conocen sólo el emisor y el receptor. Dicha clave permite al emisor cifrar un mensaje y al receptor descifrarlo aplicando el proceso inverso. Si la clave sólo se utiliza una vez y es completamente aleatoria se puede demostrar matemáticamente que el mensaje no puede ser descifrado por una tercera persona y entonces al cifrado de Vernam se le llama "one-time pad". Ni las técnicas de criptoanálisis más modernas ni los ordenadores más potentes que podamos imaginar podrían descifrarlo. Por eso Claude Shannon, el padre de la Teoría de la Información (1948), lo definió como el "secreto perfecto". El tamaño de la clave ha de ser de al menos el tamaño del mensaje que se quiere transmitir y como para cada mensaje nuevo hay que usar una clave distinta, lo más cómodo es tener una libreta o cuaderno de claves de donde sacar una nueva cada vez. El emisor y el receptor tienen sendos cuadernos idénticos y basta indicar al principio del mensaje, antes de cifrarlo, la página del cuaderno donde hay que mirar la clave. Los OTP fueron usados desde los años 20 del siglo pasado por los servicios de inteligencia de diversos países, especialmente por los aliados durante la II Guerra Mundial y más tarde durante la Guerra Fría por la Unión Soviética.

Che-Guevara-and-Fidel-Castro.jpg

En la imagen de arriba de la codificación del mensaje del Ché las líneas verticales sólo sirven para dividir el mensaje en columnas de cinco números en aras de la claridad. El mensaje debe leerse de izquierda a derecha teniendo en cuenta que los números están agrupados en grupos de 3 filas como se aprecia claramente en la imagen. La primera de ellas es el mensaje sin cifrar ya convertido a números (que en principio sólo conocía Guevara), la segunda es la clave (conocida por Guevara y Castro, poseedores de sendas copias del OTP) y la tercera es el mensaje cifrado que se envió (conocido por cualquiera que interceptara el mensaje, fuera amigo o enemigo).

Esta tercera fila, o sea el mensaje cifrado, se obtiene de una manera muy sencilla en el método de Vernam. Si os fijáis bien en la imagen veréis que es simplemente la suma, dígito a dígito, de las dos filas anteriores. Así, los cinco primeros números de la imagen (mensaje sin cifrar, 06386) se transforman en 69140 porque:

0+6=6

6+3=9

3+8=11 → 1

8+6=14 → 4

6+4=10 → 0

Ya veis que sólo se pone la cifra de las unidades. Es lo que se llama una suma módulo 10. Cuando Castro recibía el mensaje cifrado (69140), lo único que tenía que hacer era restarle la segunda fila –que tenía en su réplica del OTP– para recuperar el mensaje original (06386). Así:

6-6=0

9-3=6

1-8 → 11-8=3

4-6 → 14-6=8

0-4 → 10-4=6

Cuando la resta no se puede calcular con números positivos, eso quiere decir que hay que añadir una decena al minuendo tal y como hacemos cuando restamos con llevadas. Estamos trabajando en módulo 10.

ernesto-che-guevara-59b-fidel-castro_lq.jpg

Pero antes de eso ya hemos indicado que hay que asignar primero un código numérico a cada letra del alfabeto. Podríamos hacer A=1, B=2, C=3, D=4, E=5, F=6, G=7... hasta Z=27. Sin embargo, esta conversión plantaría un problema grave ya que, por ejemplo, el código 271 podría interpretarse como 27-1 (o sea, ZA) o bien como 2-7-1 (o sea, BGA). Para evitar eso se puede asignar a cada letra siempre dos dígitos, por ejemplo: A=11, B=12, C=13... hasta Z=37. Así ya sabemos que las cadenas de números hay que separarlas de dos en dos dígitos para pasarlas a letras. Pero la conversión a números de Ché y Fidel era otra:

Leyendo la fila y la columna se saca la codificación de cada letra: A=6, B=38, C=32... Z=59. ¡Pero entonces mezclamos letras de uno y de dos dígitos de nuevo! Sí, aunque esta vez no pasa nada porque las letras de dos dígitos empiezan siempre por 3, 5 o 7, mientras que las de 1 dígito corresponden a los número 0, 2, 4, 8, 1. No hay confusión posible. Si el mensaje con números dice 676906323997682, entonces la única separación posible es 6 76 9 0 6 32 39 9 76 8 2, es decir, la palabra ANOTACIONES, de acuerdo a la tabla de arriba. En la conversión de esa tabla se han codificado además algunos signos de puntuación y se ha reservado las codificaciones 73 y 77 para indicar el cambio de letras a números. En los mensajes de guerrilla era común que aparecieran números (heridos, municiones, dinero...). En vez de deletrearlos era más fácil cambiar al "teclado numérico" con el código 73 y volver al "teclado alfabético" con el código 77 para seguir la frase.

¿Y por qué no es suficiente esta conversión numérica y enviar el mensaje así sin más, sin el cifrado de Vernam (lo de sumar la clave)? Pues porque aunque a priori el enemigo no conozca la tabla de conversión entre letras y números es relativamente sencillo sacarla mediante lo que se conoce en criptografía como un análisis de frecuencias. Basta observar qué números se repiten más y asociarlos a las letras de mayor frecuencia en el idioma del texto (en castellano las dos primeras letra son la E y la A, en ese orden). También sería fácil ir reconociendo sílabas comunes (por ejemplo EL, LA, CON, UN...). Con un ordenador moderno, en un abrir y cerrar de ojos podría romperse un mensaje de cierta extensión en el que a cada letra siempre se le asignaran los mismos números. Sin embargo, en el cifrado de Vernam una misma letra puede tomar distintos valores. Por ejemplo la palabra ANOTACIONES, que numéricamente hemos visto que es 676906323997682, se codificaría al sumarle la clave del cuaderno de uso único (en este caso es 234699362793411, como podéis encontrar en las segundas filas de la imagen de arriba si tenéis buena vista). Se obtiene así la encriptación 800595685680093, que es la serie de números que recibió Castro.

tabla2.png

Fijaos que el primer 6 (la primera A de ANOTACIONES) se ha codificado como un 8, mientras que el segundo 6 (la segunda A de ANOTACIONES) no se ha codificado como otro 8 sino como un 0. Por eso el cifrado de Vernam es tan bueno.

Pues igual que hemos visto para la palabra ANOTACIONES se puede ir haciendo con el resto del mensaje. Como en la imagen sólo hay un fragmento, os pongo mejor la versión que podéis consultar en el diario del Ché de Bolivia, hecho público por el gobierno cubano para evitar su comercialización por parte de EEUU. El principio del mensaje que allí aparece es:

Leche: Danton llevaba un mensaje además de ANOTACIONES para memorizar el informe que le di, todo en clave. Este es el mensaje. 1°) Llegaron Danton y Francisco; este no sabía la cantidad y dejó dinero en La Paz; pienso darle 30 y reservarle el resto para cuando se alce; tiene pocas condiciones físicas y de carácter para dirigir la guerrilla, pero eso es cosa de él. Danton debe salir, pero no sé si podrá dadas las circunstancias. 2°) Se descubrió la finca y el ejército nos persiguió; le dimos la primera paliza, pero estamos aislados. 3°) Iván está listo para viajar, pero Tania está aislada aquí, pues vino violando instrucciones y fue sorprendida por los acontecimientos. 4°) Ya tenemos suficiente Glucontime, no manden más. 5°) No hay noticias del trío, tampoco confío en ellos y han expulsado a la gente de la juventud que está con nosotros. 6°) Yo recibo todo por radio, pero es inútil si no lo comunican simultáneamente a La Paz, estamos aislados por ahora. 7°) Todavía no hemos recibido mensaje a través de Lasarre. 8°) Habría que parar la carta de despedida Danton hasta nuevo aviso trataremos viaje a Francia objeto formar red de apoyo. 9°) Hice contacto Pelado objeto organizar bases al sur y colectar argentinos, también está embotellado aquí. 10°) Supriman los envíos de embutidos, pues nos tomarán maletines preparados...

Por cierto, que sigue sin ser muy comprensible, ¿verdad? Eso es porque el lenguaje contiene expresiones acordadas previamente. Por ejemplo, LECHE se refiere a Fidel Castro y DANTON a Jules Régis Debray.

Como todo lo que rodea a la muerte de Ernesto Ché Guevara, el documento aquí transcrito no puede asegurarse veraz y hemos de conformarnos con las referencias bibliográficas que lo citan y la aparente verosimilitud del mensaje cifrado en el contexto histórico.

 

REFERENCIAS:

Daniel James. Che Guevara: A biography, Stein & Day. 1969

Craig p. Bauer. Secret History: The Story of Cryptology. Taylor and Francis Group, LLC. 2013

Tony Hey, Gyuri Pápay. The Computing Universe: A journey through revolution. Cambridge University Press. 2015

Diario del Ché en Bolivia: https://www.nodo50.org/cubasigloXXI/pensamiento/CheDiario_280210.pdf

http://www.caslab.cl/che.php (contiene errores de decodificación)

 http://serdis.dis.ulpgc.es/~ii-cript/PAGINA%20WEB%20CLASICA/CRIPTPLOGIA/CIFRADO%20ONE-TIME%20PAD.htm (contiene errores de decodificación)

https://es.wikipedia.org/wiki/Libreta_de_un_solo_uso

Shannon, Claude E. Communication Theory of Secrecy Systems. Bell System Technical Journal (USA: AT&T Corporation) 28 (4): 656–715 (1949)

 

Leave your comments

Post comment as a guest

0
Your comments are subjected to administrator's moderation.