Реалізація анонімізації/псевдонімізації даних у мобільному додатку

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Реалізація анонімізації/псевдонімізації даних у мобільному додатку
Складний
~2-3 дні
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Реалізація анонімізації/псевдонімізації даних у мобільному додатку

Анонімізація та псевдонімізація — два різні інструменти з різними правовими наслідками. Анонімізовані дані виходять з-під дії GDPR повністю: якщо дані не можна пов'язати з особистістю при розумних усиллях — регулятор не вимагає їх захисту. Псевдонімізовані дані GDPR все ще регулює, але зі знизженими вимогами. Плутати їх — типова помилка при проектуванні.

Анонімізація: коли та як

Справжня анонімізація в продуктових системах зустрічається рідко — тому що повна анонімізація зазвичай убиває цінність даних. Але вона оправдана в двох сценаріях: аналітичні агрегати (DAU, retention по когортам) та архівні дані після істечення retention period.

k-anonymity — базовий метод: набір записів анонімен, якщо кожен запис неотличим від мінімум k-1 інших за quasi-ідентифікаторами (вік, регіон, пристрій). При k=5: якщо в когорті «iOS, Москва, 25-30» менш 5 користувачів — не публікуємо цю когорту.

Для мобільної аналітики: при експорті сирих событий в Data Warehouse — узагальнюємо IP до /24 підсети, вік до діапазонів, видаляємо точні координати, замінюємо device_id на щодня ротуваний hashed ID.

Псевдонімізація на практиці

Псевдонімізація — заміна прямих ідентифікаторів (email, phone, name) на обратимі суррогати з хранінням ключа окремо. У контексті мобільного бекенда:

Зберігання даних:

-- Основна таблиця — тільки псевдонімізовані дані
users:
  id UUID PK
  pseudonym_id VARCHAR  -- 'usr_a8f3c91d' — обратимий через key vault

-- Vault таблиця — в окремій БД або KMS
user_identity_vault:
  pseudonym_id VARCHAR PK
  email_encrypted BYTEA
  phone_encrypted BYTEA
  name_encrypted BYTEA
  encryption_key_id VARCHAR  -- ссилка на ключ у KMS (AWS KMS, HashiCorp Vault)

Основна БД обробляє 99% операцій з pseudonym_id. Реальні дані запитуються з vault тільки при явній необхідності (відправити email, показати ім'я у профілі).

Технічні методи на рівні додатку

Токенізація для номерів карт та чутливих фінансових даних: реальне значення замінюється маркером, який зберігається в ізольованому token vault (PCI DSS scope). Мобільний додаток працює тільки з маркером.

Hashing з сіллю для аналітичних ID:

// Android — генерація анонімного аналітичного ID
fun getAnalyticsId(userId: String, dailySalt: String): String {
    val input = "$userId:$dailySalt".toByteArray()
    val digest = MessageDigest.getInstance("SHA-256").digest(input)
    return Base64.encodeToString(digest, Base64.NO_WRAP).take(16)
}

Щодобова сіль гарантує: ID користувача в аналітиці не можна пов'язати між днями без знання солі. Це відповідає вимогам Apple ATT та Android Privacy Sandbox.

Data retention та автоматичне видалення

Псевдонімізація без політики видалення — полумера. Для кожної категорії даних — явний retention period у схемі:

-- Маркування retention при створенні
INSERT INTO user_events (user_id, event_type, data, delete_after)
VALUES (?, 'page_view', ?, NOW() + INTERVAL '90 days');

-- Фонова задача (cron)
DELETE FROM user_events WHERE delete_after < NOW();
-- При видаленні — не просто DELETE, а анонімізація через обнуління user_id:
UPDATE user_events SET user_id = NULL WHERE delete_after < NOW();

Анонімізація замість видалення зберігає статистику (кількість событий по типу) при утраті зв'язку з користувачем.

Особливості мобільного клієнта

На клієнті ніколи не кешувати расшифровані персональні дані в UserDefaults або SharedPreferences. Якщо потрібен офлайн-доступ до профілю — шифруємо через Keychain/Android Keystore (AES-GCM, ключ у TEE). При logout — видаляємо зашифрований blob.

Псевдонімізація на клієнті: для відправки аналітичних событий — використовуємо тільки analytics_id (hashed, rotating), не user_id. Якщо analytics SDK (Firebase, Amplitude) вимагає user_id — передаємо pseudonym, а не реальний ідентифікатор.

Терміни — 2–3 дні: проектування схеми псевдонімізації, реалізація vault-шару, настройка retention jobs, оновлення аналітичного шару на клієнті.