- PVSM.RU - https://www.pvsm.ru -

Matrix [1] — открытый, современный, мощный протокол для защищённых систем связи реального времени.
Представляет собой набор API (JSON over REST), который позволяет обмениваться мгновенными сообщениями, поддерживает передачу файлов, VoIP, видеосвязь, Интернет вещей и др.
Помимо передачи данных между клиентом и сервером, Matrix — это способ организации связи между серверами за счёт механизма федерации, то есть децентрализованного доступа с серверами и клиентами:
Чёрным цветом обозначены серверы Matrix, зелёным — клиенты Element, синим — мосты в другие сети, в том числе Slack или Microsoft Teams (о них ниже).
Преимущества децентрализации хорошо известны:
Любая компания может просто поднять свой сервер — и подключиться к глобальной сети Matrix или использовать свой сервер для внутрикорпоративных коммуникаций (так называемая «закрытая федерация»).
В последнее время широкую известность получил клиент Element [2], который даже называют «официальным» клиентом (его бывшее название Riot сохранилось только для пирингового веб-мессенджера [3], который уже не имеет отношения к Element).
Уникальные функции Element/Matrix:
Количество пользователей Matrix/Element сейчас растёт во всём мире. В первую очередь потому, что организациям и частным лицам нужна приватность и надёжная безопасность в общении, основанная на открытых стандартах и стойкой криптографии. Как мы уже упоминали, проприетарные решения типа Slack или Microsoft Teams не удовлетворяют современным требованиям.
Например, в 2020 году компания-разработчик Element (New Vector Ltd) выиграла крупнейший в мире единый контракт на программное обеспечение для совместной работы [4] на 500 000 рабочих мест.
Недавно была новость, что Франция официально запретила [5] использовать в школах проприетарные решения от Google и Microsoft. Такая тенденция естественным образом повышает популярность Element/Matrix и других опенсорсных пакетов для коммуникаций, и это очень хорошо с точки зрения свободы и безопасности.
Переход на надёжное опенсорсное ПО для корпоративных коммуникаций происходит и в государственных организациях, и в частных компаниях. Многие отказываются от Slack. В Element даже разработали специальный инструмент миграции Slack Migration Wizard [6], чтобы помогать организациям в переходе конкретно со Slack. Правда, инструмент работает только на их собственном Element Matrix Services (EMS). Возможно, и нам есть смысл подумать о внедрении такого инструмента.
Matrix позволяет разработать защищённую систему обмена сообщениями, которую использует даже в армии Германии (для них разработан опенсорсный криптомессенджер BwMessenger [8]), Франции и других стран. Предполагается, что в ближайшее время Matrix станет стандартной защищённой коммуникационной магистралью для госсектора Германии. То есть это реально самая мощная защита и максимальная надёжность.
Клиент Element практически ни в чём не уступает сверхзащищённым военным системам. Для Matrix существуют десятки клиентов [9], из которых можно выбрать наиболее подходящий.

Если сравнивать все клиенты для Matrix, то Element больше ориентирован на корпоративных заказчиков и поэтому, наверное, лучше подходит для групповых бизнес-коммуникаций. Например, если в других мессенджерах Matrix шифрование необратимо, то в Element можно интегрировать бизнес-системы DLP, поиск по архиву и проч.
Вот технологическое сравнение всех протоколов коммуникации [10] по ряду критериев, включая безопасность, совместимость, функциональность и надёжность. Как легко увидеть, связка Element/Matrix выигрывает практически по всем показателям.

По уровню безопасности к Element/Matrix ближе всего другие опенсорсные системы, которые поддерживают сквозное шифрование, такие как XMPP, NextCloud Talk, Wire и проч.
Внизу списка — проприетарные системы Discord, Slack, Skype, Zoom, Hangouts и тому подобные, где нормальное шифрование отсутствует, а исходный код засекречен.

Если напрямую сравнить функциональность Element/Matrix и Slack, то такое сравнение [11] выглядит удручающе для последнего:

Владение своими данными:

Сравнение по уровню шифрования:

Element по умолчанию использует для всех коммуникаций сквозное шифрование.
Конкретно для управления ключами после первоначального обмена применяется алгоритм двойного храповика [12] (double ratchet), разработанный в 2013 году специально для сквозного шифрования мгновенных сообщений.
Этот самовосстанавливающийся алгоритм создан для обновления и обслуживания коротких сеансов жизни ключей, которые постоянно обновляются у каждого пользователя. Соответственно, ими нужно постоянно заново обмениваться в реальном времени.
Храповик — это что-то вроде вращающейся шестерни, которая с заданной периодичностью производит определённое действие, как механический храповик на анимации вверху. Так вот, данный алгоритм объединяет два криптографических храповика:
Таким образом, два этих события происходят с заданной периодичностью, одно в зависимости от другого, по следующей схеме:

