T

Text Machine

Potentes herramientas de texto, en tu navegador

Solucionador de cifrado por sustitución

Pega un cifrado por sustitución monoalfabética o un criptograma y recupera el mensaje original sin conocer la clave. El solucionador empareja las frecuencias de las letras para una suposición inicial, y luego usa recocido simulado (simulated annealing) puntuado sobre trigramas en inglés para buscar en el alfabeto de 26 letras la lectura que más se parezca al inglés. Todo se ejecuta en tu navegador.

Prueba un ejemplo:

Texto cifrado

Pega un cifrado por sustitución arriba, pulsa Resolver, y aquí aparecerán el mensaje recuperado y el alfabeto de sustitución. Cuanto más texto le des, más fiable será la respuesta.

Cómo usar Solucionador de Sustitución

  1. 1

    Pega el texto cifrado

    Copia tu cifrado por sustitución o criptograma y pégalo en la casilla. Cuanto más texto, más fiable es la resolución; las letras se leen sin tener en cuenta las mayúsculas, y los espacios, dígitos y signos de puntuación se ignoran durante la resolución y luego se restauran en la respuesta.

  2. 2

    Pulsa Resolver

    Haz clic en Resolver cifrado. La búsqueda se ejecuta un momento —prueba cientos de miles de alfabetos candidatos— y luego muestra la lectura más parecida al inglés que encontró.

  3. 3

    Lee el mensaje recuperado

    El texto descifrado aparece con sus mayúsculas, espaciado y puntuación originales restaurados. Cópialo con un solo clic para conservar el resultado.

  4. 4

    Comprueba el alfabeto recuperado

    Debajo del mensaje, el alfabeto de sustitución muestra a qué se decodificó cada letra del texto cifrado. Las letras atenuadas nunca aparecieron en tu texto, así que el solucionador no pudo ubicarlas. Copia el alfabeto para reutilizar o verificar la clave.

  5. 5

    Comparte o borra

    Copia un enlace compartible que reabre la herramienta con tu texto cifrado exacto: el texto viaja en la parte de la URL posterior al símbolo de almohadilla, que nunca llega a un servidor. Borrar lo restablece todo.

Cómo descifrar el cifrado por sustitución, explicado

Qué hace esta herramienta

Un cifrado por sustitución monoalfabética reemplaza cada letra del alfabeto por otra distinta —la A puede convertirse en Q, la B puede convertirse en W— y usa ese mismo alfabeto revuelto para todo el mensaje. Es el cifrado que está detrás de los criptogramas de los periódicos, los acertijos de las salas de escape y los Aristocrats de la American Cryptogram Association. Hay más de cuatrocientos cuatrillones de alfabetos posibles, demasiados para probarlos uno por uno y, sin embargo, un cifrado por sustitución es uno de los más fáciles de romper. Esta herramienta lo rompe por ti, automáticamente, sin clave.

Pega el texto cifrado y el solucionador devuelve el mensaje original más probable junto con el alfabeto de sustitución completo que recuperó. Funciona como lo haría un aficionado experimentado: parte de las frecuencias de las letras y luego sigue intercambiando letras y conservando los cambios que hacen que el texto se lea más como inglés, solo que lo hace cientos de miles de veces por segundo. Nada sale de tu navegador; toda la búsqueda se ejecuta en tu propia máquina.

Por qué se puede romper un cifrado por sustitución

Un cifrado por sustitución oculta qué letra es cuál, pero no puede ocultar con qué frecuencia se usa cada letra. En inglés, la E es mucho más común que cualquier otra letra, seguida de T, A, O, I y N, mientras que J, Q, X y Z son raras. El cifrado solo reetiqueta esas frecuencias: cualquiera que sea la letra que sustituya a la E será la letra más común del texto cifrado. Ese único hecho —las frecuencias de las letras sobreviven a la sustitución— es la grieta en la armadura sobre la que se construyó todo el criptoanálisis.

Las frecuencias por sí solas no bastan del todo, porque varias letras tienen conteos parecidos y pueden intercambiarse por error. La señal más profunda está en cómo se combinan las letras. El inglés adora ciertos patrones —TH, HE, ING, THE, AND— y evita otros casi por completo. Un descifrado correcto está lleno de esos patrones naturales; uno incorrecto está plagado de combinaciones que el inglés real nunca usa. Medir esa diferencia es lo que permite a una computadora reconocer la respuesta correcta entre incontables respuestas erróneas de apariencia plausible.

Paso uno: una suposición inicial ajustada por frecuencia

El solucionador empieza por contar con qué frecuencia aparece cada letra en el texto cifrado y alinear esos conteos con el orden de frecuencia conocido del inglés. Se supone que la letra más común del texto cifrado es la E, la siguiente la T, luego A, O, I, N y así sucesivamente. Este es el clásico primer movimiento que todo solucionador de criptogramas aprende a mano.

