Criptografía que se parece al correo electrónico ordinario

41

Me gustaría quedarme fuera de los filtros automáticos establecidos por las agencias de seguridad y no ser colocado accidentalmente en una lista de exclusión aérea o similar. Digamos que estoy teniendo un debate político con un amigo acerca de la democracia y otras cosas, y términos como revolución, capitalismo, libertad y cosas así (¡oh, hola NSA!) Están muy difundidos. El envío de un correo electrónico cifrado donde normalmente enviaría correos electrónicos en texto sin formato es una forma segura de activar algunos de los filtros, supongo.

¿Hay una forma de cifrar los correos electrónicos para que el texto encriptado sea difícil de distinguir para un algoritmo del correo electrónico regular (digamos spam, más difícil de obtener más regular que el spam)?

Por ejemplo:

Cyphertext PGP normal, fácil de distinguir:

-----BEGIN PGP MESSAGE-----
Comment: GPGTools - http://gpgtools.org

hQIMA7t6lidYOUd0AQ//Z7y+/tvQQ0TRoOT0ydUwVjJZh5sLQOEVQNDHGEUjfvL9
7UJhtEaisVwlDsqTEqpa04FWzgehBBDnxgOUFcPB3xSGD9Bi61MItK6gm1phTnEn
hOezHmGqAyrCarofkYn5vpwPZtpSmRvpS9tykhRTKMlhsN5EOLvaDa8TsqMnqwGm
pPC8j219YG2U/OmRa96GTslMaDtIx6470Ea4fcJf2jdo3RlgLEc7BGQVcrOpHj/0
-----END PGP MESSAGE-----

Cyphertext, menos fácil de distinguir:

pen3s grow for cheap russion brides are looking for parntners in 
Detroid area visit our website now click to unsubscribe
    
pregunta Rodin 08.11.2013 - 14:20
fuente

10 respuestas

43

Diga que lo que realmente quiere hacer es hacer que su correo electrónico encriptado se vea como spam. ¿Cómo lograr that?

Una forma posible sería tomar el texto cifrado y dividirlo en trozos manejables de, digamos, nueve bits cada uno. Al usar un conjunto de diccionarios, estas cantidades de nueve bits se asignan a una o más palabras en un idioma de destino (nueve bits requerirían un diccionario de 512 palabras, lo que es factible al mismo tiempo que proporciona variación). Una cadena de Markov podría usarse para elegir el siguiente diccionario según la palabra seleccionada en el diccionario anterior, lo que probablemente podría ser hecho para que la salida se asemeje a un texto muy mal escrito en el idioma dado.

Al ajustar la interacción entre las dos partes, la salida de tal esquema podría ser cualquier cosa, desde un sin sentido hasta un texto semi-legible (como muchos correos electrónicos no deseados). Y será texto, no datos binarios.

Una variante aún más simple sería simplemente codificar el texto cifrado utilizando algo como la lista de palabras PGP . El resultado de eso será, por supuesto, completo y sin sentido, pero probablemente pasará las pruebas estadísticas más simples para un idioma de destino determinado.

Ahora que he descrito estas ideas, son, por supuesto, totalmente inútiles. Tendrás que idear algo propio. ;-)

    
respondido por el a CVn 08.11.2013 - 14:58
fuente
10

Estás solicitando enlace , que es un sitio web que hace exactamente eso. Usan un método esteganográfico para codificar bits usando oraciones de spam.

Sin embargo, los inconvenientes de la implementación de spammimic son graves. Se conocen públicamente, por lo que puede apostar a que alguien que podría estar interesado en lo que fluye a través de su sitio ya lo está interceptando. Y su lista de palabras y frases es estática, por lo que una sola codificación siempre es reconocible como tal. A continuación, su algoritmo parece codificar bloques de 13 bytes en aproximadamente 1 kb de texto spammish, por lo que es altamente ineficiente. Las personas no leen (ni envían) más de un párrafo de spam, por lo que un bloque de 10 kb de texto de spam sería altamente sospechoso.

