Рубрика развивается при поддержке
Advertisement
Технологии
Милый холод

Путеводитель по Matrix

Все из нас пользуются теми или иным мессенджерами. Самый распространённый в РФ на данный момент WhatsApp и Telegram. Что их объединяет? Они централизованные, а корпорации в обмен за свои услуги собирают и монетизируют ваши данные, пока вы пользуетесь их услугами. Именно здесь на помощь приходит протокол Matrix.

В начале этого года WhatsApp представил новую политику конфиденциальности, которая вызвала много опасений. Следом, Telegram наступает на свободу слова и удаляет материалы со своей площадки. Не пора ли одуматься и сменить мессенджер? Благо есть альтернатива в виде протокола Matrix, который поможет нам значительно уменьшить влияние крупных корпораций и перейти к свободной сети, которая гарантирует приватность.

Протокол Matrix

Matrix — это открытый протокол для децентрализованного общения в реальном времени. Он может быть использован для текстовых сообщений, групповых чатов, аудио/видео звонков и создания ботов. Разрабатывается энтузиастами из Matrix.org Foundation с 2014 года.

Будучи открытым стандартом, Matrix объединил огромное количество энтузиастов. Это означает, что всегда будет хорошая группа людей, увлечённых поддержанием Matrix в рабочем состоянии.

Спецификации протокола, равно как и клиент-серверная часть находятся в открытом доступе, в отличие от Telegram, который в настоящее время в открытом доступе держит только свой клиент, что вызывает немало вопросов по поводу безопасности использования протокола MTProto.

Особенности

Федерация

Принципы федерации уже затрагивались в предыдущей статье «Путеводитель по Fediverse». Что касается Matrix — благодаря федеративному характеру протокола, пользователи с разных серверов могут общаться друг с другом. Серверы могут связываться между собой, образуя тем самым федерацию.

На данный момент в сети Matrix насчитывается свыше 75 тыс. узлов и 40 млн пользователей. Зарегистрироваться можно на любом открытом сервере либо организовать собственный сервер. И этот сервер может быть как открытым, так и закрытым. Например, вы хотите разместить сервер для своих друзей и родственников. Это вполне возможно. И если в будущем вы захотите подключить его к более широкой сети, вы сможете это сделать.

Вы можете запустить собственный сервер Matrix физически у себя дома, возможно, с помощью старого ПК, который валяется у вас без дела, либо на одноплатном компьютере по типу Raspberry Pi. Если вы действительно хотите, вы можете использовать облачное решение и разместить его на VPS. Но реальное преимущество — быть хозяином своего оборудования и размещать его в непосредственной близости от себя.

Репликация

Самая необычная особенность протокола — репликация. Содержимое комнат реплицируются между всеми участвующими серверами, что означает отсутствие единой точки контроля или отказа. Но вы можете создать локальную комнату доступную только для пользователей сервера.

Синхронизация ключей

Выгодно отличает Matrix от других Open Source решений - синхронизация ключей в зашифрованных комнатах, то есть вы можете пересесть с одного устройства на другое и всё равно будете видеть все сообщения.

Шифрование

Трафик сервер-сервер в обязательном порядке заворачивается в TLS. Трафик клиент-сервер шифруется на транспортном уровне.

Более того, Matrix поддерживает сквозное шифрование на основе механизма с открытым исходным кодом, который работает как в групповых, так и в личных чатах. В отличие от публичных каналов, размещённых в Telegram.

Мосты

Ещё одна необычная фича — это мосты (bridges). С их помощью можно собрать в одном месте все свои чаты и общаться с пользователями разных мессенджеров. Собственно поэтому Matrix именно так и назван, ведь он объединяет много разных сервисов в одну матрицу. Часто можно наткнутся на комнаты, где общаются пользователи IRC, XMPP, Telegram.

У Matrix есть несколько официально поддерживаемых мостов. К ним относятся Slack, IRC, XMPP и Gitter. Но поскольку вокруг Matrix существует активное сообщество, есть множество других, из которых можно выбирать. Например, Discord, Facebook Messenger, Telegram, Signal, WhatsApp, VK, SMS, Instagram и многие другие.

Виджеты

С помощью виджетов можно интегрировать сторонние приложения в комнаты. Сейчас доступны виджеты для совместного редактирование документов, календарь и многое другое. Доступны кастомные виджеты. Часто их используют для алертов. Крайне полезный функционал.

Боты

Matrix открыт для создания ботов. Клиент Element из коробки уже поддерживает некоторые из ботов, например, бот для интеграции RSS ленты в комнаты и многие другие.

