Mensajes cifrados: juegos matemáticos en la literatura
#Pure tech
04.12.2024 Tiempo de lectura: 7 minutos
Marta Macho Stadler
Ilustración: Laura Arrue
Las matemáticas están muy presentes en nuestro día a día. En el ámbito tecnológico sirven, entre otros, para fundamentar los códigos criptográficos que usan muchas herramientas digitales. La literatura tampoco se olvida de ellas. ¿Combinamos criptografía y literatura?
JUGAR Y CODIFICAR, TODO ES EMPEZAR
Actualmente, la criptografía es una materia que se imparte en muchos grados y másteres universitarios. En las asignaturas que incluyen esta disciplina, se estudian herramientas teóricas que permiten que la información pueda transmitirse de forma fiable y segura.
Los mensajes cifrados se utilizan en ámbitos tan dispares como el mundo del espionaje o las transacciones comerciales. Pero también constituyen un extraordinario reto intelectual para quien quiera “jugar” con ellos. La literatura contiene preciosos ejemplos de mensajes en clave que estructuran el argumento de algunos relatos. Damos dos ejemplos de ello.
LOS BAILARINES: UN CRIPTOGRAMA EN UN RELATO DE MISTERIO
Sherlock Holmes, el famoso detective creado por Arthur Conan Doyle (1859-1930), era conocido por sus grandes capacidades deductivas. Tenía una “mente matemática”. En su relato corto Los bailarines, el investigador utiliza, además, sus dotes como criptógrafo.
En esta aventura, Hilton Cubitt pide ayuda a Holmes para aclarar un enigma relacionado con su esposa: Elsie se encuentra angustiada desde que recibe unos extraños mensajes. En ellos no hay palabras, solo monigotes con piernas y brazos colocados en distintas posiciones, que a veces llevan banderines y, en algunas ocasiones, están colocados boca abajo. Holmes explica:
Estos jeroglíficos tienen sin duda un sentido. Si se trata de una cosa puramente arbitraria, quizá nos sea imposible descifrarlo; pero si estamos ante una cosa sistemática, llegaremos sin duda al fondo del asunto.
Holmes comienza su pesquisa estudiando la frecuencia de aparición de cada símbolo (cada monigote) en los mensajes que recibe Elsie y la compara con la frecuencia de uso de las letras en inglés.
Una vez convencido de que cada símbolo de esos equivale a una letra, y aplicando al caso las reglas por las que nos guiamos para descifrar toda clase de escrituras secretas, la solución resulta bastante fácil.
El detective empieza fijando el símbolo más repetido, que debe corresponder a la letra E, la más frecuente en textos escritos en inglés. Guiándose, además, por el contexto, por la corrección gramatical y por el sentido común, Holmes consigue descubrir la clave escondida en los criptogramas.
De hecho, este “alfabeto” formado por “bailarines” era una invención de Patrick, el padre de Elsie y cabecilla de una banda de delincuentes. Esta manera de escribir le ayudaba a enviar avisos a su pandilla. Al parecer un simple juego, estos mensajes pasaban desapercibidos para cualquier persona que desconociera la clave.
A pesar de conseguir averiguar la clave, Holmes no logra evitar el asesinato de su cliente, Hilton Cubitt. Aunque logra desenmascarar al asesino. Conocedor como ya era del código escondido, envía un mensaje en el alfabeto de “bailarines” simulando que lo remite Elsie…
LA JANGADA: UN CRIPTOGRAMA EN UNA NOVELA DE AVENTURAS
La Jangada. Ochocientas leguas por el Amazonas es una novela de aventuras y suspense de Jules Verne (1828-1905).
La historia transcurre en 1852. Joam Garral es un hombre de origen brasileño, propietario de una próspera hacienda en Iquitos (Perú). Es padre de Benito y Minha. La hija se va a casar con el mejor amigo de Benito, Manuel Valdez en Belém (Brasil). Garral decide transportar al séquito de familiares y sirvientes a bordo de una jangada, una balsa de grandes dimensiones que navega hacia el litoral atlántico de Brasil a través del río Amazonas. Deben recorrer ochocientas leguas a lo largo del río para celebrar el matrimonio.
Pero Garral esconde un secreto: es un prófugo de la justicia brasileña. Muchos años atrás había sido falsamente acusado de robo y asesinato. Debió huir de Brasil para evitar un castigo injusto: la condena a muerte por un delito que no había cometido. Al llegar a Manaos, Torres, un siniestro personaje, chantajea a Garral: no le delatará a cambio de casarse con Minha. Garral no accede a someterse a Torres y es detenido por la justicia y condenado a muerte.
Pero Torres posee un documento cifrado con la confesión del verdadero asesino. Ese manuscrito utiliza el llamado “cifrado de Gronsfeld”, mucho más complicado que el que utiliza Conan Doyle en su relato; el de “Los bailarines” es un cifrado por sustitución donde cada carácter del texto original se sustituye por otro elegido en el escrito codificado. Sin embargo, el de “La Jangada” es un cifrado polialfabético, es decir, cada símbolo no se reemplaza siempre por el mismo carácter. Además, utiliza una clave numérica para codificar y decodificar. Veamos un ejemplo. Fijemos en primer lugar el alfabeto original de 26 letras con el que vamos a trabajar:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
Supongamos que el mensaje que queremos enviar es:
BIZKAIATECH MAGAZINE
Con la clave 12345. El mensaje encriptado quedaría:
CKCOFJCWIHI ODKFAKQI
¿Cómo se obtiene? Bajo el texto a encriptar se coloca la clave (un dígito por cada letra) repetida tantas veces como sea preciso. El mensaje encriptado se obtiene reemplazando cada letra original por la que corresponde al desplazarse (hacia la derecha en el alfabeto fijado) tantas posiciones como indica el dígito bajo esa letra:
B I Z K A I A T E C H M A G A Z I N E
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4
C K C O F J C W I H I O D K F A K Q I
Es decir, como se observa en la tabla, B+1=C, I+2=K, Z+3=C, etc. Para descifrar el mensaje, basta con realizar el proceso inverso: en el mensaje codificado, cada letra se reemplaza por la que corresponde al desplazarse (hacia la izquierda) en el alfabeto tantas posiciones como el dígito bajo esa letra: C-1=B, K-2=I, C-3=W, etc.
La Jangada comienza con un mensaje cifrado, el último párrafo de un texto en clave de cien líneas (que no se incluye en la novela) que esconde la confesión de un hombre llamado Ortega, el verdadero autor del delito del que se acusaba a Garral.
Ch n y i s g e g g p d z x q x e h ñ u q g p g c h n q y e l e o c r u h x b f i d x h u m ñ d y r f i ll r x v q o e d h r u y v h c h v e t ll x e e c r f n g r o b p b g r ñ i u l h r g r ll d q r j i e h ñ z g m ñ x c h b f t t g c h h o i s r h h ñ m ll r l r e m f p y r u b f l q x g d t h ll v o t f v m y c r e d g r u z b l q ll x y u d p h o z f f s p f i ñ d h r c q v h v x g d p v s b g o n l x h t fe n c h h ñ u ll h e g p c h t n e d f q j p ll v v x b f l l r o c h f n h l u z s l y r f m b o e p v m ñ r c r u t ll r u y g o p c h ll u ñ t d r q o k o f u n d f i s r q r ñ g s h s u v i h d.*
Cuando Garral es apresado en Manaos, el juez Jarríquez, encargado de su defensa, intenta descifrar el contenido del mensaje usando diferentes métodos. Pero sus intentos son infructuosos. Casi en el último momento, un nombre le llega, el de «Ortega», como posible firmante del mensaje encriptado. Gracias a ese descubrimiento, el juez consigue encontrar la clave y utiliza el método Gronsfeld (aunque sin nombrarlo, tan solo lo describe) para descifrar el mensaje escondido:
El verdadero autor del robo de los diamantes y del asesinato de los soldados que escoltaban el convoy, cometido en la noche del veinte y dos de enero de mil ochocientos veinte y séis, no es pues Joam Dacosta, injustamente condenado a muerte; soy yo, el miserable empleado de la Administración del Distrito de Diamantes; sí, solo yo, que firma con mi nombre real, Ortega.
Gracias al descubrimiento, Garral (cuyo verdadero apellido era Dacosta) se libra de la horca, y la historia termina con final feliz.
USANDO LA TECNOLOGÍA PARA CODIFICAR Y DECODIFICAR
Existen muchas páginas online que ayudan a codificar y decodificar usando diferentes sistemas de cifrado. Mi favorita es la página code en la que he testado en varias ocasiones el método Gronsfeld con diferentes alfabetos y claves. Aunque es más divertido hacerlo a mano siempre que el mensaje a codificar no sea demasiado largo…
Etiquetas
- #cultura
- #ciencia
- #educación
- #mujeres
Haznos caso, échale un ojo
Desliza para mostrar más
BizkaiaTech, la revista sobre tecnología para mentes inquietas de la Diputación Foral de Bizkaia.
Cookies
Utilizamos cookies propias y de terceros para fines técnicos, analíticos y de personalización, como es el idioma de navegación seleccionado. Para más información consulta nuestra política de cookies (Abre ventana modal).
Política de cookies
Esta página web, https://www.bizkaia.eus (en adelante la “Página Web”) utiliza herramientas de seguimiento de la navegación a través de la misma y de la dirección IP del destinatario del servicio, con la finalidad de mejorar y garantizar la prestación de servicios o el funcionamiento técnico de la misma, distinguirle de otras personas usuarias y analizar sus hábitos de navegación.
La presente política de cookies tiene como finalidad informarle de manera clara y precisa sobre el funcionamiento y utilidades de las cookies que utilizamos.
¿Qué es y por qué usamos cookies?
Una cookie es un fichero que se descarga en su dispositivo al acceder a determinadas páginas web.
Las cookies permiten a una página web, entre otras cosas, almacenar y recuperar información sobre los hábitos de navegación de una persona usuaria o de su equipo y, dependiendo de la información que contengan y de la forma en que utilice su equipo, pueden utilizarse para reconocer a la persona usuaria.
La ley vigente permite que almacenemos cookies en su dispositivo si estas son estrictamente necesarias para el funcionamiento de esta página. Sin embargo, para el resto de tipos de cookies necesitaremos permiso.
Tipos de cookies según la entidad que las gestione
Según quién gestione el equipo o dominio desde donde se envían las cookies y trate los datos que se obtengan, podemos distinguir:
-
Cookies propias: están gestionadas por la Diputación Foral de Bizkaia.
-
Cookies de terceros: están gestionadas por otra entidad que trata los datos obtenidos a través de las cookies.
En esta página web se pueden encontrar cookies del Gobierno Vasco, utilizadas para fines propios y que se almacenan en dominios ajenos a la Diputación Foral de Bizkaia.
Tipos de cookies según su finalidad
- Cookies técnicas: permiten a la persona usuaria la navegación a través de una página web, plataforma o aplicación y la utilización de las diferentes opciones o servicios que en ella existan como, por ejemplo, controlar el tráfico y la comunicación de datos, identificar la sesión, acceder a partes de acceso restringido, realizar la solicitud de inscripción o participación en un evento, utilizar elementos de seguridad durante la navegación, almacenar contenidos para la difusión de videos o sonido o compartir contenidos a través de redes sociales.
- Cookies de análisis: permiten cuantificar el número de personas usuarias y realizar la medición y análisis estadístico de la navegación que se realiza, con el objetivo de mejorar los servicios que están a su disposición. Pueden ser propias o de terceros.
- Cookies de personalización: permiten a la persona usuaria acceder al servicio con algunas características de carácter general predefinidas en función de una serie de criterios en el dispositivo de la persona usuaria como por ejemplo, el idioma, el tipo de navegador a través del cual accede al servicio, la configuración regional desde donde accede al servicio, etc.
Duración de las cookies
- Cookies de sesión: recaban y almacenan datos mientras la persona usuaria accede a una página web.
- Cookies persistentes: los datos siguen almacenados en el dispositivo y pueden ser accedidos y tratados durante un periodo definido por el responsable de la cookie, que puede ir de unos minutos a varios años.
¿Qué cookies utiliza esta web?
En cada fila se pueden encontrar los datos relativos a una cookie técnica
| Nombre | Objetivo | Duración | Propietario |
|---|---|---|---|
| JSESSIONID | Identificar la sesión | Sesión | Diputación Foral de Bizkaia |
| ASPSESSIONID | Identificar la sesión | Sesión | Diputación Foral de Bizkaia |
| TS01 | Identificar la sesión | Sesión | Diputación Foral de Bizkaia |
| LFR_SESSION_STATE | Identificar la sesión | Sesión | Diputación Foral de Bizkaia |
| COOKIE_SUPPORT | Indicar si la persona usuaria tiene activado el soporte para cookies | 1 año | Diputación Foral de Bizkaia |
| pc_tecnicas_bizkaia | Recoger las preferencias de aceptación/rechazo sobre el bloque de las cookies técnicas | 1 año | Diputación Foral de Bizkaia |
| pc_analitica_bizkaia | Recoger las preferencias de aceptación/rechazo sobre el bloque de las cookies de análisis | 1 año | Diputación Foral de Bizkaia |
| pc_preferencias_bizkaia | Recoger las preferencias de aceptación/rechazo sobre el bloque de las cookies de preferencias | 1 año | Diputación Foral de Bizkaia |
| pc_terceros_bizkaia | Recoger las preferencias de aceptación/rechazo sobre el bloque de las cookies de terceros | 1 año | Diputación Foral de Bizkaia |
| CPLB | Contiene información utilizada por nuestros servidores de equilibrio de carga | Sesión | Diputación Foral de Bizkaia |
| Kultursistema_session | Mantener la sesión de la persona usuaria | 1 hora | Kultursistema |
| XSRF-TOKEN | Para evitar ataques CSRF (Cross Site Request Forgery) | 1 hora | Kultursistema |
| _GRECAPTCHA | Protege el sitio web del spam y los ataques de fuerza bruta | 6 meses |
En cada fila se pueden encontrar los datos relativos a una cookie de análisis
| Nombre | Objetivo | Duración | Propietario |
|---|---|---|---|
| dtCookie | Rastrea una visita a través de múltiples solicitudes | Sesión | Diputación Foral de Bizkaia |
| dtLatC | Mide la latencia del servidor para la monitorización del rendimiento | Sesión | Diputación Foral de Bizkaia |
| dtPC | Necesario para identificar los parámetros adecuados para la transmisión de balizas; incluye ID de sesión para correlación | Sesión | Diputación Foral de Bizkaia |
| dtSa | Almacén intermedio para acciones que abarcan páginas | Sesión | Diputación Foral de Bizkaia |
| rxVisitor | ID de visitante para correlacionar sesiones | Permanente | Diputación Foral de Bizkaia |
| rxvt | Tiempo de espera de sesión | Sesión | Diputación Foral de Bizkaia |
| iyrc-user-id | Distinguir a las personas usuarias | 1 hora | Diputación Foral de Bizkaia |
| _ga, _ga_XXXXXXXXXXX | Distinguir a la persona usuaria | 2 años | Google Analytics |
| _gat, _gat_XXXXXXXXXXX | Limitar el porcentaje de solicitudes | 1 minuto | Google Analytics |
| _gid | Distinguir a las personas usuarias | 1 día | Google Analytics |
| MUID | Distinguir a la persona usuaria | 1 año | Microsoft Clarity |
| _clck | Asignar preferencias a la misma persona usuaria | 1 año | Microsoft Clarity |
| _clsk | Conecta múltiples páginas vistas en una sesión | 1 año | Microsoft Clarity |
| CLID | Identificar la primera visita de una persona usuaria | 1 año | Microsoft Clarity |
| ANONCHK | Distinguir a la persona usuaria | 1 día | Microsoft Clarity |
| MR | Indica cuando refrescar MUID | 6 meses | Microsoft Clarity |
| SM | Sincronizar MUID en el entorno Microsoft | 1 año | Microsoft Clarity |
En cada fila se pueden encontrar los datos relativos a una cookie de personalización
| Nombre | Objetivo | Duración | Propietario |
|---|---|---|---|
| Idioma | Seleccionar el idioma preferido por la persona usuaria | 1 año | Diputación Foral de Bizkaia |
| cookie-tramites-favs | Guardar los trámites favoritos en Cita Previa | 1 año | Diputación Foral de Bizkaia |
En cada fila se pueden encontrar los datos relativos a una cookie de terceros
| Nombre | Objetivo | Duración | Propietario |
|---|---|---|---|
| CLID | Identificar la primera visita de una persona usuaria | 1 año | Microsoft Clarity |
| APISID | Almacenar las preferencias del usuario y la información durante la visualización de las páginas con los mapas de Google en ellos | 2 años | |
| HSID | Prevención del fraude | 2 años | |
| MUID | Distinguir a la persona usuaria | 1 año | Microsoft Clarity |
| NID | Recordar sus preferencias y otra información | 6 meses | |
| SAPISID | Mostrar anuncios personalizados en los sitios de Google | 2 años | |
| SID | Proporcionar entrega de anuncios o retargeting, proporcionar prevención del fraude | 2 años | |
| SIDCC | Proporcionar la identificación del tráfico web confiable | 1 año | |
| SM | Se utiliza para sincronizar el MUID entre dominios de Microsoft | Sesión | Microsoft Clarity |
| SSID | Proporcionar entrega de anuncios o retargeting, proporcionar prevención del fraude | 2 años | |
| __Secure-1PAPISID | Crear un perfil de los intereses del visitante del sitio web con el fin de mostrar publicidad de Google relevante y personalizada | 2 años | |
| __Secure-1PSID | Crear un perfil de los intereses del visitante del sitio web con el fin de mostrar publicidad de Google relevante y personalizada | 2 años | |
| __Secure-1PSIDCC | Crear un perfil de los intereses de los visitantes del sitio web para mostrar anuncios relevantes y personalizados a través de retargeting | 1 año | |
| __Secure-1PSIDTS | Crear un perfil de los intereses de los visitantes del sitio web para mostrar anuncios relevantes y personalizados a través de retargeting | 1 año | |
| __Secure-3PSID | Crear un perfil de los intereses del visitante del sitio web con el fin de mostrar publicidad de Google relevante y personalizada | 2 años | |
| __Secure-3PSIDCC | Crear un perfil de los intereses de los visitantes del sitio web para mostrar anuncios relevantes y personalizados a través de retargeting | 1 año | |
| __Secure-3PSIDTS | Crear un perfil de los intereses de los visitantes del sitio web para mostrar anuncios relevantes y personalizados a través de retargeting | 1 año | |
| __Secure-ENID | Cookie necesaria para la utilización de las opciones y servicios del sitio web | 1 año | |
| ar_debug | Depurar anuncios | 1 año | |
| MR | Indica cuando refrescar MUID | 6 meses | Microsoft Clarity |
| XSRF-TOKEN | Para evitar ataques CSRF (Cross Site Request Forgery) | 1 hora | Kultursistema |
| _fbp | Almacenar y rastrear las visitas en los sitios web | 1 año | |
| kultursistema_session | Mantener la sesión de la persona usuaria | 1 hora | Kultursistema |
| AEC | Detectar spam, fraude y abuso | 6 meses | |
| SOCS | Almacenar las elecciones de cookies de la persona usuaria | 13 meses | |
| Locale | No disponible | Gobierno Vasco | |
| _hegoa_coop_session | Generar un identificador de sesión para las personas usuarias | Sesión | Gobierno Vasco |
¿Cómo desinstalar las cookies?
La persona usuaria, en su primer acceso a la Página Web puede configurar y aceptar o rechazar las cookies en el presente Sitio Web. Posteriormente, la persona usuaria podrá, en cualquier momento, cambiar o retirar su consentimiento a través de la presente Política de Cookies o de la configuración.
No obstante, en cualquier momento podrás ejercer tu derecho de desactivarlas libremente e incluso de eliminar las cookies de esta Página Web. Estas acciones se realizan de forma diferente en función del navegador que estés usando. Aquí te dejamos una guía rápida para los navegadores más populares.
- Desactivar Cookies en Chrome
- Desactivar Cookies en Explorer
- Desactivar Cookies en Firefox
- Desactivar Cookies en Safari
- Desactivar Cookies en Edge
En caso de desactivación o eliminación de las cookies, algunas funcionalidades de la Página web podrían no funcionar correctamente.
Modificaciones de la Política de Cookies
La Página Web se reserva el derecho a modificar la presente Política de Cookies, siempre en los términos permitidos por la legislación vigente. Por ello, le recomendamos revisar esta política cada vez que acceda a nuestro sitio web a los efectos de actualización e información oportunos.
Configurar cookies
A continuación te mostramos las diferentes categorías para las que nuestra web hace uso de cookies. Puedes personalizar tu elección aceptando o rechazando las mismas a través de los botones habilitados para ello. Para más información consulta nuestra política de cookies (Abre ventana modal).
-
Cookies técnicas Siempre activas
Son necesarias para permitirte navegar por nuestra página web y para las tareas básicas para el correcto funcionamiento de la página.
