Para cifrar un mensaje se utilizaba un algoritmo tipo libreta de un solo uso (en inglés, 'One-Time Pad' u 'OTP' por sus siglas) con la diferencia de que operaba sobre dígitos en lugar de bits; realizaba una suma módulo 10 de los dígitos en lugar de suma módulo 2 de los bits.
Explico en que consistía:
- Como paso previo al cifrado se utilizaba una tabla para sustituir cada carácter del texto en claro por un número de uno o dos dígitos:
En la submatriz de 4 filas x 7 columnas enmarcada en color rojo se colocaban (por filas, de arriba a abajo, y columnas, de izquiera a derecha) los caracteres de una clave (en la figura 'ESTADOY') seguidos de los caracteres del alfabeto no presentes en la clave.
Las letras situadas en la primera fila se sustituían por el dígito de la columna correspondiente (por ejemplo: 'E' se sustituía por 8, 'S' por 2,... e 'Y' por 1) y las situadas en el resto de filas por el dígito de la fila y el de la columna correspondientes a la celda donde se encontraba (por ejemplo: 'B' por 38, 'C' por '32',... 'Z' por '59').
Ejemplo, supongamos que tenemos el texto en claro: 'EL EJERCITO NOS PERSIGUIO', la sustitución de los caracteres por los dígitos daría como resultado: 8 72 8 31 8 58 32 39 0 9 76 9 2 79 8 58 2 39 36 52 39 9.
Los signos de puntuación '.', ';' y ',' se sustituían por '33', '37' y '35', respectivamente, y '73' y '77' se utilizaban para indicar el cambio de caracteres a números, es decir, para indicar que lo que venía detrás eran directamente números (cada dígito se repetía tres veces para evitar los errores de transmisión), y para volver de números a caracteres, respectivamente.
Con los números así obtenidos se formaban grupos de 5 dígitos. En el ejemplo:
87283 18583 23909 76927 98582 39365 2399
- Posteriormente se comenzaba con el cifrado. Para ello, se sumaba módulo 10 un dígito del texto en claro con un dígito de la clave y se obtenía como resultado el correspondiente dígito cifrado (que es lo mismo que la suma de ambos dígitos sin el dígito de acarreo o, lo que es lo mismo, coger sólo el dígito de las unidades de la suma). Supongamos que los 5 primeros dígitos de la clave (la clave debe ser aleatoria y de igual o mayor longitud que el texto a cifrar) son: 96910, los cinco primeros dígitos cifrados serían:
87283
+ 96910
--------
73193
Para descifrar bastaba con restar a los dígitos del criptograma los dígitos de la clave. Hay que tener en cuenta que si el dígito de la clave era mayor que el del criptograma había que sumar 10 al dígito del criptograma. En el ejemplo:
17 13 11 9 3
- 9 6 9 1 0
----------------
8 7 2 8 3
Una vez visto esto, lo aplico a la
comunicación entre Che Guevara y Fidel Castro cuya imagen se puede ver al principio de este post y en la que se realiza el cifrado del siguiente
texto en claro:
"... un mensaje; además anotaciones para memorizar el informe oral que le dí; todo en clave. Este es el mensaje. 1 Llegaron Danton y Francisco; este no sabía cantidad y dejó dinero en La Paz; pienso darle 30 y reservarle...".
Los nombre 'Danton' y 'Francisco' se refieren al revolucionario francés Jules Régis Debray y al revolucionario peruano Juan Pablo Chang Navarro, respectivamente.
El proceso de cifrado sería el siguiente:
Es decir, el criptograma sería:
10399 44713 40014 44679 09280 05954 85680 09338 07114 45154 10428 67878
17823 01989 84869 96997 51516 34722 71395 28782 16276 69204 50291 94311
56456 73373 35741 89781 53967 42474 98720 44484 57361 31872 80001 78829
73324 03881 99806 60744 28175 31221 06310 26758 61845 97790 39702 35017
54082 98332 32214 93893 67933 97153 0
¿Es seguro este cifrado? Pues yo diría que se trata de un cifrado conceptualmente muy seguro, e incluso que, al igual que el cifrado OTP (
'One-Time Pad' o libreta de un solo uso)
, presenta la característica propia de lo que
Claude Shannon llamó
secreto perfecto, es decir, el conocimiento del texto cifrado no proporciona ninguna información acerca del texto en claro, lo que imposibilita el criptoanálisis, pero para que en la práctica se dé este cifrado perfecto se deben cumplir en su utilización los siguientes requisitos esenciales respecto a la clave:
- Debe tener, al menos, la misma longitud que el mensaje a cifrar.
- Debe ser perfectamente aleatoria.
- Nunca debe reutilizarse, ni total ni parcialmente, y, evidentemente, debe permanecer en el más estricto secreto (intercambio seguro y eliminación confidencial tras su uso).
En el caso que hemos visto, parece que a Che Guevara se le olvidó lo de salvaguardar la confidencialidad de la clave que utilizó para cifrar el mensaje a Fidel Castro, ya que debería haberla destruido de forma segura tras su uso y no lo hizo, lo que permitió su descifrado.
Quizás también te interese:
Comentarios
Publicar un comentario