Keyvoro - 2FA Authenticator

Privacy

X-VPN privacy policy

What this app collects, why it collects it, and what you can ask us to delete.

X-VPN: 2FA Authenticator, previously Keyvoro, combines an on-device authenticator with optional VPN, authorized SSH access and AI explanations. This policy applies to the app and its hosted pages. The publisher is the developer identified in the app’s App Store listing. Use the support form for privacy questions, access or deletion requests.

Authenticator and device protection

Your 2FA setup keys and accounts stay in the device Keychain. Codes are generated on the device; the authenticator works without an app account or internet connection. The app does not upload, synchronize or automatically attach these keys or codes to its network tools or AI questions. Deleting an account removes its local entry. Uninstalling is not a reliable way to erase Keychain items. Keep each service’s recovery codes safely outside the app.

Camera access is used when you choose to scan a QR code. Selected photos are read for QR import. Biometric or device-passcode authentication is handled by the operating system; the app receives its result, not biometric templates. App Lock and the app-switcher cover protect the account list. Copied codes are removed from the app’s clipboard entry after expiration when that entry is unchanged.

Optional network services

Using the app’s backend creates a random installation identifier and a device-only signing key. The server receives the public key, installation identifier, app version and request signatures to verify authorized requests, reject replay and enforce usage limits. This is not a named user account. Installation/public-key records and VPN revocation/version records remain while the service operates, so existing authorization works and retired VPN credentials cannot return.

Operational request identifiers, output digests, quota counts and fixed failure codes are retained for 90 days. Hashed network-address risk buckets expire after 48 hours. The API does not store raw client addresses in these buckets or log request bodies, credentials, questions or ordinary answers. Network services necessarily receive a connecting address while handling a request.

VPN

VPN is optional and starts after your consent and the system’s authorization. The app uses an encrypted TLS connection to its server, with a separate credential for this installation. The server stores its public peer key and assigned internal address while access is active. The private peer key stays on your device. The API supplies a dedicated server certificate authority; the connection checks that authority, the endpoint hostname and the certificate's validity. The server processes your connecting address, selected network destinations, traffic and DNS requests transiently to operate the connection. It does not retain browsing history, traffic content, DNS-query history or VPN activity logs. Traffic reaches the destinations you choose; configured DNS resolution uses Cloudflare or Quad9. IPv4 internet traffic is supported, and local networks remain directly accessible. The VPN does not upload your authenticator’s keys.

Remove VPN setup in the VPN tool to revoke access, terminate that installation’s active server sessions and remove the local profile and credential. A failed server removal stays pending for retry. The necessary installation and revocation records described above remain; removal does not claim to delete them.

After successful removal, the server deletes the peer key, credential and installation's address assignment. A separate temporary record keeps only the internal address and its reuse deadline, without an installation identifier, to prevent late packets reaching another installation. The deadline follows the server network namespace's longest connection-tracking timeout. The address record is deleted during cleanup after that deadline. Cleanup runs at startup, when allocating an address and daily. Failed connection cleanup keeps the address reserved and removal pending.

SSH terminal

Only servers you enter and authorize are contacted. Verify the server-key fingerprint before first access; a changed key blocks connection. Saved hosts, passwords, verified keys and snippets are held in a separate device-only Keychain item. Delete a host or snippet to remove its saved record. Terminal contents are displayed for the session and are not automatically sent to AI. The app does not discover devices, tunnel SSH traffic or forward ports. LAN access uses the system’s Local Network permission.

The optional sample server has public demo credentials and an isolated synthetic filesystem. Its sessions are limited, their files are removed after the session, and it cannot access other services or the internet. Do not enter private files or credentials there.

AI explanations and your choices

AI help is optional and needs separate consent. Only the question you type, selected topic and language are sent through the app’s server to OpenAI. Authenticator records, SSH passwords, terminal contents and GPS location are not attached automatically. Do not type credentials, setup secrets or private documents into a question. Input and answer checks can refuse unsafe content; answers offer explanations and may be incorrect, not measured device or server diagnostics.

Questions and ordinary answers are not retained by the app’s backend. The developer’s gateway keeps allowlisted operational diagnostics such as timing, fixed failure/route codes, usage counts and its authenticated client identifier; it does not record request content or completed answers. OpenAI receives the request content, and its handling is governed by OpenAI’s privacy policy. We do not promise an OpenAI retention period, training exclusion or account tier.

Reporting an answer is a separate choice. The reported answer, selected reason and receipt are retained for 90 days so the developer can assess safety and correctness; the question is omitted. Withdrawal in Settings prevents future AI questions, clears local consent and preserves a retry if the server is unavailable. It does not undo content already received by OpenAI or erase an already submitted report. Use Support for requests concerning those records.

Hosted introduction and website sessions

Hosted requests send the installed app’s version/build and selected language. The device checks the App Store storefront country; when the configured Russia check passes, it sends an app-specific routing selector to the hosted origin. This is a storefront observation, not GPS location, nationality or a conclusion about who you are. Disabled checks send no result. Hosting services also process ordinary connection metadata to deliver and operate the pages.

Hosted cookies and local storage remember a website session across app switches and restarts. They are not cleared by Retry, closing a page or finishing onboarding. Website logout or an explicit reset clears the relevant session state. Native authenticator data is separate.

Support and tracking

The canonical Support form accepts the name, reply address, subject and message you choose to submit. These are stored for handling the request and delivered through the developer’s support service. Do not include credentials or 2FA secrets. Ask through the same form for access or deletion; necessary security records and already-transmitted provider content follow the limits above. The app has no ads, cross-company tracking, Firebase services or advertising-identifier collection.

Русский язык

X-VPN: 2FA Аутентификатор, ранее Keyvoro, сохраняет офлайн-аутентификатор и добавляет отдельные необязательные инструменты VPN, SSH и ИИ. Издатель указан в карточке приложения в App Store. Вопросы о данных, доступе и удалении направляйте через форму поддержки.

Ключи 2FA и аккаунты хранятся в Связке ключей устройства. Коды создаются локально, без интернета и аккаунта в приложении; они не загружаются и не добавляются автоматически к сетевым запросам или вопросам ИИ. Удаление аккаунта удаляет его локальную запись; удаление самого приложения не гарантирует очистку Связки ключей. Камера и выбранные фото используются только для импорта QR. Face ID, Touch ID и код-пароль обрабатывает система; биометрические шаблоны приложение не получает.

При использовании серверных инструментов создаются случайный идентификатор установки и локальный ключ подписи. Сервер хранит идентификатор, открытый ключ и служебную информацию для авторизации, защиты от повторных запросов и ограничения злоупотреблений. Это не именной аккаунт. Идентификатор, открытый ключ и записи об отзыве VPN сохраняются, пока работает сервис. Идентификаторы операций, хеши ответов, счётчики и фиксированные коды ошибок хранятся 90 дней; хешированные сетевые корзины риска истекают через 48 часов. В них не сохраняются исходные IP-адреса, а вопросы, обычные ответы, пароли и тела запросов не записываются в журналы API.

VPN включается после вашего согласия и системного разрешения. Сервер TLS временно обрабатывает адрес подключения, выбранные назначения, трафик и DNS-запросы для работы соединения. История просмотров, содержимое трафика, история DNS и журналы активности VPN не сохраняются. DNS обслуживают Cloudflare или Quad9. Поддерживается интернет IPv4; локальная сеть доступна напрямую. Удаление настройки отзывает доступ, завершает активные сессии этой установки и удаляет локальный профиль и ключ. При ошибке отзыва сохраняется повторная попытка; служебные записи отзыва остаются. Открытый ключ VPN и назначенный внутренний адрес хранятся, пока доступ активен; закрытый ключ остаётся на устройстве. При успешном удалении сервер удаляет ключ VPN, данные доступа и назначение адреса этой установке. Отдельная временная запись содержит только внутренний адрес и срок запрета его повторного назначения, без идентификатора установки, чтобы запоздавшие пакеты не попали к другой установке. Срок определяется наибольшим тайм-аутом отслеживания соединений в сетевом пространстве сервера; запись удаляется при очистке после его истечения. Очистка выполняется при запуске сервера, выделении адреса и ежедневно. При ошибке очистки соединений адрес остаётся зарезервированным.

SSH подключается только к введённому и разрешённому вам серверу. Перед первым подключением проверяется отпечаток ключа; изменившийся ключ блокирует соединение. Хосты, пароли и заготовки команд находятся в отдельной Связке ключей и удаляются соответствующими действиями в приложении. Содержимое терминала автоматически не передаётся ИИ. Нет поиска устройств, туннелей SSH или перенаправления портов. Для локальных хостов используется системное разрешение локальной сети. Пример сервера имеет общедоступные демонстрационные данные и изолированные временные файлы; не размещайте там личные данные. Файлы удаляются после сессии, доступ к другим сервисам и интернету запрещён.

ИИ работает после отдельного согласия: введённый вопрос, выбранная тема и язык передаются OpenAI через сервер приложения. Ключи 2FA, пароли, содержимое терминала и GPS-координаты не добавляются автоматически. Не вводите секреты или личные документы. Ответы могут ошибаться и не являются измеренной диагностикой. Сервер приложения не хранит вопросы и обычные ответы; шлюз сохраняет только ограниченную служебную диагностику, а не содержимое запросов и готовых ответов. Обработка OpenAI определяется политикой OpenAI; мы не обещаем её срок хранения или исключение из обучения. При добровольной жалобе ответ, причина и квитанция хранятся 90 дней, без вопроса. Отзыв согласия в Настройках блокирует новые вопросы, но не отменяет уже отправленные данные и не удаляет ранее поданную жалобу.

При загрузке введения передаются версия и сборка приложения, язык и, если проверка российского региона App Store пройдена, селектор маршрута. Регион магазина не доказывает местоположение, гражданство или личность. Отключённые проверки ничего не передают. Файлы cookie и локальное хранилище сайта сохраняют сессию после перезапуска; обычный повтор загрузки их не очищает. Выход на сайте или явный сброс очищает соответствующую сессию, отдельно от нативных аккаунтов 2FA.

Форма поддержки сохраняет введённые имя, адрес для ответа, тему и сообщение для обработки обращения. Не присылайте секреты. Через неё можно запросить доступ или удаление с учётом указанных ограничений. В приложении нет рекламы, межсервисного отслеживания, Firebase или сбора рекламного идентификатора.