Выпуск децентрализованной коммуникационной платформы Matrix 1.0
12 июня 2019 года
Представлен первый стабильный релиз протокола для организации децентрализованных коммуникаций Matrix 1.0 и связанных с ним библиотек, API (Server-Server) и спецификаций. Сообщается, что не все задуманные возможности Matrix описаны и реализованы, но основной протокол полностью стабилизирован и достиг состояния, пригодного для использования в качестве основы для разработки независимых реализаций клиентов, серверов, ботов и шлюзов. Наработки проекта распространяются под лицензией Apache 2.0.
Одновременно, опубликован сервер для обмена сообщениями Synapse 1.0.0 с эталонной реализацией протокола Matrix 1.0. Отмечается, что основное внимание при подготовке Synapse 1.0 было уделено корректности реализации протокола, безопасности и надёжности. Synapse теперь вышел из стадии бета-тестирования и готов для повсеместного использования. Код Synapse написан на языке Python и может использовать для хранения данных СУБД SQLite или PostgreSQL. Synapse 1.0 является последним выпуском с поддержкой Python 2.x.
По умолчанию для создания новых чатов применяется 4 версия протокола Room, но опционально доступна и пятая(недоступная ссылка) версия с поддержкой ограничения времени жизни серверных ключей. При переходе с прошлых выпусков следует иметь в виду, что для подключения к общей децентрализованной сети теперь требуется получение корректного TLS-сертификата. В качестве клиентов можно использовать Riot (доступен для Linux, Windows, macOS, Web, Android и iOS), Weechat (CLI на Lua), nheko (С++/Qt), Quaternion (С++/Qt) и Fractal (Rust/GTK).
Из ещё не стабилизированных в Matrix 1.0 возможностей упоминаются редактирование отправленных сообщений (поддерживается в Synapse 1.0 и Riot, но не включено по умолчанию), реакции, нитевидные обсуждения, перекрёстная верификация пользователей, Live-статистика по чатам. Из предстоящих работ в реализации сервера планируется провести оптимизацию производительности и снизить потребление памяти. Помимо эталонного сервера на языке Python также развиваются экспериментальные реализации Ruma (Rust) и Dendrite (Go).
Платформа для организации децентрализованных коммуникаций Matrix развивается как проект, использующий открытые стандарты и уделяющий большое внимание обеспечению безопасности и приватности пользователей. Matrix обеспечивает сквозное (end-to-end) шифрование на базе собственного протокола, использующего в том числе алгоритм Double Ratchet (часть протокола Signal). Оконечное шифрование применяется как при прямом обмене сообщениями, так и в чатах (применяется механизм Megolm). Реализация методов шифрования прошла аудит в организации NCC Group. В качестве транспорта применяется HTTPS+JSON с возможностью использования WebSockets или протокола на базе CoAP+ Noise.
Система формируется как содружество серверов, которые могут взаимодействовать между собой и объединяются в общую децентрализованную сеть. Сообщения реплицируются по всем серверам, к которым подключены участники обмена сообщениями. Сообщения распространяются по серверам по аналогии с тем как коммиты распространяются между Git-репозиториями. В случае временного отключения сервера сообщения не теряются, а передаются пользователям после возобновления работы сервера. Поддерживаются различные варианты идентификаторов пользователя, включая email, номер телефона, учётную запись в Facebook и т.п.
В сети отсутствует единая точка отказа или контроля за сообщениями. Все серверы, которые охватывает обсуждение, равноправны между собой. Любой пользователь может запустить собственный сервер и подключить его к общей сети. Возможно создание шлюзов (Архивная копия от 6 октября 2020 на Wayback Machine) для взаимодействия Matrix с системами на базе других протоколов, например, подготовлены сервисы для двусторонней отправки сообщений в IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp и Slack.
Помимо мгновенного обмена текстовыми сообщениями и организации чатов, система может использоваться для передачи файлов, отправки уведомлений, организации телеконференций, совершения голосовых и видео звонков. Matrix позволяет использовать поиск и неограниченный просмотр истории переписки. Поддерживаются также такие расширенные возможности как уведомление о наборе текста, оценка присутствия пользователя в online, подтверждение прочтения, push-уведомления, поиск на стороне сервера, синхронизация истории и состояния клиентов.
Для координирования разработки проекта на днях создана некоммерческая организация Matrix.org Foundation, которая будет гарантировать независимость проекта, развивать связанные с Matrix стандарты и выступать в роли нейтральной площадки для совместного принятия решений. Во главе Matrix.org Foundation поставлен совет из пяти директоров, не связанных с коммерческой экосистемой, пользующихся авторитетом в сообществе и призванных отстаивать миссию проекта.
В число директоров вошли Джон Кроукрофт ( Jon Crowcroft, один из пионеров децентрализованных коммуникаций), Мэтью Ходжсон (Matthew Hodgson, сооснователь Matrix), Амандина Ле Папе (Amandine Le Pape, сооснователь Matrix), Росс Шульман (Ross Schulman, юрист из Open Technology Institute, специализирующийся на интернете и децентрализованных сиcтемах), Юта Штайнер (Jutta Steiner, сооснователь компании Parity Technologies, занимающейся технологиями на базе блокчейна).
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.