EN RU

Privacy Policy

App: Crackface
Effective date: May 25, 2026
Last updated: September 16, 2026

This Privacy Policy explains how Artem Podrushniak ("we", "us", "our") handles data when you use the Crackface mobile application for Android and iOS.

Related document: Terms of Use.

1. Contact

Data / privacy contact email: artem.podrushnyak@gmail.com
Country / address: Indonesia

2. What data is processed

2.1. Data stored locally on your device

The app stores the following information in your device's local storage:

This information is used only to run app features and is not sent to our own backend server (with the exceptions described in 2.3, 2.4, 2.9 and 2.10).

2.2. Third-party services

The app uses the following third-party SDKs / services:

These providers may process technical and interaction data (for example advertising identifier, IP address, app and device identifiers, in-app events, diagnostic data, and transaction data) under their own privacy policies. Links to those policies are in section 11.

2.3. Online mode (optional)

When you use the online room mode (each player on their own device, joining by code), our backend (hosted on Cloudflare) temporarily receives:

Server-side room state is automatically deleted 24 hours after the last activity in the room. Data does not carry over between different rooms or matches. The online mode does not include any chat or messaging between players: in "Find the Mole", where a table can seat up to 20, players describe their character out loud — no voice or text is carried by the app.

2.4. User-created packs (UGC) in online mode

If the room host chose a user-created pack (made by them in the UGC editor), a copy of that pack (metadata + character images) is temporarily uploaded to our ephemeral R2 storage so it can be delivered to the other players in the room. That copy is deleted together with the room — 24 hours after the last activity in it; a copy that outlives the room is removed by a storage rule no later than 7 days.

Outside an online room, a user-created pack is stored on our servers in one case only — if you published a link for it yourself (see 2.9). In every other case the pack stays solely in the local storage of the device that created it.

We do not review user-pack content in advance, except packs their authors submit to the Library (2.10). If you see material that violates our UGC policy (section 5), please report it — see section 6 below.

2.5. Camera access

In online mode, the app may offer to scan a QR code containing a game-room join code. The camera is launched only on an explicit user action (tapping the scanner button) and is used solely for this scan. Camera frames are neither saved nor transmitted — recognition happens locally on the device, and only the resulting text room code is sent to our backend.

In the UGC pack editor, the camera is used to capture character images. Captured photos go only into the local UGC pack on your device. They are not sent to our server — except via case 2.4 (you play that pack in an online room) and case 2.9 (you published a link for it yourself).

2.6. Photo library access

In the UGC pack editor, you can pick character images from your device's photo library. Library access is requested only on an explicit user action (tapping a pick button). Selected photos are copied into the local UGC pack; the originals in your library are not modified.

2.7. Tracking transparency on iOS

On iOS, the app uses Apple's App Tracking Transparency (ATT) framework. The first time you open the app, iOS displays a system prompt asking whether you allow the app to track your activity across other companies' apps and websites. If you tap "Ask App Not to Track", the app will not access your advertising identifier (IDFA), and you will see only non-personalized ads. The app continues to work in full regardless of your choice. You can change this preference at any time in Settings → Privacy & Security → Tracking → Crackface.

2.8. Feedback (problem reports and ideas)

The app includes a "Report a problem" / "Suggest an idea" form. It is sent only when you explicitly tap "Send". Along with the text you write, the following is attached:

No device identifier, device name, advertising identifier, e-mail address or account credentials are sent. The message is anonymous: we cannot link it to you, to your purchases or to your game sessions, and we cannot reply to it — if you want an answer, write to the address in section 1.

Technically the message is posted to our backend (hosted on Cloudflare) and immediately forwarded to a private internal chat in the Telegram messenger that only we can access. It is not stored on our backend. The sender's IP address is used only to rate-limit submissions (spam protection): it forms part of the key of a service counter, which is swept within hours, and it is never stored alongside the text.