Красные точки соответствуют зубьям основного храповика DH, а сиреневые — зубьям вторичного храповика хеш-функций для формирования ключей (ключи — бирюзовые точки).
Схема надёжная и проверенная, она используется в нескольких криптографических мессенджерах со сквозным шифрованием, в том числе в Signal.
Для других функций шифрования применяется криптографическая библиотека Olm [13] из протокола Matrix, которая прошла независимый аудит и получила положительную оценку [14].

Synapse — это официальный сервер для протокола Matrix. Он разрабатывается организацией Matrix.org Foundation с 2014 года параллельно с совершенствованием самого протокола.
RuVDS [15] предлагает нативный VPS-сервер MATRIX SYNAPSE [16] всего за 899₽ в месяц (719 руб. при оплате за год). Три дня для теста предоставляется бесплатно. Тестовый период можно использовать без ввода данных банковской карты.
Как вариант, можно оплачивать фактически израсходованные ресурсы (от 656,24 руб).
В образе MATRIX SYNAPSE изначально установлены:
Нативные приложения Element выпускаются для Windows, macOS, Android и iOS. Есть также веб-версия [17], которая здесь и установлена:

Главное отличие от Slack — при создании комнаты вы можете указать шифрование всех сообщений. Эта опция будет применяться автоматически, и отключить её впоследствии будет невозможно:

Это сквозное E2E-шифрование сообщений между клиентами, так что их даже теоретически не может прочитать постороннее лицо, получившее доступ к каналу коммуникации.
В итоге — Element/Matrix выигрывает у Slack по всем параметрам:
В общем, оптимальное решение, чтобы избавиться от проприетарного софта и защитить коммуникации.
Если посмотреть на глобальные тенденции в области корпоративных мессенджеров, то сейчас централизованные приложения (Slack, Teams, Discord и т. д.) постепенно вытесняются движением с открытым исходным кодом. Это похоже на то, как Linux вытеснил коммерческие ОС в интернете и в целом сместил баланс сил в сторону опенсорса. Одновременно идёт повсеместное внедрение сквозного шифрования, а Element/Matrix находится во фронтире этого движения.
Telegram-канал с полезностями [24] и уютный чат [25]
Автор:
ruvds
Источник [26]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/informatsionnaya-bezopasnost/380997
Ссылки в тексте:
[1] Matrix: https://matrix.org/
[2] Element: https://github.com/vector-im/element-web
[3] пирингового веб-мессенджера: https://p2p.riot.im/
[4] крупнейший в мире единый контракт на программное обеспечение для совместной работы: https://sifted.eu/articles/element-germany-deal/
[5] официально запретила: https://siecledigital.fr/2022/11/17/le-ministre-de-leducation-nationale-ne-veut-pas-de-microsoft-office-365-ni-de-google-workspace/
[6] Slack Migration Wizard: https://ems.element.io/tools/slack-migration
[7] хостинге: https://www.reg.ru/?rlink=reflink-717
[8] BwMessenger: https://www.bwi.de/news-blog/news/artikel/open-source-matrix-ist-einheitlicher-messenger-standard-fuer-die-bundeswehr
[9] десятки клиентов: https://matrix.org/clients/
[10] технологическое сравнение всех протоколов коммуникации: https://docs.google.com/spreadsheets/d/1-UlA4-tslROBDS9IqHalWVztqZo7uxlCeKPQ-8uoFOU/edit#gid=0
[11] такое сравнение: https://element.io/blog/slack-migration/
[12] алгоритм двойного храповика: https://en.wikipedia.org/wiki/Double_Ratchet_Algorithm
[13] Olm: https://matrix.org/git/olm/tag/?h=1.3.0
[14] положительную оценку: https://pentestreports.com/reports/iSEC/NCC_Group_Olm_Cryptogrpahic_Review_2016_11_01.pdf
[15] RuVDS: https://ruvds.com/ru-rub
[16] VPS-сервер MATRIX SYNAPSE: https://ruvds.com/ru-rub/marketplace/matrix-synapse#order
[17] веб-версия: https://app.element.io/
[18] Matrix API: https://spec.matrix.org/latest/#matrix-apis
[19] Client-Server API: https://spec.matrix.org/v1.5/client-server-api/
[20] Server-Server API: https://spec.matrix.org/v1.5/server-server-api/
[21] Application Service API: https://spec.matrix.org/v1.5/application-service-api/
[22] Identity Service API: https://spec.matrix.org/v1.5/identity-service-api/
[23] Push Gateway API: https://spec.matrix.org/v1.5/push-gateway-api/
[24] Telegram-канал с полезностями: https://inlnk.ru/dn6PzK
[25] уютный чат: https://inlnk.ru/ZZMz0Y
[26] Источник: https://habr.com/ru/post/702494/?utm_source=habrahabr&utm_medium=rss&utm_campaign=702494
Нажмите здесь для печати.