Mensajería segura y abierta mediante CONVERSATIONS Xmpp


A raíz del acuerdo entre Grok y Telegram por el que el primero integrará su iA en el segundo tras desembolsar 300 millones de dólares y un porcentaje en las ventas de los planes de pago que se efectúen a través de la App de mensajería; se ha propiciado una nueva polémica al respecto con diferentes iniciativas para abandonar Telegram en busca de alternativas. Sobretodo en lo concerniente a grupos públicos de usuarios, donde actualmente la App de Pável Dúrov domina con mano férrea.
Entre las aplicaciones sugerencias que se han ido citando cabe destacar a las basadas en el protocolo de XMPP.
Protocolo XMPP
El Extensible Messaging and Presence Protocol, apareció sobre 1998 con la denominación de Jabber de la mano de Jeremie Miller. Su idea era la de crear un protocolo de transmisión en tiempo real basado en el estándar XML para habilitar la comunicación entre usuarios, permitiendo el envío y recepción de mensajes de texto, imágenes, archivos y audio. Sus características más destacadas pueden resumirse en:
Protocolo de código abierto que permite su uso, modificación e implementación sin restricciones de licencia
Funcionamiento basado en la arquitectura cliente-servidor. Donde los servidores también pueden interconectarse entre sí, permitiendo una red federada y descentralizada
La implementacion de XML como formato en los mensajes permite hacerlo extensible y compatible con distintas aplicaciones y plataformas
Contempla el concepto de «gestión de la presencia«: informar y consultar el estado de disponibilidad de los usuarios (en línea, ocupado, ausente, etc.).
Soporta la transmisión de mensajes en tiempo real y la gestión de listas de contactos
Mediante el empleo de pasarelas (bridges) puede integrarse con otros protocolos y servicios como pueden ser los mensajes SMS, correo electrónico y distintos sistemas de mensajería
Se pueden agregar nuevas funcionalidades mediante el uso de extensiones (XEPs)
Soporta cifrado TLS
Una de las implementaciones más importante que ha recibido XMPP es en lo concerniente a la extensión Omemo. Como no es el objetivo de éste artículo, simplemente comentaremos que se trata de un cifrado extremo a extremo (E2EE) que permite la sincronización segura de mensajes entre múltiples clientes (cifrado de múltiples extremos a múltiples extremos), incluso si algunos de ellos están desconectados. Ésto ha permitido a las aplicaciones basadas en XMPP situar su seguridad al nivel de las mejores dentro de la mensajería segura y privada.
App Conversations
Visto por encima en qué consiste XMPP pasemos a una implementación práctica, en éste caso sobre Android y mediante la aplicación Conversations, disponible de pago en Google Play (4,99€) y de forma gratuita en F-Droid.
Configuración
El menú de Configuración general es muy similar al que presentan aplicaciones similares: Interfaz, privacidad, notificaciones, adjuntos, backups…
Destacaría dentro de «Seguridad» la opción de que todos los mensajes, tanto directos como grupales, se cifren mediante Omemo y en «Conexión» redirigir todo el tráfico mediante ma red Tor (requiere instalar Orbot y deshabitada las llamadas)
Al igual que en el caso de Olvid, Conversations también permite la creación de diferentes cuentas. Lo que puede resultar muy interesante a la hora de gestionar uno o varios perfiles tanto privados como de públicos:
Experiencia de uso
Su verdadero potencial empieza con la creación de un nuevo Chat y las posibilidades que ofrece:
Añadir un nuevo contacto
Crear una conversación grupal privada
Unirse a un canal público
Crear un canal público
Descubrir (buscar) canales
En cualquiera de las opciones, tendremos la posibilidad de elegir sobre qué cuenta, de entre las que tengamos configuradas, se asocia la acción:
Una de las funcionalidades más potentes de Conversations es en todo lo relativo a creación y participación en grupos públicos. La creación de un nuevo grupo tan sólo requiere de dos sencillos pasos: nombre del grupo y la dirección xmpp (la propia aplicación generará una por defecto en el servidor conversations.im). Posteriormente podremos personalizar el grupo con una descripción detallada, imagen, permisos, etcétera
Si lo que queremos es consultar grupos ya existentes, bastará con elegir la opción «Descubrir canales». Automáticamente nos mostrará un listado con información muy detallada de cada uno de ellos: Nombre y descripción, servidor donde se aloja e idioma que se utiliza. También es posible obtener más información mediante la opción «Detalles del canal». Una de las mejores opciones consiste en la barra de búsqueda superior, donde podremos introducir una palabra clave para buscar canales relacionados.
Dentro del canal, los mensajes se muestran como si de conversaciones se tratara. El editor es muy espartano aunque se habilita la posibilidad de añadir diversos adjuntos:
Como puedepuede observarse en la imagen, los mensajes dentro de los grupos públicos no están cifrados.
En su vertiente como mensajería directa entre usuarios, el menú y las opciones son las mismas; con la importante salvedad de que éste caso, los mensajes se cifran mediante Omemo:
Conclusiones
Como aplicación de mensajería directa entre usuarios, podemos ubicarla entre las mejores; con la única salvedad del editor, claramente inferior al que ofrece Signal u Olvid. El poder utilizarla sin ningún tipo de registro en diferentes dispositivos y de forma simultánea gracias al cifrado que ofrece Omemo, es un hecho diferencial a su favor.
Como aplicación para crear o seguir canales públicos es una de las mejores, prácticamente al nivel de Telegram, sin tener en cuenta la gigantesca diferencia en cuanto a número de usuarios que hay entre ambas. El habilitar un directorio para descubrir canales públicos y un buscador donde encontrarlos a partir de una palabra clave, le otorgan un plus muy grande respecto a otras opciones como Signal o Threema. Si bien hay que tener claro que los mensajes no estarán cifrados y es precisamente por ello que estas últimas Apps no lo incorporan.
En cualquiera de los dos escenarios de uso planteados, Conversations XMPP + Omemo es una excelente solución gratuita, de código abierto y que ofrece múltiples posibilidades.
Subscribe to my newsletter
Read articles from alt43 directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

alt43
alt43
Blog tecnológico sobre Privacidad, Android, Open Source, Hard&Soft, Redes, Domótica y Opinión.