Большинство финансовых приложений пишут «мы уважаем вашу приватность» в меню настроек, которое никто не читает, рядом с политикой на четыре тысячи слов. Мы хотели дать ясное объяснение того, что Amunta делает с вашими данными, — проверенное по коду самого приложения, а не по маркетинговому тексту.
По умолчанию: ничто не покидает ваш телефон
Книга Amunta — расходы, доходы, долги, счета, бюджеты и отчёты — хранится в локальной базе данных на вашем устройстве. Нет экрана регистрации, нет поля для почты, не нужен номер телефона, чтобы начать пользоваться приложением. Вы открываете его — и оно работает.
В Amunta нет рекламных трекеров, Google Analytics и Facebook SDK. Для повышения стабильности могут отправляться ограниченные анонимные технические сведения; в них нет сумм, финансовых записей, контактов или фото, и они не позволяют установить вашу личность.
Блокировка PIN-кодом доступна, если она вам нужна. Когда вы задаёте PIN, приложение хранит его хеш SHA-256, а не сам код — так же хранят пароли в любой системе, которая серьёзно относится к безопасности. Даже получив доступ к «сырым» данным приложения, никто не найдёт ваш PIN записанным в файле.
Необязательная часть: общая книга с другим человеком
Amunta также позволяет двум людям связать свои книги — это удобно, если вы и партнёр, сосед по квартире или деловой контакт хотите вести общий текущий счёт, не вводя одну и ту же операцию дважды. Это полностью добровольно. Базовое приложение никогда этого не требует.
Когда вы это включаете, происходит вот что — потому что «вот что происходит» кажется нам более честным ответом, чем «мы серьёзно относимся к вашей приватности».
Согласно проверенному нами в коде пути регистрации A-Link, ваш телефон создаёт пару ключей шифрования, чтобы получить сетевой ID вида SF-XXXXXXX, и отправляет запрос, содержащий открытый ключ, выбранную валюту и признак типа приложения. В этом запросе нет вашего имени, номера телефона или почты. Если вы вводили номер телефона или почту в другом месте приложения, они остаются в локальном хранилище и в запрос на регистрацию не попадают.
Что здесь значит шифрование
Когда два человека связаны, общие операции синхронизируются между их телефонами через сервер-посредник (relay). Именно здесь выясняется, означает ли «сквозное шифрование» что-то конкретное или это просто фраза. В случае Amunta — конкретное:
- У каждого устройства своя пара ключей. При отправке операции связанному контакту два открытых ключа объединяются с помощью обмена ключами X25519 на эллиптических кривых, и получается общий секрет.
- Этот общий секрет пропускается через HKDF-SHA256, чтобы получить постоянный ключ шифрования.
- Данные операции шифруются AES-256-GCM до того, как покинут устройство.
На этом пути закрытый ключ создаётся на устройстве, хранится в защищённом хранилище и используется локально, чтобы получить общий секрет. Протокол A-Link не отправляет его ни на сервер-посредник, ни другой стороне.
То, о чём молчит большинство заявлений о «шифровании»
Здесь мы хотим быть точнее, чем обычно утруждают себя приложения. Сервер-посредник, который передаёт сообщения между связанными устройствами, не может прочитать их содержимое: это шифротекст AES-256-GCM, а ключа у сервера нет. Но сервер видит данные маршрутизации: какой сетевой ID отправил сообщение, какому ID оно адресовано и когда отправлено. Этого не избежать ни в одной системе, где сервер должен доставить сообщение нужному получателю, — тот же компромисс принимают Signal и похожие системы.
Сервер-посредник и не хранит сообщение как архив: зашифрованное содержимое держится временно, пока получающее устройство не подтвердит, что получило и обработало его, а затем удаляется навсегда. Если сообщение не доставлено или подтверждение не пришло, срок его хранения истекает, и оно автоматически удаляется через 24 часа.
Итак, точная формулировка в рамках этого протокола такая: сервер-посредник видит идентификаторы маршрутизации и время, но у него нет ключа, нужного, чтобы прочитать содержимое операции.
Почему это важнее политики конфиденциальности
Политика конфиденциальности — это обещание о поведении, а разбор архитектуры показывает, что на самом деле передают известные пути. По проверенным нами частям: запрос на регистрацию в A-Link не содержит списка контактов, пересылаемые сообщения не содержат операцию в читаемом виде, а PIN-код не хранится открытым текстом.
Это не утверждение, что какая-либо программа свободна от ошибок или рисков. Смысл в том, чтобы дать конкретное описание, которое можно проверить, а не абсолютные гарантии. Можно также прочитать, что на самом деле требует интернета и как работает зашифрованная резервная копия.