Please do not put personal data — yours or anyone else's — into the message: the form is meant for describing a technical problem or a suggestion.

2.9. A link to a user-created pack

You can share a pack of yours as a link. This happens only on your explicit action ("Create a link") and only for the pack you picked for it.

Creating a link sends the following to our backend (Cloudflare):

In return you get an 8-character code and a link of the form https://crackface.app/p/CODE. Anyone holding that link can download the pack — there is no password and no invitation on it. A link you have not published in the Library (2.10) is listed nowhere by us, and the page behind it shows nothing of the pack's content: it carries the install buttons only. But whatever you sent by link travels onward as freely as the link itself — keep that in mind when a pack holds images of people.

A link remains valid for 90 days from the later of: its creation, the most recent update of the pack behind it (the "Update" action in the app, which replaces the stored copy under the same link), or the most recent download of the pack via the link. A download extends the period only once the link has less than 45 days remaining. Consequently, a link that continues to be used does not expire; a link that has not been downloaded for 90 days expires, ceases to work, and the stored copy is deleted by an automated storage rule no later than 100 days after it was last written. The exception is a pack published in the Library: for as long as it is published we renew its link ourselves, and it does not expire (2.10).

For each link we keep a count of the number of times the pack has been downloaded via that link and display it to the author in the app (and, for a pack published in the Library, publicly — 2.10). Each counted download is stored as a marker holding only the code, the time and a random value — nothing about the person. So that one address counts once a day rather than every time "Add" is tapped, the server also keeps, for 24 hours, a day-mark derived from the downloader's network address: the address (for IPv6, its network half) is passed through a one-way hash function together with a fixed prefix, and the first 8 bytes of the result are stored next to the pack's code. The address itself is not stored, cannot be recovered from the mark, and the mark expires automatically after 24 hours. Downloads made from a device that holds the pack author's own key (2.10) are not counted.

You can take a link down at any time — "Remove link", in the same screen of the app. The file is deleted immediately and the code becomes permanently invalid: so that it is never handed to another pack later, we keep a revocation marker — the fact and the date only, none of the pack's content — for up to 180 days.

A pack shared by link is not moderated and not reviewed in advance; only packs submitted to the Library are looked at, before they appear there (2.10). If someone sent you a link to a pack with unacceptable material, tell us that pack's code — see section 6 below and section 5.4 of the Terms of Use. Given the code we delete the file and make the link dead.

2.10. Publishing a pack in the Library

A pack you have created a link for can also be published in the Library — a public catalogue inside the app. There is no catalogue on the website, and the page behind a link still shows nothing of the pack (2.9). Publishing happens only on your explicit action ("Publish in the Library" → "Send for review") and only for the pack you picked for it; section 5.5 of the Terms of Use sets out what publishing means.

Publishing sends to our backend, in addition to what 2.9 lists:

What the server takes from the pack. The server opens the stored copy of the pack and extracts what the catalogue shows: the title, the character names (also kept in lower case as a search index, so the catalogue can be searched by name), the cover and a reduced picture of each character (up to 200), which are stored as separate files under the pack's code. The catalogue entry also holds the character count, the language, the tags, the version, the download count, the dates of submission and of the decision, and the status with the reason for a refusal or a removal.

What becomes public. While the pack is published, anyone using the app can see its name, cover, character names and pictures, character count, language, tags, your nickname with a short tag next to it, its download count and the date it was published. Anyone can download it. Nothing else about you is shown: not your device, not your other links, not the packs you have not published. The reviewer may replace a nickname that breaks the Terms with the neutral word "Author", may change the tags or the language a pack is filed under, and may mark a pack as "Recommended".

