Skip to content

Архитектура

Каждый компонент и что он видит

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

У PrivaMesh нет базы аккаунтов и хранилища сообщений. Но есть fee worker, оплачивающий транзакции, RPC-эндпоинт под управлением третьей стороны и публичная сеть, которая хранит шифротекст постоянно. Все три — в таблице ниже.

Путь сообщения

  1. 01

    Ваш iPhone

    Шифрует и дополняет сообщение, выводит одноразовый адрес

  2. 02

    Fee worker

    Оплачивает комиссию, тратит один слепой токен

  3. 03

    RPC-эндпоинт

    Отправляет транзакцию в сеть

  4. 04

    Solana

    Несёт дополненный шифротекст на одноразовый адрес

  5. 05

    Его iPhone

    Ищет свои одноразовые адреса и расшифровывает локально

Что наблюдает каждый компонент

Компоненты PrivaMesh, их операторы и что каждый видит и хранит
КомпонентКто управляетЧто видитЧто хранитЗаменяем
iOS-клиентЕдинственное место, где вообще существуют открытый текст и ключи. Ключи лежат в iOS Keychain за Face ID и не синхронизируются с iCloud.ВыОткрытый текст, ключи, контактыВсё, только на устройствеДа
Fee workerОплачивает сетевую комиссию, чтобы вам не нужно было держать SOL. Это единственная машина, которую мы запускаем, и честная граница дизайна. Слепые токены не дают связать отправку с покупкой.PrivaMeshАккаунт, время запроса, потраченный слепой токенТолько рабочие логи — ни текста, ни получателяЧастично
Solana RPCЗаменяем и разворачивается самостоятельно. Именно этот компонент лучше всего видит вашу сетевую активность и меньше всего нам подконтролен.Сторонний провайдерВаш IP, время запросов, отправляемые транзакцииТо, что решит логировать провайдерДа
Сеть SolanaТранспорт. Всё записанное — это дополненный шифротекст на одноразовый адрес, но записывается он навсегда.Никто конкретноШифротекст, одноразовые адреса, время транзакцийПостоянно и публичноНет
StoreKitНеизбежен для покупок внутри приложения на iOS. Слепые токены — то, что не даёт связать покупку с вашей перепиской.AppleВашу покупку и Apple IDПо правилам AppleНет

Зачем нужен fee worker

Каждое сообщение — это транзакция Solana, а транзакции стоят комиссию. Заставлять пользователя держать SOL ради отправки сообщения — это и худший продукт, и худшая история про приватность: пополнение кошелька само по себе связываемое действие. Поэтому комиссию оплачивает воркер.

Отсюда очевидный вопрос: узнаёт ли спонсор, кто с кем переписывается? Нет. Приложение один раз доказывает подписку и получает пул слепых RSA-подписей; каждая отправка тратит один токен. Воркер может проверить, что токен действителен и не потрачен, но не может связать его ни с покупкой, ни с другим токеном. Он видит, что некий аккаунт оплатил некую отправку в некое время.

Чего этот дизайн не решает

RPC-эндпоинт видит ваш IP и время запросов. Сеть хранит шифротекст постоянно. Ничто выше этого не скрывает — поэтому оба в таблице и поэтому существует страница ограничений. Если в вашей модели угроз есть наблюдатель на сетевом уровне, используйте VPN или Tor и свой RPC.

Frequently asked questions

PrivaMesh запускает какие-нибудь серверы?

Один. Fee worker оплачивает комиссию сети Solana за каждую транзакцию, чтобы вам не приходилось держать SOL. Он видит аккаунт и время, но никогда не видит открытый текст или получателя. Базы аккаунтов и хранилища сообщений нет.

Что видит RPC-провайдер?

Ваш IP-адрес, время запросов и отправляемые транзакции. Это компонент с самым ясным взглядом на вашу сетевую активность — поэтому он заменяем и его можно развернуть самостоятельно.

Что будет, если fee worker отключится?

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

Может ли Apple видеть, кому я пишу?

Apple видит, что вы купили подписку, и с какого Apple ID. Она не видит ни сообщений, ни контактов. Слепые токены — именно то, что не даёт связать покупку с вашей активностью отправки.

Читать дальше