Разработчики системы децентрализованных коммуникаций Matrix новые выпуски ключевых клиентских приложений . Riot написан с использованием web-технологий и фреймворка React (применяется обвязка ). Версия для рабочего стола на базе платформы Electron. Код unter der Apache 2.0-Lizenz.
Ein Schlüssel в новых версиях стало включение по умолчанию сквозного шифрования (E2EE, end-to-end encryption) для всех новых приватных чатов, вход в которые производится через отправку приглашений. Сквозное шифрование реализовано на базе собственного протокола, использующего для начального обмена ключами и обслуживания сеансовых ключей алгоритм (часть протокола Signal).
Для согласования ключей в чатах с несколькими участниками применяется расширение , оптимизированное для шифрования сообщений с большим числом получателей и позволяющее расшифровывать одно сообщение несколько раз. Шифротекст сообщения может быть сохранён на не заслуживающем доверия сервере, но не может быть расшифрован без сессионных ключей, хранимых на стороне клиента (каждый клиент имеет свой сессионный ключ). При шифровании для каждого сообщения на основании ключа сеанса клиента генерируется свой ключ, который аутентифицирует сообщение в привязке к автору. Перехват ключа позволяет скомпрометировать только уже отправленные сообщения, но не сообщения, которые будут отправлены в будущем. Реализация методов шифрования прошла аудит в организации NCC Group.
Вторым важным изменением является активация поддержки перекрёстного подтверждения (Cross-signing), позволяющего пользователю из уже подтверждённого сеанса верифицировать новый сеанс. Ранее при подключении к чату пользователя с нового устройства остальным участникам выводилось предупреждение, чтобы избежать подслушивания в случае доступа злоумышленника к учётной записи жертвы. Перекрёстное подтверждение позволяет пользователю при входе верифицировать другие свои устройства и подтвердить доверие к новому логину или определить, что кто-то попытался подключиться без их ведома.
Для упрощения настройки новых логинов предоставлена возможность использования QR-кодов. Запросы на верификацию и результаты теперь сохраняются в истории в виде напрямую отправленных сообщений. Вместо всплывающего модального диалога верификация теперь выполняется в боковой панели. Из сопутствующих возможностей также отмечена прослойка , позволяющая подключаться к шифрованным чатам из клиентов, не поддерживающих E2EE, а также работающий на стороне клиента поиска и индексации файлов в чат-комнатах с шифрованием.
Напомним, что платформа для организации децентрализованных коммуникаций Matrix развивается как проект, использующий открытые стандарты и уделяющий большое внимание обеспечению безопасности и приватности пользователей. В качестве транспорта применяется HTTPS+JSON с возможностью использования WebSockets или протокола на базе +. Система формируется как содружество серверов, которые могут взаимодействовать между собой и объединяются в общую децентрализованную сеть. Сообщения реплицируются по всем серверам, к которым подключены участники обмена сообщениями. Сообщения распространяются по серверам по аналогии с тем как коммиты распространяются между Git-репозиториями. В случае временного отключения сервера сообщения не теряются, а передаются пользователям после возобновления работы сервера. Поддерживаются различные варианты идентификаторов пользователя, включая email, номер телефона, учётную запись в Facebook и т.п.

Im Netzwerk gibt es keinen einzelnen Ausfall- oder Kontrollpunkt für Nachrichten. Alle Server, die das Gespräch abdecken, sind gleichberechtigt.
Jeder Benutzer kann seinen eigenen Server betreiben und ihn mit dem gemeinsamen Netzwerk verbinden. Es ist möglich, für die Interaktion von Matrix mit Systemen auf Basis anderer Protokolle zu erstellen, zum Beispiel Dienste für die bidirektionale Nachrichtenübermittlung in IRC, Facebook, Telegram, Skype, Hangouts, E-Mail, WhatsApp und Slack.
Neben der sofortigen Textnachrichtenübertragung und der Organisation von Chats kann das System auch zum Dateitransfer und zum Versenden von Benachrichtigungen verwendet werden.
Organisation von Telekonferenzen, Durchführung von Sprach- und Videoanrufen.
Matrix ermöglicht die Suche und unbegrenzte Einsicht in den Nachrichtenverlauf. Auch erweiterte Funktionalitäten wie Benachrichtigungen beim Tippen, die Bewertung der Online-Präsenz von Benutzern, Lesebestätigungen, Push-Benachrichtigungen, serverseitige Suche, Synchronisierung von Nachrichtenverläufen und Statusanzeigen werden unterstützt.
Quelle: opennet.ru