The author key is a random value our server issues on your first publication and sends to your device once (the app on that device can show it to you again; we cannot). It is tied to no account, e-mail or device; the server keeps only a hash of it — a value the key cannot be recovered from — together with your nickname, the date it was issued, whether it has been closed, and the list of packs published with it. The short tag shown next to your nickname is derived from the same hash. The key is kept on your device (2.1) and is sent only to our API, over an encrypted connection (directly or via the relay, 2.2): when you publish, unpublish, update or check on a pack; with a pack download, so that your own downloads are not counted; and once per app launch, to ask whether any of your submissions has been decided on. It is what lets you unpublish a pack, and the only thing that can bring your nickname and download counts to another device — by typing it there: we cannot restore it for you.

Review. Before a submitted pack appears in the Library, a person on our side looks at it. For that, the backend posts a card into our private internal chat in Telegram (see 2.2) with the pack's title, your nickname and tag, the language, the tags, the first character names, and links to the cover and to the pack file on our API; the decision is taken through the buttons of that card. The review is the one section 5.5 of the Terms of Use describes — the prohibited content of 5.2, whether the pack can be played, whether it duplicates or fits the Library — and not a check of rights; what is recorded is the decision, its reason and its date. The card stays in that chat as the history of the review.

Download counts are kept per pack and, summed, per author, and shown publicly. How a download is counted — and the 24-hour day-mark derived from the downloader's address — is described in 2.9.

Reports. Anyone can report a Library pack from the app: the "Report" button composes an e-mail to the address in section 1 with the pack's code and title, to which you add your reason. Nothing is sent to our backend and nothing about you is recorded by us beyond the e-mail you choose to send. Reports are handled under section 5.4 of the Terms of Use.

Retention. The published copy of the pack is the same file as behind the link. For as long as the pack is published, its link does not expire: our backend renews it itself, under the same rule as a download (2.9), downloads or not. When the pack leaves the Library, the link becomes an ordinary link again: its period counts from the last renewal and from then on follows the rules of 2.9. The cover and character pictures extracted for the catalogue are deleted the moment the pack leaves the Library — whether you unpublish it, we remove it, you update the link, or you remove the link. The catalogue entry is not deleted automatically: it stays in our database with its title, character names, language, tags, counts, dates, status and reason, so that a removed pack cannot come back under the same code and repeat rights complaints can be counted (Terms of Use, 5.5); it is shown to nobody. The same applies to your author record (key hash, nickname, dates, whether the key is closed). We delete both on your request — see section 6 — except that the record of a closed key stays for as long as the closure lasts, and the entry of a pack under complaint stays for as long as that complaint is handled.

2.11. Network address, request limits, logs and statistics

Every request the app makes to our backend carries your network address (IP) — from Cloudflare, or, when your session goes through the relay (2.2), in a header the relay adds. Our own code uses it for one purpose: limiting how many requests one address may make in a window (a minute or an hour, depending on the route), so that the service cannot be flooded. The counter is stored in Cloudflare Durable Object storage under a key that contains the address and the start of the window; keys whose window is more than two hours old are removed by an automatic sweep, so an address stays there for a few hours at most. The address is not written into pack records, the Library or the download markers (the day-mark in 2.9 holds a hash, not the address).

Our backend writes technical log lines (Cloudflare Workers Logs) about what it did: the event, the pack code, the public author id, the language, the character and image counts, the reviewer's action, the sizes of uploads and the text of errors — never nicknames, character names, author keys, ownership values or network addresses. Cloudflare keeps these lines, together with its own record of each request (URL, method, status, timing), for a few days. Separately, link events (created, downloaded, renewed, revoked, file missing, limit hit) are written to a Cloudflare Analytics Engine dataset with the pack code, the event, its outcome and the pack's size in bytes — nothing about the person; that dataset is what we count link usage from.

3. Why data is used

4. Data sharing

We do not sell users' personal data. Data may be shared only:

5. Retention

6. Your rights

Depending on your jurisdiction, you may have rights to access, correct, delete, or restrict processing of your data, and to withdraw consent. For these requests, or to report UGC content, contact us at artem.podrushnyak@gmail.com. For UGC reports, please use the subject "[Crackface UGC Report]" — it speeds up triage.

