sábado, 7 de noviembre de 2015

Criptograma (Resuelto)


   Como propuse en la entrada Criptograma, voy a explicar el procedimiento de desencriptado del texto allí expuesto, el cual vuelvo a mostrar a continuación:


+V-+WKN NNKC NX ELCAXE D+XALN DQKLVX. NNAHDADN E+DAXE AHCQDNH KD VANXNWAD QN1VYVLD DNVLYDYX V-XDYX VDNKQDLED ÑAM LDDWLYDVL-  XYWD QKDKXNA. NKE

   Hay que tener en cuenta que los criptogramas desencriptados no corresponden en su totalidad al texto que el autor quiere transmitir ya que, al criptograma, por la ley del mínimo esfuerzo, le faltarán casi todas las vocales y algunas palabras habrán sido sustituidas por símbolos o figuras que fácilmente se les pueda asociar, echando mano de la imaginación y la perspectiva global del texto.
   Nuestro criptograma se compone de 120 caracteres, sin contar los signos “.” que, con una seguridad casi absoluta, corresponden a finales de frases, como debería ser lógico. A primera vista, el texto anterior contiene los símbolos "+" y "-" y la cifra "1". A su vez, podemos ver abundancia de las letras "D" y "N" incluso en las mismas palabras, lo cual nos hace pensar en una encriptación complicada que no contiene ningún código César (recuerdo que este código se refiere a una traslación simple de las letras del abecedario, hacia delante o hacia atrás, en una o varias posiciones pero siempre constante).
   Lo más sencillo será averiguar en primer lugar, a qué corresponden los signos de suma y resta en el texto. Podría ser complicado pero el axioma de la navaja de Occam nos dará la clave: el signo de suma nos indica algo positivo, sumar, aceptar, añadir... ¿podría ser que "+ = SI" (con o sin acento)? Vamos a suponer este razonamiento como válido (aplicamos Occam). Del mismo modo, el signo de resta equivale a quitar, eliminar, algo negativo... aceptamos pues que "- = NO". Si vamos un poco más allá, se podría plantear también la hipótesis de que el autor se haya planteado la opción de que "SI = + = IS" y "NO = - = ON" de forma natural y por la ley del mínimo esfuerzo.
   Para el número "1" que aparece en la segunda expresión del segundo renglón, tiene muchas probabilidades de que corresponda a un artículo del idioma español (recuerdo que, de las pistas de la entrada anterior, una de ellas era que el texto encriptado está escrito en español) o que corresponda a la letra "A", primera del abecedario. Como solo aparece una vez, se puede descartar que sea la letra "A" porque entonces debería aparecer con mucha más frecuencia, por lo que se acepta como más probable que sea un artículo y, casi con toda probabilidad (de nuevo se aplica Occam), corresponde al artículo "UN" o "UNA" de nuestro idioma.
   Resueltos estos pequeños problemas, nos fijamos que aparece el carácter encriptado "Ñ" una única vez en una expresión, como poco, peculiar, la expresión "ÑAM" (no se deben llamar palabras a las expresiones de los textos encriptados porque puede ser que no correspondan a palabras enteras del texto desencriptado, y puede crear confusión al aceptar dicha asignación ya que, lo más seguro es que a una expresión de un texto encriptado le correspondan varias palabras del texto desencriptado e, incluso, frases enteras. Por tanto, se usa el global de caracteres de un texto).
   Hay que tener en cuenta que los idiomas latinos se limitan a un abecedario de 27 letras, que pueden parecer muchas pero en realidad no son excesivas y, algo muy importante, es que la frecuencia en la que aparecen esas letras en las palabras no es la misma (evidentemente, las letras "a", "c" o "r", aparecen muchas más veces en cualquier texto coherente que las letras "f", "q" o "x", por citar algunos ejemplos).
   Llegamos así al texto encriptado puro y duro. Su desencriptado creo que no es fácil ya que he utilizado para encriptarlo una función matemática que, aunque sencilla, ni siquiera usando una simple calculadora se puede conseguir la asignación de cada letra del abecedario con su homónima en el texto, debido a los números tan grandes que resultan (hay que tener en cuenta que el autor de un criptograma siempre pretende que la complejidad del texto sea máxima salvo para el receptor o receptores e incluso, también para éstos en algunos casos). Se necesita así un ordenador para manejar las altas cifras.
   A cada letra del abecedario le corresponde un número, como ya comenté en la entrada anterior, desde “a = 1” hasta “z = 27”. La idea es que, al usar traslaciones de esas letras, es muy probable que se salgan del intervalo [1, 27], por lo que el resultado se debe `introducir´ de nuevo en él usando la división módulo 27 pero quitando el “0” porque en el abecedario no le corresponde ninguna letra a este número. Por ejemplo, si en un cálculo nos sale que la letra “n”, que tiene un valor en el abecedario de “14”, se nos dispara al valor “94”, ese 94 deberemos trasladarlo al intervalo [1, 27] para obtener otra letra según la regla o fórmula usada, por lo que hacemos la operación 94/27 y nos quedamos con el resto de dicha operación, esto es, 94 = 27x3 + 13 y escogemos el 13 que sería nuestra posición “13” del abecedario, con lo que la letra “n” se traslada a la letra correspondiente de la posición “13” que es la letra “m”: n -> m, y así sucesivamente con todos los caracteres del criptograma, ¿se entiende? Cabe preguntarse qué sucede si el resto de la división es cero (por ejemplo, para el caso anterior, si nos hubiera salido trasladar la letra “n” a la posición 108. Tenemos que 108 = 27x4 + 0), ¿qué letra asignamos entonces? Depende del autor del criptograma y no hay reglas para ello. En mi caso particular y, lo más probable en cualquier caso, es la asignación a la posición “1”, es decir, se traslada la letra correspondiente al carácter “a” en el texto encriptado, como en los casos con (*) del abecedario trasladado que se describe posteriormente.
   La función matemática que he usado ha sido f(x) = x+ex, una sencilla función exponencial, siempre positiva en el intervalo numérico tratado, continua y creciente, por lo que las traslaciones del intervalo [1, 27] correspondiente al abecedario, se transforman en el intervalo [3.7, 530000000027], de ahí lo de realizar el procedimiento de las divisiones descrito en el párrafo anterior.
   Ahora bien, ¿qué sucede con los números trasladados que tienen cifras decimales? Lo más sencillo, tanto para el autor como para el receptor (los dos poseen las reglas de desencriptado), es la ley de aproximación de decimales más sencilla (aplicando Occam de nuevo): si la primera cifra decimal es <5 entonces el número entero se aproxima al número entero sin decimales; si la primera cifra decimal es >5 entonces el número entero se aproxima a la siguiente cifra superior sin decimales, por ejemplo, e1=2.7 se aproxima a 3; si la primera cifra decimal es igual a 5 entonces pasamos a la segunda cifra decimal y aplicamos lo anterior, por ejemplo, e6=403.429 que se aproxima a 403.43 que se aproxima a 403.4 que se aproxima al entero 403. ¿Y sí la primera cifra decimal es igual a 5 y no hay más decimales? Nuevamente, se aplica el criterio del autor que, suele ser el más sencillo, como siempre y, en el caso del texto citado, aproximé como en el caso de <5 (concretamente para e10=22026.5 aproximado a 22026).
   Realizando todo el proceso anterior, que es largo y requiere concentración (aunque solo se hace una única vez), se obtiene la siguiente traslación del abecedario normal al abecedario de caracteres encriptados:

A -> D; B -> I; C -> V; D -> E; E -> Q; F -> D; G -> W; H -> R; I -> L; J -> D; K -> Y; L -> K; M -> D; N -> Y; Ñ -> B; O -> N; P -> N; Q -> H; R -> A*; S -> N; T -> X; U -> K; V -> C; W -> V; X -> N; Y -> A*; Z -> P

   Nótese la coincidencia en las traslaciones de algunas letras, como por ejemplo, A=O=S=X -> N, de ahí que aparezca el carácter encriptado “N” muchas veces en el criptograma.
¿Qué sucede con la extraña expresión encriptada “ÑAM” cuya traslación corresponde a la extraña palabra desencriptada “BDD”? Si añadimos vocales a “BDD” obtenemos palabras sin sentido aparente pero, ¿y si es una expresión única o una onomatopeya? “ÑAM” se puede asociar al sonido que se hace al comer… aceptamos pues (Occam de nuevo) que se podría traducir como algún tiempo verbal del verbo “comer” o, en otro caso, al adverbio “como”, otra hipótesis que dejamos en el aire para cuando tengamos el texto desencriptado.
   Llegamos pues, a desentrañar el texto encriptado, el cual corresponde al texto siguiente en lenguaje coherente:

+C-+GUS SOLV ST DIVRTD M+TRIO FELICT. SPR Q AYAS D+FRTD Y Q VEAS Q LA CRPTOGRF ES 1 CNCIA FSCINANT C-  TANT CMPLEJIDA ÑAM IMAGINACI-  TNGA EL AUTOR. SLD 

   Tan solo nos falta añadir vocales y dar sentido gramatical al texto anterior. Notar que, al final, la expresión “ÑAM” se transcribe, con una alta probabilidad, al adverbio “COMO” que, a su vez, es la conjugación en primera persona del singular del verbo `comer´… una pequeña licencia humorística del autor. La traducción final es:

SI CONSIGUES RESOLVER ESTE DIVERTIDO MISTERIO (TE) FELICITO. ESPERO QUE HAYAS DISFRUTADO Y QUE VEAS QUE LA CRIPTOGRAFÍA ES UNA CIENCIA FASCINANTE CON TANTA COMPLEJIDAD COMO IMAGINACIÓN TENGA EL AUTOR. SALUDO

Por cierto, me tiene muy intrigado cualquier criptograma pero el Cifrado Dorabella es el que más, ya que es uno de los muchísimos criptogramas que siguen sin resolverse aunque posiblemente este es el más complejo precisamente por su aparente sencillez: