Политика конфиденциальности

Действует с 5 ноября 2026 года · Read in English

Это перевод. Если русский и английский тексты расходятся, действует английский.

Vili Chat устроен так, чтобы мы узнавали как можно меньше. Сообщения шифруются сквозным шифрованием, наши серверы не могут их прочитать, и ни один наш сервер не хранит вашу адресную книгу. Здесь точно описано, что наши серверы всё-таки узнают, зачем и как долго это хранится.

1. Кто мы

Vili Chat (приложения для macOS и iOS, позже приложение для Windows, и серверы на vili.me) управляет Евгений Тахтай; он отвечает за обработку данных, описанную здесь («мы», «оператор»).

Почтовый адрес для вопросов о защите персональных данных предоставляется по запросу на support@vili.me.

Функции, которых ещё нет, например звонки и необязательное зеркало, будут описаны здесь до их выпуска.

2. Коротко

3. На ваших устройствах

Переписка, список контактов, вложения и ключи хранятся на ваших устройствах. Приложение держит их в зашифрованной базе данных (SQLCipher), ключ к которой защищён системной связкой ключей. Ключ идентичности аккаунта и ключи каждого устройства создаются на устройстве; закрытые ключи никогда не попадают на наши серверы. Когда вы подключаете ещё одно своё устройство, ключ идентичности передаётся на него напрямую по аутентифицированному соединению между двумя устройствами.

Имена устройств (например, «Mac Евгения») передаются между вашими устройствами со сквозным шифрованием. Во время регистрации имя нового устройства один раз попадает в каталог, чтобы бот в Telegram и ваши устройства могли показать его до подтверждения (раздел 6); сервер стирает его, когда регистрация завершена.

4. Что узнают наши серверы

Серверы Vili — это отдельные компоненты с отдельными учётными данными и отдельными данными, поэтому один компонент не видит того, что хранит другой.

Каталог

Связывает номер телефона с аккаунтом. Хранит HMAC вашего номера (хеш, вычисленный с секретным ключом, который есть только у каталога), открытый ключ аккаунта, открытые ключи ваших устройств и признак полного устройства, хеш PIN-кода блокировки регистрации, если вы его задали, и последний день, когда было активно одно из ваших устройств (для правила неактивности, см. FAQ поддержки). Ещё он хранит ограничения от злоупотреблений для номера и, когда ключ аккаунта меняется, запись о старом ключе, чтобы предупредить ваши контакты. Во время запроса каталог видит IP-адрес устройства и держит его только в памяти для ограничения частоты запросов.

Верификатор

Подтверждает, что номер принадлежит вам (раздел 6). Он видит номер в течение одного запроса и передаёт его каталогу, который сразу его хеширует; ни один из них не записывает номер на диск.

Ретранслятор

Помогает устройствам найти друг друга и передаёт зашифрованный трафик, когда прямое соединение невозможно. Он видит идентификаторы устройств (открытые ключи), время соединений и объём зашифрованных данных. Прочитать данные он не может.

Пробуждение

Просит Apple (а для Windows — Microsoft) разбудить устройство или показать уведомление (раздел 8). Хранит push-токены и защитный счётчик каждого устройства и держит в памяти не дольше 20 минут, какое устройство просило разбудить какое, чтобы соблюдать ограничения. Разбудить устройство могут только собеседники, которым оно это разрешило.

Приём жалоб

Получает жалобы, которые вы решили отправить (раздел 9). Доступа к каталогу или чему-либо ещё у него нет.

Журналы серверов записывают результаты и количества. В журналах каталога, верификатора, пробуждения и приёма жалоб нет номеров телефонов, ключей аккаунтов и устройств, списков устройств, push-токенов, содержимого жалоб и IP-адресов. Журналы ретранслятора могут содержать первые 10 шестнадцатеричных символов ключа подключающегося устройства, идентификаторы соединений и адреса соединений. Журналы перезаписываются по объёму и не архивируются. Прокси перед нашим API не ведёт журнал обращений.

5. Сроки хранения