To remove local app data, you can uninstall the app or clear app data in your OS settings. Step-by-step instructions for every case, with what is deleted and what is kept, are on a separate page: Data deletion.

A pack you shared by link is deleted with the "Remove link" button on any device connected to the link — the one it was created on, or any where you added your published pack with your author key. If no such device is left (lost, or the app was reinstalled), write to the address in section 1 with the pack's code and we will delete the file by hand.

A pack you published in the Library is taken down with "Remove from Library" on any device that holds your author key; the pictures extracted for the catalogue go with it at once. Its catalogue entry, your nickname and your author record are deleted only on request: write to the address in section 1 with your author tag (the short code next to your nickname) and, if you no longer hold the key, the codes of your packs. We delete them by hand (see 2.10 for the two exceptions).

Push notifications are turned off in your operating system's notification settings.

Advertising. Your choice about personalised ads is changed in the app: Settings → Privacy choices. On iOS the system tracking prompt applies as well (Settings → Privacy & Security → Tracking → Crackface); on Android the advertising identifier can be reset or deleted in the Google settings.

Analytics and crash reports. The app has no separate switch for Firebase Analytics and Crashlytics. What they collect is de-identified and listed in 2.2; it is not tied to your identity, so we cannot delete it for one person on request. Collection stops when you remove the app.

7. Children

The app is not intended for children under 13 (or the equivalent age in your jurisdiction). We do not knowingly collect personal data from children. If you are a parent / guardian and believe we have processed a child's data, please email the address above — we will delete it.

8. International transfers

Third-party providers may process data on servers outside your country under applicable legal transfer mechanisms and their own policies.

9. Security

We apply reasonable technical and organizational measures to protect data. No method of storage or transmission can be guaranteed fully secure.

10. Policy changes

We may update this Privacy Policy from time to time. A new version takes effect on the date shown at the top of this page, where you can also see when the document was last updated. The current version is always available at this address and opens from the app: Settings → Privacy Policy. By continuing to use the app after a new version is published, you accept it.

11. Third-party privacy resources

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

Приложение: Crackface
Дата вступления в силу: 25 мая 2026
Последнее обновление: 16 сентября 2026

Настоящая Политика конфиденциальности описывает, как Artem Podrushniak ("мы", "нас", "наше") обрабатывает данные при использовании мобильного приложения Crackface для Android и iOS.

Связанный документ: Пользовательское соглашение.

1. Контакты

Email для обращений по вопросам данных и приватности: artem.podrushnyak@gmail.com
Страна/адрес: Индонезия

2. Какие данные обрабатываются

2.1. Данные, хранимые локально на устройстве

Приложение сохраняет следующие данные в системном локальном хранилище устройства:

Эти данные используются только для работы функций приложения и не отправляются на наш собственный сервер (с исключениями, описанными в 2.3, 2.4, 2.9 и 2.10).

2.2. Сторонние сервисы

Приложение использует сторонние SDK / сервисы:

Эти сервисы могут обрабатывать технические данные устройства и данные взаимодействия (например, рекламный идентификатор, IP-адрес, идентификаторы приложения и устройства, события в приложении, диагностические данные и данные транзакций) в соответствии со своими политиками. Ссылки на их политики — в разделе 11.

2.3. Онлайн-режим (опционально)

При использовании онлайн-режима игры (несколько устройств, комната по коду) на наш бэкенд (хостинг Cloudflare) временно передаётся:

Серверное состояние комнаты автоматически удаляется через 24 часа после последней активности в ней. Между разными комнатами и партиями данные не пересекаются. Чат / переписка между игроками в онлайн-режиме не предусмотрены: в режиме «Найди крота», где за столом бывает до 20 человек, игроки описывают персонажа вслух — голос и текст через приложение не передаются.

2.4. Пользовательские паки (UGC) в онлайн-режиме