Проверка устройств

Клиент Element использует проверку устройств с перекрёстной подписью для обеспечения идентификации участников разговора и их устройств, отслеживая каждое устройство, подключённое к зашифрованному разговору. Если к разговору присоединяется новое неизвестное устройство, вы можете использовать проверку устройства, чтобы убедиться, что это именно тот человек. Если вы подозреваете, что доверенное устройство попало в чужие руки, вы можете лишить его доступа к текущему зашифрованному разговору.

Проверка устройств защищает от атак «человек посередине» (Man in the middle).

Свободная регистрация

В популярных мессенджерах доступна регистрация только по номеру телефона, что в свою очередь добавляет как минимум две уязвимости: злоумышленники могут перевыпустить вашу сим-карту и войти в аккаунт. Также номер телефона могут сопоставить с аккаунтом.

Matrix решает эти проблемы: номер телефона и Email при регистрации необязателен, можно использовать только логин и пароль.

В случае, если вы желаете использовать контактные данные для обнаружения вас другими пользователями, в настройках клиента Element можно подключить сервер идентификации, чтобы вас можно было обнаружить по адресу электронной почты или номеру телефона. Использовать функцию обнаружения не обязательно так как вас без труда можно найти по личному адресу, который выглядит как @username:domain.tld

Клиенты

Чтобы пользоваться WhatsApp, вы должны загрузить его и только его, вы привязаны к этому приложению. С Matrix это работает по-другому. И мы подходим к ещё одной сильной стороне Matrix. Поскольку Matrix является открытым стандартом, любой может внедрить протокол в своё приложение.

Это означает, что не существует единого клиента Matrix, существует более чем 150 приложений на базе Matrix, от открытого исходного кода до коммерческих проприетарных решений. Вы получаете огромное количество клиентов для различных платформ, которые фокусируются на различных возможностях, предлагают различные функции и поддерживают разные устройства. Element — один из самых популярных клиентов Matrix.

Element

Вид мобильного клиента Element
matrix.org

Element свободный ‎кроссплатформенный мессенджер, десктопная версия использует фреймворк Electron. Знаю, это не лучшее решение, на этот случай можно использовать веб версию или другой клиент.

Клиент Element обладает всеми современными функциями, которые присущи другим популярным мессенджерам. Конечно, Telegram больше любят за его UI/UX — но Element на данный момент абсолютно ничем не уступает Telegram по функционалу:

Текстовые сообщения

Здесь все стандартно, отметить можно лишь форматирование сообщений с помощью Markdown или визуального редактора, кому как удобно.

Аудио/видео звонки

Аудио/видео звонки реализованы через WebRTC. В одном из последних обновлений добавили голосовые сообщения в клиент Element Android

Комнаты

Комнаты (групповые чаты) можно создавать приватными — только приглашённые пользователи смогут найти и присоединиться либо публичными — любой желающий сможет найти эту комнату и присоединиться к ней. Статус комнаты можно сменить в дальнейшем. Так же можно настроить запрет для пользователей с других узлов, комната будет использоваться только внутренними пользователями на вашем сервере. Админам комнат доступны гибкие настройки доступа и прав пользователя, назначения новых администраторов и модераторов.

Spaces

Если сильно упрощать, это комната для комнат. Или метод группировки комнат и пользователей, похожий на Workspaces у корпоративного мессенджера Slack.

Вид десктопного клиента Element
Vulphere

Заключение

Трудно описать, насколько велик потенциал Matrix в настоящее время и я не знаю, является ли Matrix будущим, но это определённо большая его часть. Уже из этой статьи видно, что существует огромное количество опций, позволяющих вам создать тот сервис, который вы хотите. Вплоть до конкретного клиента. И вы можете настроить всё по своему вкусу.

Экосистема на базе Matrix неумолимо растёт, уже существуют различные стартапы на базе Matrix как Famedly и Beeper. Крупный бизнес в виде Thales, Ericsson, Dataport и Sopra Steria и многие ведущие организации как Red Hat, Mozilla, Uber, Samsung, TADHack, W3F и UpCloud, используют решения на базе Matrix для внутренней коммуникации. Это позволяет им создавать собственные безопасные коммуникационные приложения. В России сеть розничных магазинов Магнит использует Matrix.

