| Matrix | ||
|---|---|---|
|
| ||
| Función | mensajería instantánea y federation | |
| Puertos | 8448 (Federación) | |
|
| ||
Matrix (estilizado como [matrix] o [m]) es un estándar abierto[1] y protocolo de comunicación para mensajería instantánea[2]cifrada extremo a extremo enfocado en el funcionamiento y comunicación eficiente entre distintos proveedores de servicio, de manera similar a cómo el protocolo SMTP lo hace para el servicio de correo electrónico de almacenamiento y reenvío en diferido, permitiendo la comunicación entre usuarios de distintas plataformas a través de chat en vivo, VoIP y videollamada. De esta manera, sirve un propósito similar a protocolos como XMPP.
Desde una perspectiva técnica, es un protocolo de comunicación de la capa de aplicación para comunicaciones federadas en tiempo real. Proporciona APIs HTTP e implementaciones de código abierto para la distribución segura y persistente de mensajes en formato JSON sobre una federación abierta de servidores.[3][4] Puede integrarse con servicios web estándar via WebRTC, facilitando las aplicaciones P2P entre navegadores.
Protocolo
editar
- Azul = Servidores federados domésticos
- Rojo = Aplicaciones de servicio, puentes a Skype, IRC, Slack, etc.
- Verde = Servidores de identidad, enlace entre MXID y 3PID
- Amarillo = Clientes como Riot.im, Nheko, Revolt, Quaternion y otros ...
Matrix se centra en casos de uso como la voz sobre IP (VoIP), la Internet de las cosas, la mensajería instantánea y la comunicación en salas grupales, junto a un objetivo a largo plazo de ser un sistema genérico de mensajería y sincronización de datos para la web. El protocolo soporta la seguridad y la replicación de las comuicaciones, manteniendo un historial completo de conversaciones, sin puntos únicos de control o fracaso. Los servicios de comunicación existentes pueden integrarse con el ecosistema Matrix.[5]
El estándar Matrix especifica las API HTTP RESTful para transmitir y replicar datos JSON de forma segura entre clientes, servidores y servicios con capacidad Matrix. Los clientes envían los datos poniéndolos en una 'sala' de su servidor, que luego replica los datos en todos los servidores Matrix que participan en esta 'sala'. Estos datos son firmados usando una firma de estilo git para mitigar la manipulación, y el tráfico federado es cifrado con HTTPS y firmado con la clave privada de cada servidor para evitar la falsificación. La replicación sigue una semántica de consistencia eventual, permitiendo que los servidores funcionen incluso si están desconectados o después de la pérdida de datos mediante la re-sincronización de la historia que falta de otros servidores participantes.
La biblioteca de Olm proporciona un cifrado opcional de extremo a extremo en cada habitación mediante la implementación de un algoritmo de doble trinquete,[6] que puede garantizar que los datos de la conversación en reposo solo sean legibles por los participantes de la habitación. Con su configuración, los datos transmitidos por Matrix solo son visibles como texto cifrado para los servidores de Matrix, y solo pueden ser descifrados por los participantes autorizados de la sala. Las bibliotecas Olm y Megolm (una ampliación de Olm para adaptarse mejor a la necesidad de salas más grandes) han sido objeto de un examen criptográfico por el Grupo NCC, cuyas conclusiones están a disposición del público, y han sido abordadas por el equipo de Matrix. El examen fue patrocinado por el Open Technology Fund.
Puentes
editarEl protocolo soporta la interoperabilidad entre diferentes aplicaciones de chat en salas Matrix. Estos puentes son programas que se ejecutan en el servidor y pueden comunicarse con otros servidores en tiempo real, representando la misma sala de chat en los distintos clientes .[7]
Algunos ejemplos de puentes son:
Clientes
editarElement es considerada la implementación de referencia de un cliente. Sin embargo, existen otros clientes, bots, puentes, servidores y otras implementaciones sobre el protocolo Matrix.[14]
Véase también
editarReferencias
editar- ↑ Martins, José A. P.; Rego, Paulo A. L.; de Macêdo, José A. F.; Silva, Francisco Airton; Lagrota, Vinícius (18 de febrero de 2026). «Matrix protocol: a comprehensive systematic mapping study». Journal of Cloud Computing (en inglés) 15 (1): 20. ISSN 2192-113X. doi:10.1186/s13677-025-00829-7.
- ↑ «What Is the Matrix Protocol and How Does It Work?». MUO (en inglés). 27 October 2021. Consultado el 24 July 2023.
- ↑ Nathan Willis (11 February 2015). «Matrix: a new specification for federated realtime chat». LWN.net. Consultado el 28 June 2015.
- ↑ Adrian Bridgwater (9 September 2014). «Matrix.org Reloads Inside "Illusion of Control" Vortex». Dr. Dobb's Journal. Consultado el 20 July 2015.
- ↑ Nathan Willis (11 February 2015). «Matrix: a new specification for federated realtime chat». LWN.net. Consultado el 28 June 2015.
- ↑ Ermoshina, Ksenia; Musiani, Francesca; Halpin, Harry (septiembre de 2016). End-to-End Encrypted Messaging Protocols: An Overview. En Bagnoli, Franco, ed. «Internet Science». INSCI 2016. Springer (Florencia, Italia): 244-254. ISBN 978-3-319-45982-0. doi:10.1007/978-3-319-45982-0_22.
- ↑ Martins, José A. P.; Rego, Paulo A. L.; de Macêdo, José A. F.; Silva, Francisco Airton; Lagrota, Vinícius (18 de febrero de 2026). «Matrix protocol: a comprehensive systematic mapping study». Journal of Cloud Computing (en inglés) 15 (1): 20. ISSN 2192-113X. doi:10.1186/s13677-025-00829-7. Consultado el 14 de junio de 2026.
- ↑ «tulir/mautrix-telegram». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «Half-Shot/matrix-appservice-discord». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «matrix-org/matrix-appservice-gitter». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «matrix-org/matrix-appservice-slack». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «matrix-org/matrix-appservice-irc». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «tulir/mautrix-whatsapp». GitHub (en inglés). Consultado el 20 de octubre de 2018.
- ↑ «Try Matrix Now!». Matrix.org. Consultado el 13 de agosto de 2017.