Las personas que intentan enviar más de unas pocas palabras los disfrazan en archivos más grandes, como imágenes o archivos de música. No es que no se puedan detectar, pero intercambiar imágenes con un amigo es menos sospechoso que alguien que intercambia grandes bloques de spam.

Finalmente, la gente está usando "gotas muertas". En lugar de enviar por correo electrónico los planes secretos en una imagen a su co-conspirador, pueden publicar la imagen en cualquiera de los miles de sitios de alojamiento de imágenes, o adjuntarlos a una reseña del producto o una venta en eBay. Eso hace que sea un poco más difícil para alguien saber cuál de los espectadores de la página fue la persona que la decodificó.

    
respondido por el John Deters 08.11.2013 - 16:12
fuente
6

Supongamos que sustituyes cada carácter de texto cifrado por una palabra de diccionario establecida, entonces tendrías un grupo de palabras no relacionadas en un mensaje muy largo. Si bien esto no dispararía a un algoritmo en busca de texto cifrado típico, probablemente dispararía a los algoritmos que las personas extremadamente inteligentes empleadas por los servicios de seguridad han implementado para detectar nuevos métodos de cifrado de la comunicación, por lo que es mucho más probable que llame la atención. a ti mismo que si hubieras usado algo como el GPG.

Creo que su suposición de que enviar mensajes cifrados atraerá automáticamente la atención sobre usted probablemente sea un error. Muchas personas envían correos electrónicos encriptados por razones perfectamente normales, no se colocan repentinamente en listas de exclusión solo por eso.

    
respondido por el GdD 08.11.2013 - 15:08
fuente
6

Marcas Leo ideó un sistema para comunicarse en un código que parecía ser un texto simple de apariencia inocua. Lo describe brevemente en el capítulo 79 de Entre Silk y Cyanide . Esencialmente, un gran libro de códigos que asigna caracteres a fragmentos de oraciones permite que un mensaje corto se codifique como varias oraciones. Dada la naturaleza concisa del texto basura que se lanza a SPAM, sería relativamente fácil generar un libro de códigos que generaría texto que no causara preocupación.

Este esquema tiene dos inconvenientes:

  1. Tamaño: una pequeña cantidad de texto sin formato generará un gran volumen de texto codificado
  2. libros de códigos -
    1. Necesitas generar un libro de códigos muy grande
    2. Necesitas compartir el libro de códigos con tu amigo sin que nadie más obtenga una copia

Esencialmente, esto es solo otro cifrado de transposición, y como tal es vulnerable a varios ataques. Si lo usa para codificar la salida de texto cifrado por un algoritmo moderno, tal vez el par cumpla con sus requisitos tanto de confidencialidad como de secreto, aunque, como señala Adnan, proteger su tráfico contra un oponente suficientemente calificado y capaz, como la NSA, tiene todo tipo de trampas.

    
respondido por el gowenfawr 08.11.2013 - 15:18
fuente
4

Hay dos lados de esto. Uno es el cifrado y el otro oculta el cifrado en el correo no deseado (esteganografía). Ambos son problemas resueltos, así que sí, esto es factible today utilizando componentes disponibles.

Tenga en cuenta que la esteganografía no es cifrado. Si desea la seguridad de ambos, debe hacer ambos.

En primer lugar, el cifrado. Asumiremos que ya puedes hacer eso. El resultado es una cadena de bits, que ahora enterrarás en el correo no deseado.

El siguiente paso necesariamente requerirá una cierta cantidad de secreto. Ya que está ocultando el mensaje "a simple vista", si su atacante conoce su mecanismo de codificación, es posible que pueda detectar mensajes codificados. Pero vamos a componer un algoritmo aquí:

Paso 1: Adquiera contenido de spam
Podría generar esto mediante algoritmos usando cadenas de Markov, o podría capturar correo no deseado entrante o alguna otra fuente similar.