Если хост комнаты выбрал пользовательский пак (созданный им самостоятельно в редакторе UGC), копия этого пака (метаданные + изображения персонажей) временно загружается в наше эфемерное R2 хранилище для передачи остальным игрокам комнаты. Эта копия удаляется вместе с комнатой — через 24 часа после последней активности в ней; копию, пережившую удаление комнаты, стирает правило хранилища не позднее чем через 7 дней.

За пределами онлайн-комнаты пользовательский пак хранится на наших серверах только в одном случае — если вы сами создали для него ссылку (см. 2.9). Во всех остальных случаях пак остаётся только в локальном хранилище устройства создателя.

Мы не просматриваем содержимое пользовательских паков заранее — кроме паков, которые их авторы отправили в Библиотеку (2.10). Если вы видите материал, нарушающий нашу политику UGC (раздел 5), пожалуйста, сообщите об этом — см. раздел 6 ниже.

2.5. Доступ к камере

В онлайн-режиме приложение может предложить отсканировать QR-код с кодом игровой комнаты. Камера запускается только по явному действию пользователя (нажатие кнопки сканера) и используется исключительно для этого сканирования. Изображения с камеры не сохраняются и никуда не передаются — распознавание происходит локально на устройстве, а на наш бэкенд уходит только получившийся текстовый код комнаты.

В редакторе пользовательских паков камера используется для съёмки изображений персонажей. Сделанные фото попадают только в локальный UGC-пак на вашем устройстве. На наш сервер они не отправляются — за исключением случаев 2.4 (вы играете этим паком в онлайн-комнате) и 2.9 (вы сами создали для пака ссылку).

2.6. Доступ к фотографиям

В редакторе пользовательских паков можно выбрать изображения персонажей из фотогалереи устройства. Доступ к фотогалерее запрашивается только по явному действию пользователя (нажатие кнопки выбора). Выбранные фото копируются в локальный UGC-пак; оригиналы в галерее не изменяются.

2.7. Прозрачность трекинга на iOS

На iOS приложение использует Apple App Tracking Transparency (ATT). При первом запуске iOS показывает системный запрос на разрешение отслеживания вашей активности в приложениях и на сайтах других компаний. Если вы выберете «Попросить не отслеживать», приложение не получит доступ к вашему рекламному идентификатору (IDFA), и реклама будет неперсонализированной. Приложение продолжает работать в полном объёме независимо от вашего выбора. Изменить выбор можно в любой момент: Настройки → Конфиденциальность и безопасность → Отслеживание → Crackface.

2.8. Обратная связь (сообщения о проблемах и идеи)

В приложении есть форма «Сообщить о проблеме» / «Предложить идею». Она отправляется только по вашему явному нажатию кнопки «Отправить». Вместе с написанным вами текстом передаются:

Идентификатор устройства, имя устройства, рекламный идентификатор, ваш адрес электронной почты и учётные данные не передаются. Сообщение анонимно: мы не можем связать его с вами, с вашими покупками или с вашими игровыми сессиями, и ответить на него мы тоже не можем — если нужен ответ, напишите на адрес из раздела 1.

Технически сообщение отправляется на наш бэкенд (Cloudflare) и сразу пересылается в закрытый служебный чат в мессенджере Telegram, доступный только нам. На нашем бэкенде сообщение не сохраняется. IP-адрес отправителя используется только для ограничения частоты отправки (защита от спама): он входит в ключ служебного счётчика, который стирается в пределах нескольких часов, и с текстом сообщения не хранится.

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

2.9. Ссылка на пользовательский пак

Своим паком можно поделиться ссылкой. Это происходит только по вашему явному действию («Создать ссылку») и только с тем паком, который вы для этого выбрали.

При создании ссылки на наш бэкенд (Cloudflare) передаются:

