Политика приватности GasApp
Пункт M8 «Написать Data Retention Policy и Privacy Policy» (раздел 22), MASVS PRIVACY-2.1.
Редакция: 2026-10-10.
⚠️ GasApp не выпущен и не прошёл независимый аудит. Этот документ описывает, как приложение устроено сейчас, а не обещание на будущее. Пока аудита нет, всё написанное ниже стоит ровно столько, сколько стоит возможность проверить это по исходному коду — ссылки на код даны там, где утверждение можно сверить.
Коротко
- Мы не собираем о вас ничего, что не нужно для доставки сообщений.
- Мы не можем прочитать вашу переписку.
- Мы не знаем ваш номер телефона.
- Чтобы создать аккаунт, нужен адрес почты: на него приходит код. Сам адрес мы не храним — только его хеш. Письмо отправляет почтовая служба, и она адрес видит.
- Мы не записываем ваш IP-адрес.
- В приложении нет аналитики, рекламы и краш-репортинга.
- Единственное, что уходит третьей стороне, — ваш адрес почты и код подтверждения: почтовой службе, которая доставляет письмо.
Что изменилось 2026-10-07. До этой редакции регистрация не спрашивала адрес почты, и политика говорила «не спрашиваем адрес почты». Теперь спрашивает. Продукт тогда же переименован из AEGIS в GasApp, и в нём появились каналы.
Что нужно, чтобы пользоваться
Имя пользователя. Вы придумываете его сами. Оно не связано с номером телефона или настоящим именем и никак не проверяется.
Адрес почты. Нужен один раз — чтобы создать аккаунт. Приложение просит сервер прислать на него шестизначный код; аккаунт создаётся только с верным кодом, и на один адрес — один аккаунт.
🔐 Что происходит с адресом — по шагам, без округлений:
- Сервер видит адрес в момент, когда вы просите код и когда вводите его. В этот момент он знает и адрес, и имя, которое вы выбрали.
- Сервер хранит только хеш адреса (HMAC-SHA-256 на ключе, который есть только у оператора). По дампу базы без этого ключа адрес не прочитать. Хеш нужен, чтобы не дать завести второй аккаунт на тот же адрес.
- ⚠️ Оператор, у которого есть ключ, может проверить, зарегистрирован ли известный ему адрес, и к какому имени он относится: посчитать тот же хеш и сравнить. Перечислить адреса всех пользователей он не может — только проверить конкретный.
- ⚠️ Почтовая служба видит адрес, время и сам код, и хранит это в своих журналах по своим правилам. Это не сервер GasApp, и удалить что-либо оттуда мы не можем. Какая служба используется, решает оператор сервера.
- Код живёт 15 минут и выдерживает пять неверных вводов; хеш кода стирается при регистрации либо через час после истечения.
- На телефоне адрес лежит в зашифрованной базе только пока регистрация не закончена, и стирается, когда аккаунт создан.
- Писем, кроме кода, мы не шлём. Рассылок, напоминаний и уведомлений на почту нет.
- 🔐 По почте нельзя ни войти, ни вернуть аккаунт. Адрес не заменяет ключ восстановления: потеряв телефон и ключ, вернуть аккаунт по почте невозможно — и никто, завладев вашим ящиком, не получит ваш аккаунт.
Если вам важно, чтобы аккаунт не был связан с вашей основной почтой, заведите для него отдельный адрес: связь «адрес ↔ имя» видит сервер в момент регистрации и почтовая служба — в письме.
🔐 Регистрация не требует номера телефона. Это не удобство, а решение модели угроз: номер связывает аккаунт с документом, удостоверяющим личность, и делает список контактов пригодным для сопоставления.
Камера — только если вы сканируете QR-код. Разрешение запрашивается в момент сканирования (добавить собеседника или сверить safety number). Кадры разбираются на телефоне, не сохраняются и никуда не отправляются. Без камеры приложение работает: собеседника можно найти по имени.
PIN. Шесть цифр. Мы его не знаем и не можем узнать: он не передаётся на сервер и не хранится на устройстве. Из PIN выводится ключ, которым зашифрована база на телефоне; неверный PIN даёт неверный ключ, и база не открывается. Отдельной проверки «верен ли PIN» не существует — она означала бы хранить где-то признак верного PIN, то есть подсказку для перебора.
Что видит сервер
| Видит | Не видит |
|---|---|
Что у аккаунта alice есть устройство | Кто такая Алиса |
| Что для устройства есть недоставленный конверт | Что в нём |
| Размер конверта (с точностью до бакета дополнения) | От кого он |
| Публичные ключи устройства | Приватные ключи |
| Что устройство сейчас на связи | С кем оно переписывается |
| В каком месяце аккаунт был активен | В какой день и час |
| Хеш адреса почты, на который создан аккаунт | Сам адрес (после регистрации он не хранится) |
| Есть ли у аккаунта премиум и какие каналы он создал | Что в каналах написано и кто их читает |
🔐 Сервер не знает отправителя ни одного сообщения. Право на отправку доказывается ключом доступа получателя, а не подписью отправителя. Для первого сообщения новому собеседнику, пока ключа доступа ещё нет, вместо него решается задача proof-of-work над этим самым конвертом.
До 2026-09-24 первое сообщение уходило за подписью вашего устройства, и для первого контакта сервер видел, кто кому написал. Так было сказано и здесь.
🔐 Ключ собеседника, которого вы нашли по имени, называет сервер, и сервер мог бы назвать свой. Поэтому приложение сверяет его с открытым журналом ключей: писать можно, если тот же ключ стоит в журнале под этим именем не меньше суток (у аккаунтов старше суток — сразу), а владелец каждого имени сам проверяет свою запись. Подмену сервер вынужден показать всем, и её заметят. Запросы к журналу анонимны: сервер не узнаёт, чьё имя проверяют. Самая надёжная проверка — отсканировать QR-код собеседника при встрече: в коде его ключ, и он приходит мимо сервера.
⚠️ Последняя строка — про присутствие, и её стоит прочитать внимательно. Чтобы сообщение приходило сразу, а не по обновлению экрана, приложение держит соединение с сервером, пока открыт список чатов или экран переписки. Соединение идёт по идентификатору устройства, а не чата: какую переписку вы открыли, сервер не узнаёт.
Но он видит, что какая-то открыта: когда соединение появилось, когда пропало и сколько держалось. По этому следу восстанавливается распорядок дня — и то, что двое бывают на связи одновременно. Шифрование содержимого от этого не защищает: это не содержимое.
Постоянного фонового соединения нет ни в одной сборке. Фоновая проверка уведомлений — короткий запрос раз в четверть часа (см. «Push-уведомления» ниже).
Полный перечень того, что хранится и сколько, — docs/legal/data-retention-policy.md.
Чего мы не делаем
- IP-адрес можно скрыть. По умолчанию приложение соединяется с сервером напрямую, и сервер видит ваш IP-адрес, пока соединение открыто (но не записывает его — см. ниже). Включите Tor, встроенный в само приложение, — при регистрации или в настройках сети, — и сервер будет видеть адрес узла Tor, а не ваш. 🔐 Честно о цене прямого соединения: запросы, которые приложение намеренно шлёт без подписи устройства (поиск имени, проверка ключей по журналу, чтение открытого канала, отправка сообщения без указания отправителя), приходят с того же адреса, что и подписанные. Сервер их не записывает, но в момент запроса сопоставить мог бы. С Tor такие запросы идут отдельными цепочками, и сопоставить их нечем.
- Не узнаём, кто проверяет ключи. Журнал ключей (по нему приложение проверяет ключ собеседника без личной сверки) опрашивается без подписи устройства, а при включённом Tor — ещё и отдельной цепочкой. В журнале — хеш имени и открытый ключ, которые сервер хранит и так.
- Не записываем IP-адреса. Приложение адресов не видит вовсе: его ограничители частоты работают от имени пользователя и идентификатора устройства. Балансировщик перед ним адрес видит — иначе перебор имён было бы нечем остановить, — но держит его только в оперативной памяти ограничителя; журнал доступа выключен (
server/deploy/РАЗВЁРТЫВАНИЕ.md). На диск адрес не попадает и до серверов приложения не доходит. - Не ведём аналитики. В приложении нет ни одного стороннего SDK аналитики, рекламы или краш-репортинга; это проверяется в CI (
tools/check-no-telemetry.sh). - Не читаем метаданные ради «улучшения сервиса». Такой строки в этой политике не будет.
- Не запрашиваем доступ к контактам, галерее, микрофону «на всякий случай». Файлы выбираются системным диалогом, который отдаёт приложению ровно указанный файл и ничего больше.
- Не передаём данные третьим лицам — кроме одного случая. Письмо с кодом подтверждения отправляет почтовая служба, и она получает ваш адрес почты (см. «Адрес почты» выше). Больше передавать нечего.
Каналы
Канал — лента записей одного автора: текст, фото и файлы. Читать канал может каждый, у кого есть ссылка на него; писать, править и удалять записи — только автор.
Что сервер знает о канале: что канал есть, какому аккаунту он принадлежит, сколько в нём записей и файлов, их размер (с точностью до сетки дополнения), час публикации каждой записи, какие записи правились и какие удалены.
Чего сервер не знает о канале без публичного имени:
- 🔐 название, описание, аватар, текст записей и содержимое файлов — он хранит их шифротекстом. Ключ чтения лежит в ссылке на канал, а ссылка на сервер не попадает.
Подписка. Когда вы добавляете канал, приложение подписывает на него ваш аккаунт. 🔐 Сервер знает, на какие каналы подписан аккаунт, до какой записи вы дочитали и какие реакции поставили: подписка, отметка о прочтении и реакция идут за подписью вашего устройства. Так сделано, чтобы подписчиков, просмотры и реакции нельзя было накрутить: один аккаунт — один подписчик. Когда вы убираете канал с телефона, приложение отписывает аккаунт, и сервер стирает подписку и реакции.
Сами записи и файлы канала приложение забирает без подписи: кто именно в данный момент читает ленту, сервер по запросу не видит (при прямом соединении без Tor он видит IP-адрес).
Администраторы. Владелец канала может назначить администраторов — они публикуют, правят и удаляют записи. 🔐 Администратор серверу известен, как и владелец: сервер должен знать, от каких аккаунтов принимать записи. Чтобы стать администратором, вы показываете владельцу заявку; в ней идентификатор вашего устройства.
Публичный канал. Автор может дать каналу @имя, чтобы его находили поиском. Для этого приложение автора отдаёт серверу ссылку на канал — а в ней ключ чтения. 🔐 Публичный канал сервер прочитать может: название, записи и файлы. Приложение говорит об этом автору до включения. Если публичное имя убрать, сервер перестаёт отдавать ссылку, но то, что он уже узнал, не забывается. Подделать записи сервер не может и у публичного канала: ключа подписи автора у него нет.
Закрытый канал. Владелец может сделать канал закрытым: тогда в него входят по заявке, а записи сервер отдаёт только участникам. Ссылка такого канала ключа чтения не несёт — по ней подают заявку. 🔐 Когда вы подаёте заявку, сервер и те, кто ведёт канал, узнают имя вашего аккаунта; сервер хранит заявку, пока на неё не ответят. Одобряя, владелец или администратор передаёт вам ключ чтения шифротекстом — сервер его не видит. Сервер знает, кто участник закрытого канала, кому отказали в доступе после удаления, и называет тем, кто ведёт канал, имена заявителей и подписчиков.
🔐 Когда из закрытого канала удаляют подписчика, ключ чтения канала меняется: новый ключ получают только оставшиеся, и новые записи удалённый прочесть не может. ⚠️ То, что вышло до удаления, а также название и описание канала он мог прочесть и раньше — этого удаление не отменяет. Сервер знает, сколько раз у канала меняли ключ; самих ключей он не получает.
Боты. Аккаунт с премиумом может завести ботов — отдельные аккаунты, которые ведёт программа владельца. 🔐 Сервер хранит, какому аккаунту принадлежит какой бот, пока бот существует. Адреса почты у бота нет. Ключи бота создаёт его программа; ни сервер, ни приложение владельца их не получают. ⚠️ Когда вы пишете боту, ваше сообщение читает его программа — и тот, кто её запустил. Имя на bot значит только то, что аккаунт заведён как бот.
⚠️ Чего каналы не обещают. Канал — не личная переписка:
- ссылка — это и есть доступ. Кто её получил, читает весь канал, прошлые записи и будущие; отозвать её у одного читателя нельзя;
- сервер может не отдать записи (все или последние), правку или отметку об удалении, но не может подделать запись, переставить записи местами, вернуть прежний текст после правки или сам «удалить» запись у читателей — всё это подписывает автор;
- счётчики подписчиков, просмотров и реакций — статистика сервера. Их никто не подписывает, и сервер мог бы показать любые числа;
- удаление записи стирает её с сервера и из приложений читателей при следующей синхронизации. Копии, сделанные вне приложения, остаются;
- ключи каналов, которые вы читаете и ведёте, входят в резервную копию. Кто получит файл копии и ключ восстановления, тот сможет читать эти каналы и писать в те, что вы ведёте;
- снятый администратор больше не может публиковать, но в сговоре с сервером мог бы переписать записи, вышедшие до его снятия;
@имяпринадлежит серверу: к какому каналу оно ведёт, решает он. Если важно попасть именно в канал конкретного автора, сверьте ссылку с автором напрямую;- 🔐 когда вы читаете канал, сервер видит запрос к этому каналу — и, при прямом соединении (по умолчанию), ваш IP-адрес. Со встроенным Tor он видит выходной узел Tor;
- владелец канала серверу известен: это аккаунт, который его создал.
Премиум. Создавать каналы могут только аккаунты с премиумом. Это пометка на аккаунте, которую оператор сервера ставит вручную; оплаты в приложении нет, платёжных данных мы не получаем. Сервер хранит саму пометку — и больше ничего о том, почему она выдана.
Tor, мосты и службы Tor Project
Встроенный Tor соединяется с сетью Tor — добровольными узлами, которые держат не GasApp. Входной узел (или мост) видит ваш IP-адрес, но не то, куда идёт соединение; дальше соединение ведёт к onion-сервису сервера GasApp, и выходной узел не участвует вовсе, если сборка знает этот адрес.
Там, где Tor блокируют, приложение само подключается через мосты:
- Мосты, встроенные в сборку, если они есть, — их держит проект.
- Свежие мосты от Tor Project. Если сеть Tor недоступна напрямую, приложение один раз (не чаще раза в десять минут) спрашивает мосты у moat — службы Tor Project, которой так же пользуется Tor Browser. Запрос идёт через CDN под видом обращения к крупному сайту. Tor Project видит ваш IP-адрес и то, что с него спросили мосты; страна, имя пользователя и что-либо ещё о вас не передаются. Ответ — список адресов мостов — хранится на устройстве, вне зашифрованной базы: он нужен для подключения ещё до ввода PIN и выдаёт лишь то, что и так видно из установленного приложения, — что оно пользуется мостами Tor.
- Мосты, которые вы введёте сами.
Сервер GasApp во всём этом не участвует и о мостах не знает.
Блокировка и жалобы
Блокировка — только на вашем телефоне. Сообщения заблокированного собеседника принимаются и молча отбрасываются; он об этом не узнаёт. Сервер о блокировке не знает: узнай он, узнал бы, что вы были знакомы.
Жалоба уходит оператору сервера. 🔐 Она раскрывает серверу, кто пожаловался и на кого — без этого жалобы нельзя ни проверить, ни посчитать. Доказательство — сертификат отправителя с его конверта, подписанный самим сервером: пожаловаться можно только на того, кто вам действительно писал. Переписка в жалобу не уходит — её у сервера нет. Собеседник о жалобе не узнаёт.
Оператор видит в админ-центре имя аккаунта, на который пожаловались, и число разных жалобщиков — не их имена. Жалоба хранится, пока существуют оба аккаунта, или до решения оператора. Решение (удаление аккаунта или отклонение жалоб) записывается в журнал оператора без имени: что сделано, почему, сколько было жалобщиков. Из этого журнала составляется отчёт о прозрачности.
Жалоба на канал тоже уходит оператору — вместе с именем вашего аккаунта и выбранной причиной. 🔐 Канал без публичного имени оператор прочитать не может. Поэтому приложение спрашивает, приложить ли к жалобе ссылку канала — ключ чтения: согласитесь — оператор откроет канал и увидит записи; нет — увидит только сам факт жалобы. Хранится одна жалоба от аккаунта на канал — до решения оператора либо удаления канала.
Push-уведомления
Сервисов Google, Apple или Firebase в уведомлениях нет: ни одна третья сторона не узнаёт, когда вам пишут.
Как это устроено. Пока приложение заперто, переписка зашифрована PIN и прочитать её нечем. Поэтому примерно раз в 15 минут (так решает система телефона) приложение спрашивает сервер одно: есть ли для этого устройства что-то в очереди. Спрашивает оно отдельным случайным токеном уведомлений: он хранится на телефоне вне зашифрованной базы, а сервер хранит только его хеш. По токену нельзя ни прочитать, ни забрать сообщения — только получить ответ «да» или «нет».
Если ответ «да», телефон показывает уведомление «Новые сообщения» — без текста и без отправителя: расшифровать их в этот момент нечем. Сами сообщения забираются, когда вы открываете приложение.
Что видит сервер. По этим запросам — что телефон включён и в сети, как и при любом соединении. Время запросов он не записывает. При прямом соединении он видит и IP-адрес.
С Tor или прокси фоновая проверка не выходит в сеть: прямой запрос выдал бы адрес тому, кто выбрал его скрыть. Тогда новые сообщения приходят, только пока приложение открыто.
Уведомления выключаются в «Настройки → Уведомления»; сервер тогда забывает токен. Удаление аккаунта удаляет токен вместе с устройством.
Что остаётся на вашем устройстве
Переписка, контакты, ключи и файлы хранилища лежат только на устройстве, в базе, зашифрованной SQLCipher. Ключ выводится из вашего PIN и из секрета, который не покидает аппаратное хранилище телефона.
Мы не имеем к этой базе доступа и не можем восстановить её за вас. Резервная копия — ваш выбор, и она шифруется ключом восстановления, который знаете только вы.
🔐 Исчезающие сообщения в резервную копию не попадают. Выгруженная копия живёт у того, кто её хранит, и стереть из неё сообщение по таймеру нечем. Поэтому восстановление не возвращает исчезающих сообщений — даже тех, чей срок ещё не вышел. ⚠️ До 2026-09 они попадали в копию вместе со сроком, и срок действовал только на устройстве.
⚠️ Удалённое сообщение остаётся в копиях, сделанных до удаления. При восстановлении всей цепочки копий оно убирается снова (копия несёт отметку об удалении). Но восстановление из старой копии или из цепочки без последних звеньев его вернёт: убедиться, что цепочка полная, приложению нечем — у файлов в чужом хранилище нет признака «последнее звено», которому можно верить.
⚠️ Потеря ключа восстановления означает потерю переписки. Это прямое следствие того, что мы не можем её прочитать. Обещать иное значило бы обещать доступ, которого у нас не должно быть.
Пределы защиты
Ни один мессенджер не защищает от всего. Здесь — пределы GasApp сейчас, чтобы вы могли решить, как им пользоваться.
Собеседник, найденный по имени. Когда вы ищете человека по имени, его ключ приходит от сервера, и нечестный сервер мог бы подсунуть другой. GasApp сверяет ключ с открытым журналом ключей: писать можно, когда тот же ключ простоял в журнале не меньше суток, а каждый аккаунт раз в час проверяет собственную запись — поэтому подменённый ключ пришлось бы показать всем, и подмену заметят. Тот, кто не открывал приложение больше суток, заметит её, только когда вернётся. Для полной уверенности сверьте коды безопасности лично или добавьте человека по QR-коду или ссылке на контакт — тогда ключ не приходит от сервера вовсе. Уже начатые переписки это не затрагивает: ключ собеседника запоминается, и его смена всегда показывается. Каждое сообщение, включая первое, запечатано: сервер не видит, кто кому написал.
Собеседник. Тот, кто получил ваше сообщение, его видел и может сфотографировать или запомнить. «Удалить у всех» — просьба к его приложению, а не гарантия.
Ваш сетевой адрес. При прямом соединении (по умолчанию) сервер его видит, со встроенным Tor — нет; см. Tor, мосты и службы Tor Project.
Резервные копии и ключ восстановления — см. Что остаётся на вашем устройстве.
Уведомления — см. Push-уведомления.
Имена и неактивные аккаунты — см. Имя пользователя и неактивные аккаунты.
Звонки. В этой версии звонков нет.
Ваши права и как ими воспользоваться
| Право | Как |
|---|---|
| Узнать, что о вас хранится | Перечислено в политике хранения; сверх этого ничего нет |
| Удалить переписку | В приложении, локально; на сервере её и нет |
| Удалить аккаунт | «Приватность» → «Удалить аккаунт» — см. ниже |
| Забрать свои данные | «Приватность» → «Выгрузить мои данные» — см. ниже |
Выгрузка данных
В приложении: «Приватность» → «Выгрузить мои данные». Вы получаете файл JSON с именем пользователя, контактами, перепиской и настройками. Формат открытый: его прочтёт и человек, и чужая программа — право забрать данные в закрытом формате правом не является.
⚠️ Файл не зашифрован. Это осознанный выбор: зашифрованная выгрузка не переносима, а смысл выгрузки в том, чтобы унести данные туда, где их прочтут. Но тот, кто получит этот файл, получит всю переписку. Приложение предупреждает об этом до того, как вы выберете, куда сохранять.
Ключей в выгрузке нет — ни приватного identity-ключа, ни состояния ратчета, ни ключа восстановления. Поэтому восстановить из неё аккаунт нельзя: для этого есть резервная копия, и она зашифрована. Это разные задачи, и смешивать их нельзя — переносимость требует читаемости, восстановление требует секретности.
Имя пользователя и неактивные аккаунты
Имя закреплено за аккаунтом, пока аккаунт существует. Переустановка приложения его не освобождает. Вернуть аккаунт с тем же именем на новом телефоне можно из резервной копии: «Восстановить аккаунт из копии» на экране регистрации. В копии лежит ключ восстановления аккаунта; сервер хранит только его открытую часть и, проверив подпись, перепривязывает аккаунт к новому устройству. Ключ безопасности при этом новый, и собеседникам нужно заново сверить safety number: приватный identity-ключ между устройствами не копируется.
Аккаунт, в который никто не входил 12 месяцев, сервер удаляет целиком — так же, как при удалении владельцем, — и имя освобождается. Для этого сервер хранит только месяц последней активности, без дня и часа: точное время было бы журналом присутствия.
Удаление аккаунта
В приложении: «Приватность» → «Удалить аккаунт». Подтверждений два, и это не формальность: вернуть удалённый аккаунт не может никто, включая оператора сервера.
Уходит с сервера: имя пользователя, identity-ключ, все устройства аккаунта, подписанные и одноразовые предключи, недоставленные конверты, токены push и ключи доступа sealed sender, а также хеш адреса почты, пометка о премиуме и все каналы, которые вы создали, вместе с их записями. Адрес после этого свободен: на него можно создать новый аккаунт.
Уходит с устройства: база переписки (в ней же каналы, которые вы читали, и ключи ваших каналов), соль, зашифрованный аппаратный секрет, ключ-обёртка в Android Keystore и история попыток ввода PIN.
Приложение показывает числа — сколько устройств, конвертов и вложений удалено. «Готово» без чисел ничем не отличается от «готово» при запросе, который ничего не сделал, а проверить самому после удаления уже нечем.
⚠️ Чего удаление не делает.
- Сообщения, которые уже дошли, остаются у собеседников. Они лежат на их устройствах, и сервер до них не дотянется — в этом и состоит сквозное шифрование.
- Записи ваших каналов остаются у тех, кто их уже загрузил. С сервера канал исчезает, с чужих телефонов — нет.
- Журналы почтовой службы не трогаются. Запись о том, что на ваш адрес уходило письмо с кодом, лежит у почтовой службы и удаляется по её правилам, а не по нашим.
- Вложения остаются на сервере до конца срока, и присланные вам, и отправленные вами. Загрузка анонимна: сервер не знает, кто загрузил файл, и связать его с аккаунтом нечем.
- Присланные вам вложения остаются на сервере до конца срока. Сервер не знает, кому они предназначались: связь между файлом и разговором лежит внутри шифротекста. Знать её значило бы хранить граф «кто кому шлёт файлы», и мы намеренно этого не делаем. Они исчезают через тридцать суток вместе со всеми остальными.
- Имя пользователя освобождается. Его сможет занять кто угодно. Выдать себя за вас это не позволяет: identity-ключ будет другим, и у тех, кто сверял с вами отпечаток, сработает предупреждение о смене ключа. Удерживать имя вечно значило бы хранить запись об удалённом аккаунте — то есть не удалять его.
- Стирание на устройстве — это удаление файлов, а не затирание ячеек. На флеш-памяти перезапись не попадает в те же ячейки, и обещать невосстановимость было бы неправдой. Гарантия здесь другая: содержимое базы зашифровано, а ключ-обёртка из Android Keystore удаляется необратимо — поднятые с диска остатки открыть нечем.
Если удаление на сервере не прошло (нет связи), на устройстве ничего не трогается, и попытку можно повторить. Обратный порядок оставил бы человека без переписки, но с живым аккаунтом на сервере, и повторить удаление стало бы нечем: запрос подписывается ключом устройства.
Дети
Условия использования требуют, чтобы вам было не меньше 16 лет, и приложение не рассчитано на то, чтобы привлекать детей. Мы не можем проверить возраст, не собирая данных, которых не собираем, — поэтому не проверяем и говорим об этом прямо.
Где хранятся данные
На сервере, который разворачивает оператор экземпляра. Для официального экземпляра место размещения будет указано здесь до релиза 1.0. GasApp распространяется под AGPL-3.0, и любой может поднять свой экземпляр — тогда политика его оператора заменяет эту.
Изменения
Существенные изменения публикуются в репозитории с датой редакции. История правок видна в git log этого файла — это и есть механизм уведомления, которому можно верить без нашего участия.
Связь
privacy@gasapp.eu — вопросы о данных. security@gasapp.eu — уязвимости (SECURITY.md).