ДанныеГдеХранятся до
Ключевой хеш номера, ключ аккаунта, открытые ключи устройств, хеш PIN-кода и счётчики попыток, последний день активности, ограничения от злоупотребленийКаталогУдаления аккаунта или регистрации номера на новый аккаунт
Незавершённая регистрация (ключ устройства, имя устройства, одноразовый код)Каталог1 часа после истечения 10-минутного кода; 25 часов, если номер подтверждён. Имя устройства стирается, как только регистрация завершена
После удаления аккаунта: ключевой хеш номера, удалённый ключ аккаунта и ограничения номераКаталог30 дней, чтобы удаление и повторная регистрация не сбрасывали ограничения и не скрывали смену ключа
Уведомление о смене ключа (прежний ключ и время смены)Каталог90 дней после смены; после удаления аккаунта — не больше 120 дней в сумме
Связь старого и нового ключа аккаунта после ротации ключа (два открытых ключа и подписи, без номера телефона)Каталог365 дней после ротации, затем ещё 30 дней только старый ключ. Остаётся и после удаления аккаунта, чтобы удалённое устройство не могло снова воспользоваться старым ключом
Номера, проверяемые при поиске контактовПамять каталогаКонца запроса; не сохраняются и не записываются в журналы
Номер телефона в открытом видеПамять верификатора и каталогаКонца запроса; на диск не записывается
Идентификатор чата в Telegram и ожидающая регистрацияВерификаторОтправки вашего контакта или 10 минут
SMS (когда появится): идентификатор проверки у провайдера и счётчики; ключевой хеш номера с числом кодов, отправленных за деньВерификатор10 минут; дневной счётчик — до конца дня (UTC)
Push-токеныПробуждениеУдаления аккаунта или отключения токена, сообщения Apple или Microsoft о том, что токен недействителен, или 90 дней без обновления токена приложением
Защитный счётчик пробуждения устройстваПробуждение90 дней после последнего изменения, когда у устройства больше нет push-токена
Какое устройство просило разбудить какое и когдаПамять сервера пробужденияНе дольше 20 минут
IP-адресаПамять каждого сервера, для ограничения частотыПерезапуска сервера или окончания ограничения; в журналы каталога, верификатора, пробуждения и приёма жалоб не пишутся
ЖалобыПриём жалобРассмотрения жалобы, но не дольше 90 дней с момента получения
Число жалоб, отправленных вашим аккаунтом сегодняПриём жалобКонца дня (UTC)
Журналы серверовКаждый серверПерезаписи по объёму (пять файлов по 10 МБ на компонент)
Письма, которые вы нам присылаетеНаш почтовый ящикПока это нужно для ответа; письма о нарушениях обычно не дольше 90 дней
Зашифрованные резервные копии серверов (каталог, пробуждение и, пока жалоба рассматривается, приём жалоб)Хранилище резервных копийНе дольше 30 дней

Удалённые записи базы данных перезаписываются. Резервные копии серверов зашифрованы, доступ к ним ограничен, и они хранятся не дольше 30 дней, поэтому удаление доходит до всех копий в течение 30 дней.

6. Подтверждение номера

Вы регистрируетесь с номером телефона, которым пользуетесь. Подтвердить его можно двумя способами:

Telegram

Приложение открывает чат с ботом Vili Chat в Telegram. Бот показывает имя вашего устройства и шестизначный код, который показывает и приложение, чтобы вы убедились, что запрос ваш. Затем вы отправляете боту свой контакт; бот принимает только контакт того аккаунта Telegram, который его отправил. Верификатор передаёт номер каталогу, а тот хранит только его ключевой хеш. Ваш идентификатор пользователя Telegram мы не храним. Telegram узнаёт, что ваш аккаунт Telegram общался с нашим ботом, и номер, которым вы поделились; к этому применяется политика конфиденциальности Telegram.

SMS (когда будет включено)

Мы добавляем подтверждение по SMS для отдельных стран. Когда оно будет включено, его обеспечивает Twilio (Twilio Verify, Twilio Inc., США): Twilio получит ваш номер, создаст и отправит код и проверит его; номер, код, время и статус доставки Twilio хранит по своим правилам. Мы не храним ни номер, ни код: только идентификатор проверки Twilio и счётчики в течение 10 минут и ключевой хеш номера с числом отправленных за день кодов до конца дня. До запуска SMS-подтверждения этот раздел будет дополнен подробностями.

Номер, который уже принадлежит аккаунту, после подтверждения можно перенести на новый ключ только с одобрения одного из устройств этого аккаунта или по его PIN-коду блокировки регистрации, и контакты аккаунта увидят смену ключа.

7. Поиск контактов

Если вы разрешите Vili Chat доступ к контактам, приложение отправит в каталог номера телефонов из адресной книги (без имён, адресов почты и других полей) пакетами, подписанными вашим устройством. Каталог хеширует каждый номер, проверяет, какие из них принадлежат аккаунтам Vili, отвечает их открытыми ключами и забывает номера по окончании запроса. Дневные ограничения не позволяют перебирать большое количество номеров. Результаты остаются на вашем устройстве. Можно не давать доступ и добавлять людей по номеру, а выданный доступ можно в любой момент отозвать в настройках устройства.