В ответ выдаётся код из 8 символов и ссылка вида https://crackface.app/p/КОД. Пак по такой ссылке может скачать любой, у кого она есть — ни пароля, ни приглашения на ней нет. Ссылку, которую вы не опубликовали в Библиотеке (2.10), мы нигде не показываем, а страница по ней не показывает содержимое пака: на ней только кнопки установки игры. Но всё, что вы отправили ссылкой, дальше расходится так же свободно, как и сама ссылка, — учитывайте это, добавляя в пак изображения людей.

Ссылка действительна в течение 90 дней с наиболее позднего из следующих событий: создание ссылки, последнее обновление пака по ссылке (действие «Обновить» в приложении, заменяющее сохранённую копию под той же ссылкой) или последнее скачивание пака по ссылке. Скачивание продлевает срок только в случае, если до его истечения осталось менее 45 дней. Таким образом, ссылка, которой продолжают пользоваться, не истекает; ссылка, по которой не было скачиваний в течение 90 дней, истекает, перестаёт работать, а сохранённая копия удаляется автоматическим правилом хранилища не позднее 100 дней после её последней записи. Исключение — пак, опубликованный в Библиотеке: пока он опубликован, мы продлеваем его ссылку сами, и она не истекает (2.10).

По каждой ссылке мы ведём подсчёт количества скачиваний пака по этой ссылке и отображаем его автору в приложении (а для пака, опубликованного в Библиотеке, — публично, см. 2.10). Каждое засчитанное скачивание хранится как отметка, в которой только код, время и случайное значение — ничего о человеке. Чтобы один адрес засчитывался раз в сутки, а не при каждом нажатии «Добавить», сервер также хранит в течение 24 часов суточную метку, вычисленную из сетевого адреса скачивающего: адрес (для IPv6 — его сетевая половина) пропускается через одностороннюю хеш-функцию вместе с фиксированным префиксом, и рядом с кодом пака сохраняются первые 8 байт результата. Сам адрес не сохраняется, восстановить его из метки нельзя, а метка автоматически истекает через 24 часа. Скачивания с устройства, на котором есть ключ автора этого пака (2.10), не засчитываются.

Убрать ссылку можно в любой момент — «Отозвать ссылку» в том же окне приложения. Файл при этом удаляется сразу, а код становится недействительным навсегда: чтобы он не достался потом другому паку, мы храним отметку об отзыве — только факт и дату, без содержимого пака — до 180 дней.

Пак, переданный ссылкой, мы не модерируем и заранее не просматриваем; просматриваются только паки, отправленные в Библиотеку, — до того, как они там появятся (2.10). Если вам прислали ссылку на пак с недопустимым материалом, сообщите нам код этого пака — см. раздел 6 ниже и раздел 5.4 Пользовательского соглашения. По коду мы удаляем файл и делаем ссылку нерабочей.

2.10. Публикация пака в Библиотеке

Пак, для которого вы создали ссылку, можно также опубликовать в Библиотеке — публичном каталоге внутри приложения. Каталога на сайте нет, а страница по ссылке по-прежнему не показывает содержимое пака (2.9). Публикация происходит только по вашему явному действию («Опубликовать в Библиотеке» → «Отправить на проверку») и только с тем паком, который вы для этого выбрали; что означает публикация, описано в п. 5.5 Пользовательского соглашения.

При публикации на наш бэкенд, помимо перечисленного в 2.9, отправляются:

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

Что становится публичным. Пока пак опубликован, любой пользователь приложения может увидеть его название, обложку, имена и изображения персонажей, их количество, язык, теги, ваш ник с коротким тегом рядом, число скачиваний и дату публикации. Любой может его скачать. Ничего другого о вас не показывается: ни устройство, ни другие ваши ссылки, ни паки, которые вы не публиковали. Проверяющий может заменить ник, нарушающий Соглашение, нейтральным словом «Автор», изменить теги или язык, под которыми числится пак, и отметить пак как «Рекомендуем».