Esa suposición rara vez es perfecta —las letras menos frecuentes son especialmente propensas a quedar mal colocadas—, pero no necesita serlo. Solo tiene que ser lo bastante buena para darle a la búsqueda un punto de partida razonable. A partir de ahí, la herramienta refina el alfabeto letra por letra hasta que el mensaje se enfoca con nitidez.

Paso dos: el recocido simulado encuentra la clave

Desde la suposición inicial, el solucionador intercambia repetidamente el significado en texto plano de dos letras y se pregunta si el mensaje ahora se lee más como inglés. Si un intercambio ayuda, se conserva. El problema es que insistir siempre en una mejora inmediata deja la búsqueda atascada en un casi acierto —un óptimo local— del que ningún intercambio aislado puede escapar. La resolución por sustitución es el caso de manual para una técnica llamada recocido simulado (simulated annealing), que resuelve exactamente esto.

El recocido simulado a veces acepta un intercambio que empeora las cosas momentáneamente, con una probabilidad que empieza alta y se reduce de forma constante, como si la búsqueda estuviera caliente al principio y se enfriara lentamente. Al comienzo deambula con libertad y sale de los callejones sin salida; más tarde se asienta y pule el mejor alfabeto que ha encontrado. La herramienta ejecuta esto varias veces desde puntos de partida distintos, termina cada uno con una pasada estricta de solo mejora, y conserva el único mejor resultado, que es la razón por la que encuentra de forma fiable respuestas que un simple ascenso por gradiente pasaría por alto.

Cómo juzga el solucionador el inglés: el ajuste de trigramas

Cada alfabeto candidato se califica con un único número: su ajuste de trigramas. La herramienta examina cada secuencia de tres letras consecutivas del texto descifrado y suma cuán probable es cada trío en inglés real, usando una tabla de frecuencias de tres letras construida a partir de un gran corpus de textos en inglés. Tríos comunes como THE, AND e ING puntúan bien; los tríos que el inglés nunca usa puntúan fatal.

Los trigramas importan porque la frecuencia de letras individuales es demasiado fácil de engañar: una clave incorrecta puede coincidir con el conteo de letras y aun así ser un galimatías. Es mucho más difícil falsificar una página entera de combinaciones de tres letras creíbles. Al orientar cada intercambio hacia un mayor ajuste de trigramas, la búsqueda es arrastrada, intercambio a intercambio, hacia un inglés genuino. La tabla se genera a partir de los propios artículos de este sitio, así que no se obtiene nada del exterior y la herramienta se mantiene rápida y privada.

Cuánto texto necesitas, y cuándo le cuesta

Romper un cifrado por sustitución es una tarea estadística, así que vive o muere según la cantidad de texto que le des. Con aproximadamente ciento cincuenta letras o más de inglés corriente, la recuperación suele ser casi perfecta. En torno a ochenta o cien letras todavía funciona, pero una letra rara o dos —la J, Q, X y Z que apenas aparecen— pueden leerse mal, porque simplemente no hay suficiente evidencia para fijarlas. Por debajo de unas cincuenta letras, cualquier solucionador, humano o máquina, en gran medida adivina.

Algunas otras cosas hacen que un mensaje sea más difícil: texto que evita deliberadamente las letras comunes (como un pangrama), escritura que no es inglés, o un cifrado que además mueve las letras de lugar en vez de solo reetiquetarlas. Cuando la lectura sale casi correcta, la respuesta casi siempre es más texto cifrado, o corregir a ojo la letra o dos tercas. Si el texto no es en absoluto una sustitución simple, el Identificador de cifrados puede decirte qué estás mirando realmente.

Los cifrados por sustitución y sus parientes

Una sustitución simple que conserva las separaciones entre palabras es lo que los creadores de criptogramas llaman Aristocrat; el mismo cifrado con los espacios eliminados es un Patristocrat. Ambos son monoalfabéticos —un alfabeto fijo para todo el mensaje— y ambos caen ante el método de aquí. Caesar y Atbash son simplemente sustituciones especiales, aún más sencillas, así que esta herramienta también los rompe, aunque sus páginas dedicadas los resuelven al instante.

El gran salto de dificultad es el cifrado polialfabético, que cambia el alfabeto a medida que avanza, de modo que la misma letra puede representar varias distintas. El cifrado de Vigenère es el ejemplo célebre, y el análisis de frecuencia sobre el mensaje completo ya no funciona contra él. Si tu mensaje se resiste a este solucionador y las frecuencias de las letras se ven sospechosamente planas, puede ser polialfabético: recurre entonces al Solucionador de Vigenère.

Preguntas frecuentes