Мы никогда не связываемся с людьми из вашей адресной книги и не составляем из неё базу данных.

8. Уведомления

Спящий телефон или компьютер не может принять прямое соединение, поэтому устройство отправителя просит наш сервер пробуждения попросить Apple разбудить ваше. Если вы разрешаете уведомления, приложение передаёт push-токен службе уведомлений Apple (APNs) и нашему серверу пробуждения. Push от нас не содержит ни отправителя, ни сообщения: видимое уведомление несёт заглушку «Vili Chat · New message», которую ваше устройство заменяет, расшифровав короткую зашифрованную подсказку, открыть которую может только оно. Поэтому Apple узнаёт, что ваше устройство получило push от Vili Chat и когда, но не кто написал и что. Тихие push-уведомления, которые позволяют приложению забрать сообщения в фоне, вообще не содержат видимого текста. Приложение для Windows будет так же использовать службу уведомлений Microsoft (WNS).

9. Жалобы и блокировка

Блокировка происходит на ваших устройствах; наши серверы не узнают, кого вы заблокировали.

Отправляя жалобу, вы выбираете до 20 сообщений нарушителя. Приложение отправляет в приём жалоб, с подписью вашего аккаунта: открытый ключ вашего аккаунта, открытый ключ аккаунта, на который вы жалуетесь, код безопасности вашего разговора, односторонний хеш идентификатора разговора, выбранную причину, необязательный комментарий и выбранные сообщения в том виде, в каком вы их видите, вместе с их зашифрованными оригиналами (в их служебных данных есть и случайный идентификатор разговора). Без вашего действия ничего не отправляется. Жалобы читает только оператор, на сервере, чтобы принять решение (см. Условия использования). Жалоба удаляется после рассмотрения и не позже чем через 90 дней после получения. Мы раскрываем жалобу только там, где этого требует закон, например властям при незаконном содержании. Человеку, на которого пожаловались, не сообщают, кто это сделал.

Можно также написать на abuse@vili.me.

10. Удаление аккаунта

В приложении откройте Settings › Account › Delete Account… (интерфейс приложения пока на английском) и подтвердите. Для удаления нужно подключение к интернету; если сервер недоступен, ничего не удаляется.

Если у вас не осталось ни одного устройства, см. раздел Lost every device или напишите на support@vili.me.

11. Резервные копии и ключ восстановления

Собственного облачного резервного копирования у Vili Chat нет. При регистрации приложение показывает ключ восстановления: 24 слова, которые восстановят вашу идентичность, если вы потеряете все устройства. Храните его офлайн; мы его никогда не видим. Зашифрованные резервные копии, когда приложение их предложит, защищаются выбранной вами парольной фразой и записываются только в папку, которую вы укажете (например, iCloud Drive, OneDrive или внешний диск). Если эта папка находится в облачном сервисе, к зашифрованному файлу применяются условия этого сервиса.

12. Другие сервисы

Эти сервисы могут обрабатывать данные за пределами вашей страны, в том числе в Японии и США. Мы передаём им только то, что описано выше.

Мы работаем по законам Таиланда, включая Закон о защите персональных данных B.E. 2562 (2019, PDPA). Если к вам применяется и другой закон о защите данных, например GDPR в ЕС или Великобритании, у вас есть и его права. Наши правовые основания:

14. Ваши права

В зависимости от того, где вы живёте, вы можете запросить доступ к своим данным, их исправление или удаление, ограничить их обработку или возразить против неё, получить их в переносимом виде, а также пожаловаться в орган по защите данных (в Таиланде — Комитет по защите персональных данных, PDPC). Большую часть этого можно сделать самостоятельно в приложении. По остальному пишите на support@vili.me. Поскольку мы храним очень мало данных, позволяющих вас узнать, мы можем попросить подтвердить запрос с одного из ваших устройств. Мы отвечаем в течение месяца.

15. Дети

Vili Chat не предназначен для детей. Пользоваться им можно с 16 лет. Если вы считаете, что у ребёнка младше 16 лет есть аккаунт, напишите на support@vili.me.

16. Безопасность

Ключи шифрования создаются и хранятся на ваших устройствах, локальная база данных зашифрована. Каждый серверный компонент работает со своими учётными данными и своим хранилищем, публичные точки доступа ограничивают частоту запросов, каждый запрос, затрагивающий аккаунт, должен быть подписан одним из его устройств, а резервные копии серверов зашифрованы. Об уязвимостях сообщайте по security.txt или на security@vili.me.

17. Изменения

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

18. Контакты

Оператор и все адреса для связи указаны в разделе 1. Коротко: support@vili.me · нарушения: abuse@vili.me · уязвимости: security@vili.me