Ключ автора — случайное значение, которое наш сервер выдаёт при первой публикации и отправляет на устройство один раз (приложение на этом устройстве может показать его снова; мы — нет). Он не привязан ни к аккаунту, ни к почте, ни к устройству; сервер хранит только его хеш — значение, по которому ключ восстановить нельзя, — вместе с вашим ником, датой выдачи, отметкой о закрытии и списком опубликованных с ним паков. Из того же хеша получается короткий тег рядом с ником. Ключ хранится на вашем устройстве (2.1) и отправляется только на наш API по зашифрованному соединению (напрямую или через relay, 2.2): когда вы публикуете, снимаете, обновляете пак или проверяете его статус; вместе со скачиванием пака — чтобы ваши собственные скачивания не засчитывались; и один раз при запуске приложения — чтобы узнать, принято ли решение по вашим отправкам. Ключ — то, чем вы снимаете пак с публикации, и единственное, что переносит ваш ник и счётчики на другое устройство, — вводом его там: восстановить его за вас мы не можем.

Проверка. Прежде чем отправленный пак появится в Библиотеке, человек с нашей стороны его просматривает. Для этого бэкенд отправляет в наш закрытый служебный чат в Telegram (см. 2.2) карточку с названием пака, вашим ником и тегом, языком, тегами, первыми именами персонажей и ссылками на обложку и на файл пака на нашем API; решение принимается кнопками под этой карточкой. Проверка — та, что описана в п. 5.5 Пользовательского соглашения: запрещённый контент из п. 5.2, можно ли в пак играть, не дубль ли он и подходит ли Библиотеке, — и не проверка прав; записываются решение, его причина и дата. Карточка остаётся в этом чате как история проверки.

Счётчики скачиваний ведутся по каждому паку и, в сумме, по автору и показываются публично. Как засчитывается скачивание — и что такое суточная метка из адреса скачивающего, живущая 24 часа, — описано в 2.9.

Жалобы. Пожаловаться на пак из Библиотеки может любой — из приложения: кнопка «Пожаловаться» составляет письмо на адрес из раздела 1 с кодом и названием пака, к которому вы добавляете причину. На наш бэкенд ничего не отправляется, и ничего о вас мы не записываем, кроме письма, которое вы сами решите отправить. Жалобы рассматриваются по п. 5.4 Пользовательского соглашения.

Срок хранения. Опубликованная копия пака — тот же файл, что стоит за ссылкой. Пока пак опубликован, его ссылка не истекает: наш бэкенд продлевает её сам, по тому же правилу, что и скачивание (п. 2.9), и без скачиваний. Когда пак покидает Библиотеку, ссылка снова становится обычной: срок отсчитывается от последнего продления и дальше живёт по правилам п. 2.9. Обложка и изображения персонажей, извлечённые для каталога, удаляются в момент, когда пак покидает Библиотеку, — сняли ли его вы, убрали ли мы, обновили ли вы ссылку или отозвали её. Запись каталога автоматически не удаляется: она остаётся в нашей базе с названием, именами персонажей, языком, тегами, счётчиками, датами, статусом и причиной — чтобы снятый пак не вернулся под тем же кодом и чтобы считать повторные жалобы на права (Пользовательское соглашение, п. 5.5); никому она не показывается. То же относится к записи автора (хеш ключа, ник, даты, отметка о закрытии ключа). И то и другое мы удаляем по вашему запросу — см. раздел 6, — кроме записи о закрытом ключе, которая хранится всё время, пока действует закрытие, и записи пака, на который рассматривается жалоба, — пока она рассматривается.

2.11. Сетевой адрес, ограничение запросов, журналы и статистика

Каждый запрос приложения к нашему бэкенду несёт ваш сетевой адрес (IP) — от Cloudflare или, когда сессия идёт через relay (2.2), в заголовке, который добавляет relay. Наш собственный код использует его для одного: ограничить число запросов с одного адреса за окно (минута или час — в зависимости от маршрута), чтобы сервис нельзя было завалить. Счётчик хранится в хранилище Cloudflare Durable Object под ключом, в который входят адрес и начало окна; ключи, чьё окно старше двух часов, удаляет автоматическая очистка, так что адрес лежит там самое большее несколько часов. Адрес не записывается ни в записи паков, ни в Библиотеку, ни в отметки скачиваний (суточная метка из п. 2.9 содержит хеш, а не адрес).