В феврале 2021 года, крупнейшая конференция посвящённая свободному программному обеспечению FOSDEM, которая из-за пандемии вынуждена была проходить в режиме онлайн, провела её в Matrix. Онлайн мероприятие посетило больше 30 тыс. пользователей, команда использовала весь функционал дабы пользователям было комфортно — боты для автоматизации создания комнат по расписанию, виджеты с расписанием и для сообщений фильтрующихся по количеству emoji реакций от пользователей, мосты в каждую из более 500 комнат в IRC и XMPP. Matrix явно завоевал open source сообщество!

Ещё хотелось бы убедить читателей, что Matrix открыт для всех, не только для гиков и «анонимусов». Matrix будет полезен абсолютно каждому вне зависимости волнует ли вас тема приватности или нет.

Для ознакомления с Matrix, можно зарегистрироваться на сервере Matrix.org. Для это достаточно скачать приложение Element или воспользоваться веб клиентом.

В сети Matrix есть русскоговорящие комнаты, одна из них ru.[matrix] и spaces Русскоязычные комнаты в которой более 40 комнат. Короче, присоединяйтесь и welcome to the Internet!

0
132 комментария
Популярные
По порядку
Написать комментарий...

Спасибо за обзор, информативно.

После захвата фринода некоторые разработчики и сочувствующие не стали переезжать на либеру, а въехали сразу в матрикс со своими серверами. Там достаточно все живо, что не может не радовать.

Так что дело живет и будет жить.

13
Принятый супер_стар

Аффтар пешы ысчо

12

Это означает, что всегда будет хорошая группа людей, увлечённых поддержанием Matrix в рабочем состоянии.

лол нет

9
Принятый супер_стар

Аргументы?

1

Чел, у тебя аниме на аве.

25

Про телеграм вначале тож так говорили

0

лол нет

1

телега была вложением сотен миллионов долларов ныне свободного российского предпринимателя которого выгнали злые власти за неподчинение себе, а ещё он придумал микроблог вконтакте.

0
Принятый супер_стар

Дуров оплачивает гигантское количество серверов, поэтому плохое сравнение.

0
Принятый супер_стар

Неуместное сравнение, телега изначально создавалась как коммерческий продукт для извлечения прибыли.

0
Принятый супер_стар

есть ли клиент на десктоп не на электроне?

8
Принятый супер_стар

че вы так электрона боитесь

1
Принятый супер_стар

Здесь скорее не страх, а ненависть и отвращение, потому что это говно

33

Потому что это очень требовательный кусок говна. Зачем мне запускать еще одну копию браузера с ограниченным функционалом? Плюс интеграция в windows на каком-то очень странном уровне.

13
Принятый супер_стар

он жрёт кучу памяти, когда как телеграм обычно меньше 100 мб в фоне

1
Принятый супер_стар

Вот полный список клиентов. Cinny выглядит не плохо.

6

Есть, но последний раз когда я проверял (больше полугода, меньше года назад) только Element работал более-менее нормально.
Одни клиенты не могли залогиниться, с другими были какие-то ещё проблемы, ещё пара просто крашилась после того как произошёл логин.

В общем, на текущий момент экосистема не официальных клиентов это по большему счёту какой-то позор.

По сравнению с XMPP на это больно смотреть. XMPP сейчас потерял актуальность, но когда он ещё был актуальным там в целом работали стабильно все клиенты, но были проблемы с совместимостью расширений протокола.

1
Принятый супер_стар

спасибо, в принципе ожидаемо

0

Я пока толкового ничего не видел, если и дальше так пойдет, придется самому садиться за написание.

1

для терминала есть клиенты

0
Принятый супер_стар

Есть даже для Nintendo 3DS клиент 😎

0

Element и правда прекрасен, хотя до установки и использования был определённый скептицизм относительно «ещё одного мессенджера» 👌🏻

Открытие года для меня 😊

5

Telegram наступает на свободу слова

Хороший заголовок для федеральных СМИ)

5
Принятый супер_стар

Пускай цитируют, я не против )

0
Принятый супер_стар

Единственный полностью рабочий клиент - Element на говнотроне, или его веб-версия. Другие либо не умеют в шифрование, либо не умеют в регистрацию (вот это совсем ебануться), либо ещё какие-нибудь важные фичи (типа отсутствия звонков), либо вечный долгострой.

Нормальных мобильных клиентов нет. Ну т.е. есть тот же Element, но он жирный.

Полностью рабочий сервер Synapse тормозной и жрёт дохуищу ресурсов. Большинство публичных серверов тормозят. Dendrite жрёт гораздо меньше, но не готов (у него не было поддержки cross-signing, что пиздец, как сейчас - не знаю).