¿De verdad se puede resolver un cifrado por sustitución sin la clave?
Sí. Un cifrado por sustitución oculta qué letra es cuál, pero no con qué frecuencia se usa cada una, y las frecuencias del inglés de letras y de grupos de tres letras son muy distintivas. El solucionador parte de esas frecuencias y luego busca el alfabeto cuyo descifrado se lea más como inglés, recuperando tanto el mensaje como la clave sin que se aporte nada de antemano.
¿Qué tipo de cifrado resuelve esto?
Resuelve cifrados por sustitución monoalfabética: del tipo en que un único alfabeto fijo y revuelto reemplaza las letras de todo el mensaje. Eso cubre los criptogramas de los periódicos, los Aristocrats y los Patristocrats, los cifrados con alfabeto de palabra clave, y casos más sencillos como Caesar y Atbash. No resuelve cifrados polialfabéticos como Vigenère, que cambian el alfabeto a medida que avanzan.
¿Cómo funciona el solucionador?
En dos etapas. Primero empareja las frecuencias de las letras del texto cifrado con las del inglés para hacer una suposición inicial. Luego usa recocido simulado —intercambiando repetidamente dos letras y conservando los intercambios que hacen el texto más parecido al inglés, a la vez que de vez en cuando acepta un retroceso para escapar de los callejones sin salida— puntuado según cuán naturales se ven las combinaciones de tres letras. Se ejecuta varias veces y conserva el mejor resultado.
¿Por qué se usa la puntuación de trigramas en vez de las frecuencias de letras?
Las frecuencias de letras individuales pueden coincidir con una clave que aun así produce un galimatías, así que no bastan por sí solas para reconocer la respuesta correcta. El ajuste de trigramas puntúa cada secuencia de tres letras frente al inglés real, donde THE, AND e ING son comunes y la mayoría de los tríos son rarísimos. Una clave incorrecta produce tríos antinaturales y puntúa mal, lo que permite a la búsqueda centrarse en la lectura genuina.
¿Cuánto texto necesito para descifrar un criptograma?
Apunta al menos a ciento cincuenta letras de inglés corriente para una resolución casi perfecta. En torno a ochenta o cien letras suele funcionar, pero puede leer mal una letra rara o dos. Por debajo de unas cincuenta letras rara vez hay suficiente evidencia estadística para que cualquier solucionador esté seguro, así que espera solo una lectura parcial.
El resultado es casi correcto pero algunas letras están mal. ¿Por qué?
Las letras raras como J, Q, X y Z aparecen tan pocas veces que un mensaje corto puede no contener suficientes para ubicarlas con confianza, y dos letras con frecuencias parecidas pueden intercambiarse de vez en cuando. La solución suele ser más texto cifrado, o corregir a ojo la letra o dos descarriadas una vez que el resto del mensaje es legible.
¿Resolverá un criptograma que conserva los espacios (un Aristocrat)?
Sí. Los espacios, dígitos y signos de puntuación se conservan en la salida, pero se ignoran durante la resolución, así que las separaciones entre palabras ni ayudan ni estorban. Tanto si tu acertijo conserva los espacios (un Aristocrat) como si los elimina (un Patristocrat), el mismo método de frecuencia y trigramas recupera el mensaje.
¿Es determinista el solucionador?
Sí. Aunque usa una búsqueda aleatorizada, la aleatoriedad se basa en una semilla fija, así que el mismo texto cifrado siempre produce el mismo resultado. Eso también significa que un enlace compartido reproduce exactamente la misma resolución para quien lo abra.
¿Solo funciona en inglés?
Las tablas integradas de frecuencia y de trigramas describen el inglés, así que está ajustado para texto plano en inglés. Un mensaje en otro idioma normalmente saldrá como un sinsentido aunque la búsqueda tenga éxito, porque está cotejando las estadísticas equivocadas. Para texto que no sea en inglés necesitarías datos de frecuencia de ese idioma.
¿Se envía mi texto cifrado a un servidor?
No. Toda la búsqueda se ejecuta en tu navegador, así que tu texto nunca se sube, registra ni almacena. Incluso el enlace compartible conserva tu texto cifrado en la parte de la URL posterior al símbolo de almohadilla, que los navegadores nunca transmiten a un servidor, así que permanece privado a menos que elijas compartirlo.
¿Y si no es un cifrado por sustitución en absoluto?
Si la resolución sale como un galimatías y las frecuencias de las letras se ven inusualmente planas, el mensaje puede ser polialfabético, basado en transposición, o algo completamente distinto. Ejecuta el Identificador de cifrados para averiguar con qué te enfrentas, y luego usa la herramienta correspondiente: por ejemplo, el Solucionador de Vigenère para un cifrado de clave repetida.

Herramientas relacionadas

Sigue trabajando con estas prácticas herramientas

Identificador de cifrado

Análisis de frecuencia

Convertidor de Timestamp Unix

Convertidor de JSON a CSV

Conversor de CSV a JSON

Convertidor de JSON a YAML