Частный семейный проект
EmailMessenger
Семейный мессенджер с передачей зашифрованных сообщений и вложений через электронную почту. Защита приложения пин кодом. Полная конфиденциальность.
MVP проходит активное тестирование · Android
EmailMessenger использует SMTP/IMAP Яндекс Почты для передачи содержимого сообщений, защищённого шифрованием на уровне приложения. У приложения нет собственного сервера сообщений или облачного хранилища истории переписки.

РольСамостоятельный проект
ПлатформаAndroid
СтатусMVP проходит активное тестирование
АрхитектураMLS over SMTP / IMAP
Зачем я создал проект
Личное общение через доступную почтовую инфраструктуру
EmailMessenger появился как практический проект для общения семьи: мессенджер для Android использует существующую почтовую инфраструктуру и защищает содержимое сообщений на уровне приложения.
Как это работает
Зашифрованные данные приложения передаются по электронной почте
- 01Приложение EmailMessenger для AndroidСообщение составляется на устройстве
- 02Шифрование MLSЗащита содержимого на уровне приложения
- 03Зашифрованные данныеПодготовка к передаче по почте
- 04Yandex Mail SMTP / IMAPСуществующая почтовая инфраструктура
- 05Данные полученыЗащищённое содержимое доходит до получателя
- 06Расшифрование MLSСодержимое открывается в EmailMessenger
- 07Приложение EmailMessenger для AndroidПолучатель видит сообщение
Нет собственного сервера сообщенийУ приложения также нет собственного облачного хранилища истории переписки.
Используется внешний почтовый сервисЯндекс Почта передаёт защищённые данные приложения через SMTP и IMAP.
Ограничение защиты метаданных: почтовый провайдер по-прежнему видит такие метаданные передачи, как отправитель, получатель, время и размер сообщения. Содержимое сообщений и вложений в открытом виде провайдеру недоступно.
Проверка контакта вне почтового канала
Проверка по четырём словам через отдельный канал

- 01Введите адрес электронной почты контакта.
- 02EmailMessenger создаёт приглашение.
- 03На экране появляются четыре случайных слова.
- 04Передайте слова отдельно, например лично или по телефону.
- 05Получатель вводит слова.
- 06OPAQUE проверяет секрет до завершения установки защищённого соединения.
- Четыре слова не передаются по электронной почте.
- Срок действия приглашения: 24 часа.
- После трёх неверных вводов попытка проверки становится недействительной.
Требуется подтверждение пользователя: доверие не устанавливается автоматически.
Личные чаты со сквозным шифрованием
Каждый личный чат внутри приложения представлен как группа MLS из двух участников. Это обеспечивает сквозное шифрование содержимого сообщений между двумя пользователями на уровне приложения. Групповые чаты пока не поддерживаются.
- Текстовые сообщенияОтправка и получение текстовых сообщений.
- ЭмодзиПоддержка эмодзи в сообщениях.
- Многострочные сообщенияДлинные сообщения можно писать в несколько строк.
- Локальная историяИстория переписки хранится локально на устройстве.
- Непрочитанные сообщенияВ списке чатов видны непрочитанные сообщения.
- Повтор после ошибокАвтоматический повтор при сбое передачи.
- Защита от дубликатовПредотвращение повторной доставки сообщений.
- Нейтральные уведомленияУведомления не показывают имя отправителя и содержимое сообщения.

Технологии
Мессенджер для Android с криптографическим ядром на Rust
React NativeОснова мобильного приложения с bare workflow
TypeScript / ReactПользовательский интерфейс и логика приложения
Kotlin / Android SDKИнтеграция с платформой, жизненный цикл, хранение данных, почта и уведомления
RustКриптографическое ядро для критичных к безопасности операций
OpenMLSСостояние MLS и защищённые личные чаты на основе RFC 9420
OPAQUEПроверка секрета приглашения из четырёх слов и привязка идентичности
Android KeystoreЗащита неэкспортируемых ключей средствами платформы
WorkManagerФоновая обработка по мере возможности и зашифрованное временное хранение в заблокированном состоянии
IMAP / SMTPПередача через Яндекс Почту для получения и отправки
Криптографический профиль
RFC 9420
Архитектура обеспечивает сквозное шифрование содержимого сообщений на уровне приложения. Метаданные электронной почты этой защитой не охвачены.
Текущие возможности
Доступно сейчас
- Android
- Личные контакты
- Текст и эмодзи
- Одно фото или файловое вложение до 15 МБ
- Локальная история
- Защита ПИН-кодом
- Проверка приглашения
- Имя и аватар профиля
Пока недоступно
- Группы
- iOS / компьютеры / веб
- Несколько учётных записей или устройств
- Резервное копирование / восстановление
- Поиск
- Подтверждения прочтения
- Реакции / редактирование / пересылка / цитирование
Создан и проверяется в реальном использовании
EmailMessenger — MVP, который активно тестируется на реальных устройствах Android. Разработка продолжается; проект пока не представлен как полностью готовый к промышленной эксплуатации.

