CifrandOTRe las conversaciones

Hace relativamente poco que han salido varias noticias acerca de securizar conversaciones de Whatsapp, así como otros temas relacionados con el supuesto espionaje de algunas organizaciones. Desde entonces, mi interés por OTR se ha incrementado mucho.

Para los que no lo conozcan, OTR es un protocolo que permite cifrar (y no encriptar) conversaciones, Off-the-record, de modo que terceras partes no puedan leer la conversación que estamos manteniendo con la otra persona. Del mismo modo, se pueden evitar lecturas no autorizadas de nuestra bandeja de mensajes, por ej, de Facebook, entre otras muchas aplicaciones.

El requisito es que ambas partes involucradas en la comunicación tengan esta aplicación instalada.

¿Qué es?

Como bien se ha indicado anteriormente, es un protocolo que permite cifrar las conversaciones. Pero además de esto, nos ofrece:

  • Funcionar haciendo uso de sistemas y plataformas de terceros, véase Facebook, Jabber, etc.
  • Autenticar cada una de las partes con las que mantenemos una conversación, de modo que se pueda identificar y alertar en caso de un ataque Man-in-the-Middle.
  • Cifrar la conversación de modo que sólo las partes involucradas puedan leerlo.
  • Negación de la autenticidad. Los mensajes intercambiados no tienen ninguna firma digital, con lo que no hay prueba de que el mensaje lo hayas enviado tú.
  • Confidencialidad en caso de pérdida de la clave. En cada conversación se generan unas claves temporales para cifrar los mensajes.

Para los que quieran profundizar en el tema, en este enlace está detallado el funcionamiento del protocolo OTR.

A continuación, vamos a ver las aplicaciones que permiten hacer uso de OTR.

Aplicaciones

Empezamos con la aplicación móvil para Android e iOS.

1. [Móvil] ChatSecure (Gibberbot)

Como alternativa a Hangouts para Android, me recomendaron una aplicación llamada ChatSecure (También conocida como Gibberbot) que implementa el protocolo OTR a través de XMPP. Con esto podremos configurar, por ejemplo, las cuentas de Google y Facebook.

Para descargarlo, se puede buscar ChatSecure en Google Play desde el mismo terminal ó bien lanzar la instalación desde el siguiente enlace.

Para los afines a la manzana (iOS), tenéis el siguiente enlace.

Una vez instalado, es muy intuitivo y fácil de configurar.

Para usar una cuenta de GMAIL, se le indica qué cuenta se quiere usar (de normal la que está configurada en Android).

Para usar la cuenta de Facebook, se le debe indicar que se quiere añadir una cuenta de Jabber (XMPP) e introducir los siguientes datos:

– usuario: usuario@chat.facebook.com
– contraseña: ******

Ahora falta indicarle el servidor chat.facebook.com en el apartado de configuración avanzada.

Nota: el usuario es lo que aparece en http://www.facebook.com/usuario cuando uno accede a su perfil. (Por si alguien aún no lo sabía).

¿Fácil no?

Veamos unos ejemplos de conversación, todo el proceso de autenticación y cifrado y lo que una tercera persona (no autorizada) vería.
Primero, el proceso de autenticación y cifrado desde GibberBot.

En la imagen podemos ver Conversación sin cifrar –> cifrada pero no autenticada –> verificación –> cifrada y autenticada.

A continuación, lo que terceras partes verían en Facebook o Hangouts.

2. [Móvil] IM+

La alternativa a Gibberbot, disponible también para Android e iOS.

Podéis conseguirlo desde el Google Play en el Terminal o bien desde el siguiente enlace.

Para el caso de iOS, aquí tenéis el enlace.

Una vez instalado, podéis comprobar que es un poco más fácil de configurar que GibberBot, pues para añadir una cuenta, sólo es necesario hacer clic en el icono de dicha plataforma y seguir unos pasos, como podéis ver a continuación:

3. [Multiplataforma] Pidgin + OTR

¿Quién no ha usado el famoso Pidgin? Pues tenemos disponible el plugin OTR para llevar a cabo nuestro objetivo de cifrar las conversaciones.

Se puede descargar desde la página de OTR. Una vez instalado, en la lista de complementos (Herramientas -> Complementos) lo activamos y ya podemos configurarlo.

Se nos abre una ventana como la siguiente:

Le damos a Generar y nos aparecerá nuestra huella digital. Ahora ya podemos iniciar sesión en Facebook y empezar a usar el cifrado.

4. [OS X] Adium + OTR

Sin olvidarse de la gente que utiliza OS X habitualmente, también se puede hacer uso de OTR con la aplicación de mensajería Adium. Esta está disponible para su descarga desde la web oficial https://adium.im

Una vez instalado, dentro de las preferencias de la aplicación, en el apartado Encryption se ha de generar un fingerprint para la cuenta que estamos usando.

Para comenzar a cifrar la conversación que vamos a mantener, se ha de hacer clic en el icono del candado, arriba a la izquierda de la ventana:

Imagen extraída de www.encrypteverything.ca

Ya podemos disfrutar del cifrado OTR también para OS X.

Conclusiones

Para terminar, como muchos os habréis dado cuenta, no es fácil conseguir que todas las personas hagan uso de alguna de estas aplicaciones. Sin embargo, no está de más recomendarlo cuando nos pregunten y echarles una mano a instalarlo. Porque si es una de las personas que habla habitualmente con nosotros, saldremos beneficiados.

Y la cuestión es, ¿porqué no ponerle más difícil las cosas a los husmeadores?

Comments

  1. Hola,
    yo hace tiempo estuve mirando aplicaciones de mensajería con OTR, y he probado varios de éstos. El primero que recomendáis, ChatSecure, me pareció muy pesado (ocupa demasiado, IMHO) y por lo tanto iba bastante lento. Como alternativa, al final me quedé con Xabber (que no lo habéis puesto); funciona muy bien, ocupa algo más de 4 Mb y también soporta OTR.
    Un saludo :)

  2. @w_h_d,

    sí es cierto que ocupa bastante la aplicación ChatSecure pero, al menos en el SGS3, no llego a notar lentitud. De todos modos, probaré tu recomendación, Xabber, pues la desconocía por completo.

    ¡Gracias por el aporte! ;-)
    Un saludo,

  3. @Marcos,
    es que yo ando aun exprimiendo a mi pobre SGS1, por eso noto bastante cuando una aplicación es pesada :)
    Aun así, aunque tuviera un móvil potente, suelo preferir las ligeras…si hacen lo mismo, me da la sensación de que están mejor programadas. Probablemente no tenga por qué ser así, y sea una manía personal.

    Un saludo, y gracias a vosotros por el blog :)

  4. Existe otra opcion, surespot, que segun parece es libre (cliente y servidor) con lo que podriamos montarnos nuestro propio servidor de IM.

    Si no me equivoco todos estos clientes hasta ahora no soportan grupos (solo uno a uno), alguien sabe como esta esto?

  5. @latxa

    Si te refieres a soportar grupos de forma normal (sin cifrado), casi todos los soportan (pidgin y xabber al menos…supongo que los demás también).
    Si te refieres a grupos con cifrado extremo a extremo entre sus miembros, que creo que más bien viene por aquí la cuestión…hace un tiempo estuve buscando y solamente encontré cryptocat (https://crypto.cat/). Viene en forma de plugin para el navegador, lo que le permite ser multiplataforma, configurarlo con tor/i2p de forma fácil…y funciona bastante bien :)

    un saludo