Paso 2: modifique sutilmente el contenido de una manera difícil de detectar
Esto dependerá algo de tu fuente de spam. Pero una técnica podría ser la capitalización de palabras. Convierta el spam entrante a minúsculas, y luego, moviéndose a través de su texto cifrado poco a poco, ponga mayúscula en la siguiente palabra si el bit es un 1, o déjelo en minúscula si es un cero.

Cuanto más eficiente sea el espacio de su algoritmo estenográfico, más fácil será de detectar. Poner en mayúscula la primera letra de cada palabra es menos obvio que poner mayúsculas en cada letra individual. Poner en mayúsculas una letra para cada oración es incluso menos obvio. Agregar u omitir puntuación puede ser otra táctica.

Si tanto usted como la parte receptora tienen una copia del spam de origen, podría modificar sutilmente el contenido para indicar las posiciones de los bits. Por ejemplo, podría agregar palabras innecesarias, omitir oraciones, alterar la puntuación u otras técnicas similares.

Paso 3: descifre el mensaje
Esto es tan simple como revertir la técnica aplicada en el paso 2. Por ejemplo, pruebe el uso de mayúsculas en cada palabra y registre un 1 o un 0 según el resultado.

Paso 4: descifra el mensaje
Ahora que ha recuperado su flujo de bits de texto cifrado, descifre utilizando técnicas tradicionales.

    
respondido por el tylerl 08.11.2013 - 20:54
fuente
3

Probablemente, la mejor manera de hacerlo es mediante la esteganografía, es decir, el proceso de ocultar algo dentro de algo. Esto se puede hacer tal vez agrupando pequeños fragmentos de archivos sin importancia o incluso ocultando documentos enteros dentro de las imágenes, etc. Hay un montón de herramientas de estegaonografía de software libre que pueden darle una idea de ello (especialmente si desea crear su propia herramienta) .

Recomiendo encarecidamente que lo analicen, es un mundo oculto por ahí;)

    
respondido por el daark 08.11.2013 - 15:15
fuente
2

Puede hacerlo, pero solo si cambia el método de cifrado.

Como mencionó @Adnan, es prácticamente imposible encontrar una clave que emita el texto del ciphetext en inglés para un texto simple dado.

Sin embargo, podría crear un método de codificación en el que asigne el texto cifrado a palabras en inglés. Básicamente, encuentre una manera de asociar números con palabras (por ejemplo, tome una base de datos de, digamos, 65536 palabras, y asigne cada uno a cada posible emparejamiento de dos caracteres ASCII)

Sin embargo, los destinatarios deberán saber que está utilizando esta ofuscación y que debe contar con su base de datos para descifrarla.

    
respondido por el Manishearth 08.11.2013 - 15:01
fuente
1

Algo que es a la vez inteligente y fácil es enviar una imagen de mapa de bits de color verdadero donde ha cambiado el último bit de cada byte (aparte de los metadatos) para contener un mensaje binario.

Hice algo como esto, para un proyecto de AS Computer Science. No es muy difícil, y oculta los datos completamente. La codificación y la decodificación son rápidas (utilicé una solución Python bastante ineficiente que es capaz de escribir miles de caracteres en una sola imagen en menos de un segundo) y tener imágenes en un correo electrónico no activará ningún algoritmo.

El almacenamiento simple (codificado) de caracteres ASCII permite que se oculten grandes cantidades de texto sin formato en una sola imagen. La imagen no es visiblemente diferente (como el color verdadero, por definición, no tiene un cambio visible desde el cambio al bit menos significativo), y por lo tanto parecerá completamente inocente, especialmente si es simplemente de usted / su familia, o tal vez de un gato haciendo algo gracioso .

Mientras pueda aproximar una distribución uniforme de bits en el texto codificado que desea enviar, parecerá que es completamente inocuo. Esta es también la razón por la que una imagen personal es buena: (normalmente) no se encontrará en ningún otro lugar de Internet, por lo que no se puede comparar para encontrar el texto cifrado oculto. Para distribuir uniformemente los bits, use un archivo de diccionario.

    
respondido por el Dakeyras 08.11.2013 - 19:25
fuente
0

