¿Se puede descifrar algún código?

Estás haciendo dos preguntas diferentes, lo cual es interesante porque tu pregunta realmente mezcla términos que no van del todo juntos.

Un código es un esquema de reemplazo. Si observa el menú Ver en su navegador, hay un elemento etiquetado como “Codificación de caracteres”, que básicamente dice “¿qué esquema de reemplazo debo usar para decidir qué glifos mostrarle?” Los códigos pueden ser prácticamente cualquier cosa, desde referirse a su jefe como “el imbécil” para evitar hacer explícito de quién está hablando a reemplazar letras, palabras o frases con … bueno, cualquier cosa, como tonos, diagramas, otras letras, otras palabras u otras frases.

Cuando un código es algorítmico y se usa para ocultar información, tienes un Cipher.

Debido a que un cifrado es algorítmico, a menos que haga algo para perder información a propósito en su mensaje de texto sin formato, se puede deshacer. Puede llevar un tiempo extraordinariamente largo, pero no existe un cifrado que no pueda ser descifrado por un atacante suficientemente motivado.

No sé por qué otras personas piensan que una almohadilla única es una solución, aquí. Una clave es una clave, y eventualmente puedes adivinarla. La ventaja de los sistemas tipo almohadilla es que cambia la clave de cada mensaje, lo que aumenta la dificultad de descifrar toda la conversación, pero eso no lo hace imposible, de ninguna manera. (Esta es una evaluación más realista que teórica. Las matemáticas dicen que pueden ser irrompibles, pero …)

Lo que quise decir con “perder información”, por cierto, es evidente por algo como el cifrado de la cerca del carril, que generalmente comienza con la eliminación de espacios, signos de puntuación y mayúsculas de su mensaje original y agrupando los caracteres en lotes de cinco. Puede adivinar el mensaje original por contexto, pero no puede determinar algorítmicamente que sea absolutamente el mensaje original.

Ahora, para volver a la pregunta: no hay cifrado posible que no pueda romperse, dada la motivación suficiente, porque el cifrado es algorítmico y eventualmente siempre encontrará la clave. Los códigos, siendo más generales, no son necesariamente descifrables; Si usted y yo acordamos que me refiero a “comprar papas” cuando le envío un mensaje que dice “muu” (en lugar de comprar leche ), no hay forma de que un lector haga la conexión solo con el mensaje, y no hay un único posible descodificación.

La almohadilla de un solo uso es totalmente irrompible suponiendo una clave aleatoria, incluso por fuerza bruta. Al no tener la clave, puede descifrarla en cualquier texto plano, lo que no es útil.

Aparte de eso, generalmente no asumes recursos y tiempo infinitos, porque entonces casi todo es frágil (incluso de manera poco física). En cambio, establece límites razonables sobre cuánto tiempo espera mantener el secreto. Podemos escalar eso bastante bien en la práctica, aunque no estoy al tanto de que ningún cifrado (aparte de los pads de una sola vez) sea definitivamente seguro en lugar de simplemente resistir el escrutinio criptoanalítico.

Esta es una pregunta separada, pero sí, cualquier programa de computadora se puede desmontar; solo puede ser muy difícil de leer para los humanos. Si la computadora no podía entender el programa, no podía ejecutarlo.

Un llamado código de “una sola vez” no puede ser roto por ningún método matemático. Se basa en un texto preestablecido, por lo que sin ese texto el descifrado es imposible.