Приватный клиент Gmail для Mac, который не видит вашу почту
Приватность почтового клиента — это утверждение, которое вы должны иметь возможность проверить. На этой странице описана архитектура, стоящая за утверждением Hark — ваша почта никогда не попадает на наши серверы, — достаточно подробно, чтобы это сделать: включая немногое, что к нам всё же попадает, сторонние сервисы, с которыми может соприкоснуться письмо, и настройки, которые этим управляют.
Общая схема
Две стороны: ваш Mac и Google. Hark работает на первом и обращается ко второму через API Gmail, Calendar, Tasks и People от Google, по TLS, прямо с вашего компьютера. Третьей стороны на этом пути нет. У нас нет сервера, который синхронизирует, пересылает, индексирует, резервирует или «ускоряет» вашу почту, поэтому в нашей инфраструктуре нет её копии, которую можно было бы взломать, истребовать по запросу или слить.
Это не правило, которое можно тихо отменить в следующей версии, а то, как устроено приложение. Механизм синхронизации живёт внутри приложения, и чтобы поставить на пути сервер, пришлось бы перестроить его вокруг этого сервера.
Где именно хранятся ваши данные
- Токены Google — в Связке ключей macOS. Учётные данные, позволяющие Hark действовать от имени вашего аккаунта, хранятся как объекты Связки ключей, зашифрованные и защищённые контролем доступа macOS. В собственные файлы Hark они никогда не записываются.
- Кэш — в Application Support, доступен для чтения только вам. Письма, мероприятия и задачи хранятся в локальной базе данных в
~/Library/Application Support/Hark, по папке на аккаунт, с правами доступа, которые разрешают чтение только вашему пользователю. Скачанные вложения кэшируются в~/Library/Caches/Hark; внешние изображения, фото отправителей и логотипы — в~/Library/Caches/hark-url-cache,~/Library/Caches/hark-image-cacheи в хранилище WebKit приложения, всё внутри вашей собственной папки «Библиотеки». FileVault шифрует всё это на диске. Собственного уровня шифрования поверх Hark не добавляет — мы говорим это прямо, чтобы вы могли решить, важен ли вам FileVault. - Настройки — в файле настроек. Положение окон, выбранные виды и тому подобное хранятся в обычном файле настроек macOS для приложения, вместе с последними поисковыми запросами (25 последних) и идентификаторами цепочек, которые вы игнорируете. Содержимое писем туда не попадает.
- При выходе: отозвано, удалено, стёрто. Hark отзывает своё разрешение в Google, удаляет объекты из Связки ключей и стирает кэш этого аккаунта с диска.
Что к нам всё-таки попадает и когда
При обычной работе — чтении, написании, упорядочивании, просмотре недели — ничего о вашей почте. Наш сервер участвует в пяти случаях; четыре из них происходят только по вашему действию:
- Подсчёт активных Mac. Раз в день, пока Hark открыт, он отправляет на
logs.harkmail.appслучайный идентификатор использования, созданный только для этого, дату, версию, сборку и канал обновлений Hark и основную версию macOS. Он не связан ни с каким аккаунтом и не несёт ничего из вашей почты; сервер не хранит IP-адреса и удаляет записи через 13 месяцев. - Проверка обновлений. Если вы разрешили автоматическую проверку (Hark спрашивает об этом при втором запуске), он примерно раз в день (в бета-сборках — раз в час) загружает небольшой файл с лентой обновлений с
updates.harkmail.appи скачивает оттуда новую сборку, когда вы её принимаете. Отдельно от этого, даже при выключенной автоматической проверке, Hark читает тот же общедоступный файл при запуске и раз в день, повторяя попытку каждые 15 минут, пока он недоступен, — только чтобы узнать, поддерживается ли ещё ваша версия. Никакие идентификаторы не отправляются: сервер видит ваш IP-адрес и время, заголовок User-Agent запроса содержит версию приложения и macOS, а сам запрос — ваши языковые предпочтения (Accept-Language). Ничего о вашем аккаунте. - Отправленное вами сообщение об ошибке. «Help › Report a Bug» отправляет на
logs.harkmail.appваш текст, пометку «ошибка» или «пожелание», выбранный раздел, изображения, которые вы приложили сами, поле имени или адреса (заранее заполнено адресом, под которым вы вошли, и редактируется — очистите его, чтобы отправить сообщение анонимно) и сведения о приложении и компьютере: версию приложения, сборку и коммит, версию macOS, модель компьютера, число ядер процессора, объём памяти, свободное место на диске, региональные настройки, часовой пояс, тепловое состояние, режим энергосбережения, часы с момента загрузки, время отправки, сколько аккаунтов подключено (только число) и случайный идентификатор установки. Оно никогда не отправляет содержимое писем, темы, чужие адреса, токены или журналы. Задуматься стоит об изображениях: снимок экрана с входящими — это ваши входящие. - Отчёты о сбоях — только если вы их включили. По умолчанию выключены. Если включить переключатель в настройках, при сбое отправляются трассировка стека, тип исключения, сигнал и причина завершения, какой поток упал, когда это произошло и идентификатор сбоя в macOS, версия приложения, сборка и коммит, а также версия macOS и модель компьютера. Ни одно поле этого отчёта не может содержать почту.
- Прикрепление файла Google Drive. Окно выбора файлов Google — это веб-компонент, поэтому при выборе файла Drive в браузере открывается страница на
harkmail.app. Наш хостинг видит то же, что любой сайт, — ваш IP-адрес, время, одноразовый идентификатор, — но не ваш адрес, ваши файлы и не то, какой файл вы выбрали. Учётные данные Google для окна выбора создаются в вашем браузере и могут дать доступ только к тем файлам, которые вы выберете сами.
И ещё одно, позже: платёжный аккаунт, если вы оформите подписку после окончания беты. Это отдельная учётная запись, не связанная с аккаунтом Google, — адрес электронной почты на ваш выбор или вход через Google с помощью клиента, у которого нет доступа к Gmail, — а полный список того, что в нём хранится, приведён в политике конфиденциальности.
Сторонние сервисы, с которыми может соприкоснуться письмо
Электронная почта — не замкнутая система, и клиент, который не показывал бы ничего извне Google, показывал бы много сломанных писем. Вот внешние соединения, которые может вызвать письмо, и настройка, управляющая каждым:
- Внешние изображения в письме. Рассылки и чеки подгружают картинки с серверов отправителя. При значении по умолчанию, «Always display external images», Hark загружает их напрямую, и этот сервер узнаёт ваш IP-адрес и то, что письмо открыто. Выберите «Ask before displaying external images» в «Settings › General» — и ничего не загрузится, пока вы не нажмёте.
- Логотипы и аватары отправителей. Фото человека приходит от Google по тому же соединению, что и почта. Логотип компании может прийти из записи, опубликованной самим брендом (поиск домена отправителя через DNS-сервис Google, затем файл логотипа с сервера бренда), или из сервиса значков сайтов Google. Оба подчиняются той же настройке «External images»: выберите «Ask» — и ни один запрос не выполняется.
- Gravatar — только если вы его включили. По умолчанию выключено. Если включить, Hark отправляет на gravatar.com хэш адреса каждого контакта в поисках картинки, и этот сервис узнаёт, с кем вы переписываетесь. Об этом сказано рядом с переключателем.
Как проверить самостоятельно
Верить этой странице на слово не обязательно. Брандмауэр для исходящих соединений на вашем Mac показывает каждый хост, к которому обращается приложение. При обычной работе Hark вы увидите accounts.google.com во время входа, хосты API Google (googleapis.com и его поддомены) для почты, календаря, задач и контактов и хост изображений Google (на практике lh3.googleusercontent.com) для фото контактов. Вы увидите updates.harkmail.app при проверке обновлений и logs.harkmail.app раз в день для анонимного подсчёта активных Mac, а в остальном — только когда отправляете сообщение (или, если вы включили отчёты о сбоях, после сбоя). Если для «External images» выбрано «Ask», ни одного сервера отправителей вы не увидите, пока сами не запросите картинки. Если вы когда-нибудь увидите что-то другое, мы хотим об этом знать: support@souplin.com.
Hark запрашивает у Google самое узкое разрешение, достаточное для каждой функции, — например, он не запрашивает разрешение на безвозвратное удаление почты, поэтому приложение может только перемещать письма в корзину, — а использование данных Google в нём подчиняется правилам ограниченного использования (Limited Use) Google. Разрешения и назначение каждого перечислены на странице справки.
Вопросы
Хранит ли Hark мою почту на своих серверах?
Нет. Сервера Hark, который получает, пересылает или хранит почту, календарь, контакты или задачи, не существует. Приложение связывается с Google напрямую с вашего Mac, и единственная копия вне Google — кэш на вашем собственном диске.
Могут ли создатели Hark читать мою почту?
Нет — на нашей стороне читать нечего. Единственный способ, которым что-то из вашего ящика может попасть к нам, — если вы сами приложите снимок экрана к сообщению об ошибке. Ничего не прикладывайте — и ничего из вашей почты не покинет ваш Mac. В сообщении об ошибке всё же есть поле имени или адреса, заранее заполненное адресом, под которым вы вошли, если вы его не очистите.
Зашифрован ли локальный кэш?
Вашим Mac, а не нами. Кэш лежит в вашей папке Application Support, доступен для чтения только вашей учётной записи, и FileVault шифрует его на диске вместе со всем остальным. Своего второго уровня Hark не добавляет — если FileVault выключен, кэш защищает именно его включение.
Что происходит при выходе из аккаунта?
Три вещи: Hark просит Google отозвать его доступ к вашему аккаунту, удаляет токены из Связки ключей и стирает локальный кэш этого аккаунта. Выход — это не просто забытый пароль; разрешение в Google тоже отзывается.
Выдают ли изображения в письмах, что я их открыл?
Могут — в любом клиенте. При настройке по умолчанию Hark загружает внешние изображения письма напрямую оттуда, где их разместил отправитель, и сервер отправителя видит ваш IP-адрес и время. Выберите для «External images» значение «Ask before displaying» в «Settings › General» — и ничего не загрузится, пока вы не разрешите.
Hark — в бесплатной открытой бете.
macOS 14 или новее на Apple silicon.
Посмотрите на приложение: окно на главной странице — это настоящий интерфейс, и прямо там можно сменить его акцент и тему.