Creo que lo mejor sería no almacenar el texto cifrado dentro del mensaje de correo electrónico, pero realice una de las siguientes acciones:

  • Encuentre una explicación plausible para enviar una gran cantidad de imágenes entre usted y use la esteanografía para ocultar el texto cifrado en el interior (hay soluciones simples disponibles en el mercado).
  • Puede hacer lo mismo si envía una gran cantidad de texto escaneado entre usted (como artículos científicos)
  • Encuentre una explicación plausible para almacenar archivos adjuntos encriptados --- en Polonia, uno estaría enviando algún tipo de información personal entre usted.
  • Almacene el texto cifrado fuera del mensaje, por ejemplo, en el contenido de un archivo torrent, o en algún tipo de servicio de pegado gratuito --- y envíe solo un enlace a ese recurso. Estos enlaces también podrían codificarse utilizando la esteanografía; en este caso, aún así ganaría porque tendría que ocultar una cantidad mucho menor de texto dentro del correo electrónico (por ejemplo, utilizando el método @gowenfawr propuesto).
respondido por el jb. 10.11.2013 - 12:10
fuente
0

Como lo señalan otras publicaciones en este hilo, hay formas de ocultar su texto cifrado. Desafortunadamente, como también se menciona en este hilo, tales técnicas tienen inconvenientes considerables. Sin embargo, creo que su premisa inicial posiblemente esté sobre declarada. Si bien puede ser cierto que agencias como la NSA están recopilando mucha información e incluso están haciendo una clasificación y clasificación muy sofisticada de la información recopilada, esto no es lo mismo que usar o aplicar la información para hacer cosas como poner a la gente en listas de exclusión aérea, etc. El problema real con el tipo de recopilación de datos que se produce principalmente entra en juego cuando ocurren otros eventos. Por ejemplo, usted hace algo más que lo llama la atención de las autoridades, como ser arrestado por algún delito, postularse para un cargo político, involucrarse en activismo político, etc. Cuando ocurren este tipo de eventos, agencias como la NSA son Es probable que busque a través de sus datos y cree un perfil en función de lo que hayan recopilado. Antes de esto, es probable que los datos que han recopilado simplemente se sienten en sus repositorios de datos y nunca sean vistos por un humano. El problema con esto es que es muy difícil saber qué eventos o acciones que tomas pueden llamar su atención. Debe tenerse en cuenta que, cuando realmente llame su atención, es probable que el correo electrónico sea una de las muchas fuentes de datos que utilizan. Es probable que también tengan un montón de datos sobre sus transiciones financieras. Han rastreado sus movimientos a través del uso de su tarjeta de crédito. perfiles basados en sus compras, movimientos, conversaciones telefónicas, listas de contactos, etc., etc.

Toda la información que ha salido a la luz sobre lo que han estado haciendo varias agencias gubernamentales en todo el mundo es muy preocupante. Sin embargo, un aspecto negativo de este conocimiento ha sido hacer que las personas sean bastante paranoicas. Tal vez necesitamos ser paranoicos. Sin embargo, demasiadas personas están preocupadas por lo que las personas ponen en su correo electrónico y quién tiene acceso a él. La realidad es que, si le preocupa que las personas sepan lo que ingresa en sus mensajes de correo electrónico, no lo use. De hecho, si le preocupa que es probable que la NSA lo ponga en una lista de exclusión aérea debido a lo que ha puesto en sus mensajes de correo electrónico, debería preocuparse aún más por lo que harán porque hicieron esta pregunta en esta pregunta. sitio. Es mucho más probable que si están monitoreando en el nivel que le preocupa, este hilo y la publicación habrán hecho más 'daño' que cualquier otra cosa que envíe a un amigo en un mensaje de correo electrónico.

    
respondido por el Tim X 14.11.2013 - 23:08
fuente

Lea otras preguntas en las etiquetas