Домой Софт Мессенджер White Noise: особенности работы протокола Marmot

Мессенджер White Noise: особенности работы протокола Marmot

Разбираем техническую архитектуру приложения White Noise: Rust, Flutter, протокол Marmot и инфраструктура NOSTR.

Мессенджер White Noise: особенности работы протокола Marmot
Мессенджер White Noise: особенности работы протокола Marmot — иллюстрация к материалу. Источник: linux.org.ru

White Noise — это кроссплатформенный мессенджер для Android и iOS, работающий на базе протокола Marmot. Приложение предоставляет пользователям функционал для ведения как личных переписок, так и групповых чатов.

Техническая реализация Marmot опирается на стандарт MLS (Message Layer Security). В качестве транспортного уровня используются две технологии:

  • NOSTR (Notes and Other Stuff Transmitted by Relays) — сеть общедоступных серверов-релеев для обмена текстовыми данными (JSON-файлами). Изначально созданная для децентрализованных социальных сетей, где авторизация происходит через криптографические ключи, а не традиционную регистрацию, эта инфраструктура идеально подошла для White Noise.
  • Blossom-сервера — специализированные узлы, предназначенные для хранения и передачи бинарных данных.

Главная особенность реализации заключается в том, что практически вся логика работы вынесена на сторону клиента, а Marmot обеспечивает сквозное (e2e) шифрование всех передаваемых сообщений. С точки зрения архитектуры, ядро мессенджера написано на языке программирования Rust, а графический интерфейс реализован с использованием фреймворка Flutter.

Источник: https://www.linux.org.ru