¿Cómo se sabe cuando un mensaje se descifra con éxito? [duplicar]

4

¿Cómo saben las personas que descifran los mensajes cifrados que han descifrado el mensaje correcto? ¿Siguen descifrando hasta que el mensaje está en inglés (o en cualquier otro idioma), o existe un método estándar y comprobado que dice que cuando se aplica cierto algoritmo a un mensaje cifrado, se reproduce el mensaje original?

Hoy estaba pensando en esto y me sorprendió que es bastante posible ocultar un mensaje dentro de lo que parece ser el mensaje real, que podría estar destinado a deshacerse de cualquiera que intente descifrar el mensaje cifrado sin Conociendo la técnica de encriptación. Así que con esta nueva visión, hace que sea imposible decidir si el mensaje descodificado es el original u otro rompecabezas. ¿Es esto una cosa, o me estoy perdiendo algo?

Editar:

Siento que debería reducir esto a una instancia específica, para que las respuestas sean menos amplias. En el caso de una guerra, cuando un lado intercepta un mensaje / transmisión cifrado, ¿se garantiza siempre que el mensaje descifrado es el mensaje original [antes del cifrado]? Digamos que tienes un trabajo de descifrar mensajes interceptados, y se te da un mensaje cifrado interceptado destinado al enemigo, ¿cómo comenzarías a descifrarlo o elegir un algoritmo que podría hacerlo? ¿Hay un proceso paso a paso del que todo el proceso de A-Z depende y se ha demostrado que funciona?

También como una de las respuestas señaladas, ¿cómo sabrías que el enemigo está enviando coordenadas encriptadas o un mensaje? ¿O es la misma técnica de descifrado utilizada universalmente? En esencia, ¿son los humanos tan predecibles que cualquier técnica de encriptación desarrollada sigue un patrón predefinido (respuesta con patrón o enlace)? Espero que esto sea suficiente para establecer algunas respuestas nuevas en el camino correcto.

    
pregunta smac89 12.05.2014 - 06:11
fuente

5 respuestas

2

Estoy seguro de que la respuesta real -no tan útil- es "depende", pero creo que estás en el camino correcto aquí:

Una buena manera de comenzar es detectar caracteres ASCII (suponiendo que es un mensaje de texto en ASCII), un encabezado de archivo (si se conoce el tipo de archivo) o una muestra "conocida", que es una secuencia de caracteres ( Creo que los encabezados TCP / IP, etiquetas XML, ...).

En cyphers débiles (como XOR o cualquier cosa similar a César), puedes detectar patrones, que si los sustituyes por otro valor, puedes intentar derivar la clave, o partes del mismo.

Esta es, por supuesto, una versión simplificada, Cryptanalysis es un campo muy amplio y en ningún momento soy un experto en it.

    
respondido por el ndrix 12.05.2014 - 07:58
fuente
2

Creo que estás haciendo dos preguntas muy diferentes:

  1. ¿Cómo sé que una secuencia específica de bytes lleva un mensaje (es decir, que es sintácticamente correcta)?
  2. ¿Cómo sé que dicha secuencia lleva un mensaje significativo (es decir, que es semánticamente correcto)?

Por ejemplo, supongamos que un mensaje de texto simple solo puede contener los símbolos a y b (para mantener las cosas simples). Descifras dos mensajes cifrados con éxito y terminas con las secuencias aba y abbbba .

Estrictamente hablando, son "descifrados con éxito". Sin embargo, esto no le dice nada sobre su significado .

En otras palabras: la sintaxis de su cadena desencriptada es correcta (contiene los símbolos a y b ), pero su semántica es lo que marca la diferencia. En nuestro caso particular, abbbba es una cadena de palíndromo, es decir, una cadena que puede leerse en ambos sentidos. Esto agrega un poco más de información que no está incrustada en la sintaxis.

Vuelve a tu pregunta original:

  

Estaba pensando en esto hoy y me di cuenta de que es bastante   posible ocultar un mensaje dentro de lo que parece ser el mensaje real,

De lo que estás hablando es de steganography y de manera similar negación plausible .

En particular, si basamos su pregunta en el dominio de cifrado de disco y sistemas de archivos, una buena implementación es la Volúmenes ocultos de Truecrypt :

  

El principio es que un volumen TrueCrypt se crea dentro de otro   Volumen TrueCrypt (dentro del espacio libre en el volumen). Incluso cuando el   El volumen exterior está montado, debería ser imposible probar si   hay un volumen oculto dentro o no *, porque el espacio libre en cualquier   El volumen TrueCrypt siempre se llena con datos aleatorios cuando el volumen es   creado ** y ninguna parte del volumen oculto (desmontado) puede ser   Distinguido de los datos aleatorios. Tenga en cuenta que TrueCrypt no modifica   El sistema de archivos (información sobre el espacio libre, etc.) dentro del exterior.   volumen de cualquier manera.

    
respondido por el lorenzog 12.05.2014 - 13:41
fuente
1

Esto me recuerda un desafío que tuve hace una semana en el que tuve que encontrar la clave AES de un texto cifrado. Uno de los problemas fue cuándo sabría que la clave es correcta cuando la presiono.

Lo que hice es descubrir una palabra que estaba segura en ese mensaje: "Felicitaciones" o "la" o "a" ... obtienes la idea.

Hubo otro hecho interesante en AES: los bytes de relleno. El sistema AES CBC agregará 0xff como su primer byte, seguido de 15 bytes de relleno 0x0f (probablemente no solo sea AES sino otros sistemas de encriptación)

Otra forma: sería buscar el texto plano con la mayoría de ASCII imprimibles (caracteres de 32 (espacio) a 126 (tilde ~)) ya que otros candidatos serán solo datos de basura.

De nuevo, si los busca, también indicará una posibilidad de tener el mensaje original.

    
respondido por el AK_ 12.05.2014 - 09:42
fuente
1

Solo utilizando el cifrado, no puede saber si su texto cifrado se ha descifrado correctamente o no. Lo que necesita es una disposición de integridad.

Se puede proporcionar integridad contra errores accidentales o ataques deliberados con sumas de comprobación o funciones de MAC, respectivamente.

Otro aspecto que debe saber es que no todos los cifrados están en un 'idioma'. Digamos, si esperas un valor aleatorio (por ejemplo, una clave criptográfica) ... ¿Cómo saber si descifras el correcto?

    
respondido por el Anton Garcia Dosil 12.05.2014 - 12:45
fuente
0

No creo que sea posible sin garantizar un control de integridad, lamentablemente, la única forma en que puedo pensar es en las ofertas populares de PKI. Supongo que las sumas de comprobación están desactivadas porque aún necesitará el archivo original para compararlo o encontrar una manera de comunicar el valor de la suma de comprobación.

Establezca una comunicación de sesión segura utilizando el método de clave asimétrica y generando un secreto maestro (como SSL para, por ejemplo); luego, vaya a la forma de comunicación de la clave simétrica. El remitente encripta los datos con clave, envía los datos encriptados a través del canal seguro. El receptor descifra los datos. Eso es todo, el receptor sabrá que el mensaje descifrado es correcto debido a las disposiciones que ofrece PKI: integridad, no repudio, etc.

    
respondido por el dozer 12.05.2014 - 14:01
fuente

Lea otras preguntas en las etiquetas