Наш бэкенд пишет технические строки журнала (Cloudflare Workers Logs) о том, что он сделал: событие, код пака, публичный идентификатор автора, язык, число персонажей и изображений, действие проверяющего, размеры загрузок и тексты ошибок — никогда не ники, не имена персонажей, не ключи автора, не значения владения и не сетевые адреса. Cloudflare хранит эти строки вместе с собственной записью о каждом запросе (URL, метод, статус, время) несколько дней. Отдельно события ссылок (создана, скачана, продлена, отозвана, файл отсутствует, лимит исчерпан) пишутся в набор данных Cloudflare Analytics Engine с кодом пака, событием, его исходом и размером пака в байтах — ничего о человеке; по этому набору мы считаем использование ссылок.

3. Цели обработки

4. Передача данных

Мы не продаём персональные данные пользователей. Передача возможна только:

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

6. Права пользователя

В зависимости от вашей юрисдикции вы можете иметь право на доступ, исправление, удаление или ограничение обработки данных, а также на отзыв согласия. По вопросам реализации прав, а также для жалоб на UGC-контент обратитесь на artem.podrushnyak@gmail.com. Для жалоб на UGC рекомендуем указывать тему «[Crackface UGC Report]» — это ускоряет обработку.

Для удаления локальных данных можно удалить приложение или очистить данные приложения в настройках ОС. Пошаговая инструкция на все случаи, с перечнем того, что удаляется и что остаётся, — на отдельной странице: Удаление данных.

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

Пак, опубликованный в Библиотеке, снимается кнопкой «Снять с витрины» на любом устройстве, где есть ваш ключ автора; вместе с ним сразу удаляются изображения, извлечённые для каталога. Его запись в каталоге, ваш ник и запись автора удаляются только по запросу: напишите на адрес из раздела 1 и укажите тег автора (короткий код рядом с ником) и, если ключа у вас больше нет, коды ваших паков. Удаляем вручную (два исключения — в п. 2.10).

Push-уведомления отключаются в настройках уведомлений вашей операционной системы.

Реклама. Выбор по персонализированной рекламе меняется в приложении: Настройки → Настройки приватности. На iOS дополнительно действует системный запрос отслеживания (Настройки → Конфиденциальность и безопасность → Отслеживание → Crackface), на Android рекламный идентификатор можно сбросить или удалить в настройках Google.

Аналитика и отчёты о сбоях. Отдельного переключателя для Firebase Analytics и Crashlytics в приложении нет. Собираемые ими данные обезличены и перечислены в 2.2; с вашей личностью они не связаны, поэтому удалить их по обращению для одного человека мы не можем. Сбор прекращается, когда вы удаляете приложение.

7. Дети

Приложение не предназначено для детей младше 13 лет (или иного возраста, установленного местным законодательством). Мы не собираем персональные данные детей намеренно. Если вы родитель / опекун и считаете, что мы обработали данные ребёнка, напишите на указанный email — мы удалим эти данные.

8. Международная передача данных

Сторонние провайдеры могут обрабатывать данные на серверах за пределами вашей страны в соответствии с применимыми правовыми механизмами и своими политиками.

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

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

10. Изменения политики

Мы можем обновлять эту Политику конфиденциальности. Новая редакция вступает в силу с даты, указанной в начале страницы; там же видно, когда документ обновлялся в последний раз. Актуальная редакция всегда доступна по этому адресу и открывается из приложения: Настройки → Политика конфиденциальности. Продолжая пользоваться приложением после публикации новой редакции, вы соглашаетесь с ней.

11. Политики третьих лиц