Ну нахуй этот долгострой. Я его уже лет 5 палкой тыкаю, и ощущения практически не изменились. Всё так же не готов, всё так же обещают, что он прям все мессенджеры поимеет. Прям как вендекапец.

4

Ну так ты возьми все в свои руки и допили клиент. Делов-то.

1
Принятый супер_стар

И почему я должен это делать?

2
Принятый супер_стар

Веб версия Element вполне себе нормальная, а вот остальные клиенты в роли догоняющих, в этом согласен. Однако лучше уж это, чем всякие телеги и ватсапы. С мобильным клиентом проблем тоже не возникает, даже старые девайсы справляются, не говоря уже о флагманских устройствах

Если сравнивать нынешний Synapse, прогресс прослеживается и отжирать он стал гораздо меньше. А Dendrite ещё сыроват, да.

Однозначно не всем подойдёт Matrix, но в отсутствии альтернатив это наилучший вариант из того что я пробовал.

1

Кого ты пытаешься провести, вот единственный путеводитель по матрице:

4
Принятый супер_стар

хаха я ждал этой шутки )

0

А такую?

0

новая замануха от ФБР?

2

Комментарий удален по просьбе пользователя

4

заманухуя

1

простите

0

ну это если ты чист перед американским законодательством

0

Сколько за рекламу занесли?
Удивлен отсутствием плашки "это партнерский материал"

0
Принятый супер_стар

Откуда у некоммерческой организации, существующей за счёт пожертвований сообщества деньги на рекламу.

1

Очень вялая отмазка. Эта "некоммерческая" организация еще и не нанимает, наверное, людей, и вообще существует только на добром слове.
Риот чат нормально так пиарился, теперь вот в элемент переназвались, а суть осталась та же, любая компания рекламирует свой продукт, иначе не заработать деньги.
В твоем посте "обзор" протокола у которого 150 чат клиентов случайным образом пара страниц посвящена только элементу и ссылочке на его скачивание, кек

–1

Matrix решает эти проблемы: номер телефона и Email при регистрации необязателен, можно использовать только логин и пароль.

Хм. А как залогиниться, если забыл пароль или логин?

0
Принятый супер_стар

В этом случае труба, никак.

3

используй те же что и от телеги

0

В телеге логонишься через номер телефона и кода. там нет пароля и логина

0

Ну тут уж надо выбрать для себя всё-таки что важнее: не указывать почту или забывать пароли.

0
Принятый супер_стар

Не так часто как может показаться, админы следят за порядком на своих серверах и спам это редкость.

1

Непонятна пока устойчивость протокола к блокировкам. То что свой сервер поднять можно это хорошо, но поможет ли это от DPI.

1

От хорошего (в смысле мощного) DPI вообще мало что поможет.
Но децентрализованные сервисы чуть более устойчивы потому что за толпой гоняться сложнее, чем за одним.

Но именно "чуть". Ничто не мешает РосКомНадзору снова слететь с катушек и начать новые ковровые бомбардировки.

Всё-таки Matrix не про обход блокировок, а про децентрализованность и частично приватность. А решать проблемы соединения нужно другими способами.

0

Matrix / Element сейчас лучший из децентрализованных, и уже во многом лучший вообще, на мой взгляд. Остаются мелкие недочёты, конечно. Единственное, что лично мне доставляет неудобство — пока нельзя локально переименовывать контакты, но спецификация под это уже пилится.

Из крупных открытых решений Signal плохо годится для больших групп и пока привязан к номеру телефона, Wire ушёл в корпоративный сегмент. WhatsApp, Telegram и т.п. — закрытые и централизованные, да и привязаны к номеру телефона. Сравнить можно здесь: https://securemessagingapps.com (основной недостаток Element сейчас, почему они его пока не могут рекомендовать, как Signal — отсутствие независимого аудита). ред.

1

Кому интересно потестировать, создал тж-чат: https://matrix.to/#/#tjournal:matrix.org

1
Принятый супер_стар

А как же регистрация по паспорту?

0
Принятый супер_стар

Это неприменимо в децентрализованной среде.

1
Принятый супер_стар

Значит законом запрещено

3

номер телефона и Email при регистрации необязателен, можно использовать только логин и пароль

И сколько раз за день там спам боты написывают? 50?

0

Ни разу не писали за пару лет пользования.

1

Про signal напишите, че там как с уголовными делами обстоит?

0

Хорош для гиков, как обычно. Для масс не взлетит.

0

А в этом есть необходимость?

0
Читать все 132 комментария
null