Проще говоря, данные приложений — это данные, которые принадлежат приложениям или создаются ими. Их можно разделить на несколько категорий, включая данные содержимого приложений, кеш-данные приложений, данные конфигурации приложений, выхлопные данные приложений, данные платформы приложений и данные приложений системного уровня.
Это краткое руководство объясняет, как выглядит каждый тип данных приложений, а также как и где они могут быть полезны.
Ни один из этих типов данных не привязан к конкретной платформе. iOS от Apple хранит эти данные на устройстве, в резервных копиях и в iCloud. Операционная система OS X хранит их в папках ~/Library, а Windows использует %APPDATA% для устаревших приложений и приложений из магазина.
Данные содержимого приложений
Почти у каждого приложения есть какие-то основные данные, которые нужно хранить: локально на устройстве, где оно работает, в облаке или и там и там. К локально хранимым данным содержимого могут относиться сообщения из защищённых мессенджеров, которые не оставляют в облаке следов для воспроизведения, или, проще, файлы изображений из графических редакторов либо сохранённые состояния игр.
Фреймворк CloudKit от Apple даёт приложениям iOS и OS X удобный способ хранить свои данные в облаке. Но обычно разработчики приложений со значительной облачной составляющей предпочитают кроссплатформенное хранение данных, опираясь, например, на сервисы Amazon S3 или EC2.
Предоставление доступа к таким данным приложений лежит в основе продуктов Reincubate: оно позволяет компаниям и агентствам получать данные, интерпретировать их и извлекать из них пользу. Клиенты применяют эти данные в самых разных решениях, от обеспечения соответствия требованиям до защиты детей, и некоторые из них подробнее описаны на странице продукта Reincubate iCloud API.
Кеш-данные приложений
Граница между данными содержимого и кеш-данными приложений обычно проходит между данными, привязанными к конкретному устройству, и данными, связанными с учётной записью пользователя приложения.
Хороший пример этого различия — Skype. Он хранит данные централизованно в облаке и служит богатым источником как данных содержимого, так и кеш-данных. Облако предоставляет данные содержимого, а клиенты, на которых работает приложение, дают богатые наборы кеш-данных: сообщения, изображения и журналы, описывающие поведение.
Данные конфигурации приложений
Данные конфигурации приложений — это наборы настроек, которые приложения хранят о том, как они сконфигурированы. Иногда это делается централизованно в облаке, как с настройками Slack пользователя, которые распространяются на все экземпляры приложения на всех платформах, но бывает и так, что они относятся только к одному экземпляру приложения, например настройки общего доступа iCloud Photo Library.
У этих данных множество применений и потребностей; например, они хранят идентификатор сопряжённого фитнес-трекера или службы домашнего мониторинга.
Выхлопные данные приложений
Это данные, или следовые данные, которые создаются в ходе обычной работы приложения. Многие приложения сохраняют данные в собственных файлах журналов, и это может быть полезным способом понять, как и когда приложением пользовались. Если нет данных содержимого, кеша или конфигурации, такой «выхлоп» может дать полезные подсказки или фрагменты, в том числе информацию о местоположении с геометками.
Многие приложения iOS и OS X используют базы данных для хранения рабочих данных, и фирменную технологию восстановления удалённых данных от Reincubate часто можно использовать, чтобы таким образом восстановить реальные данные содержимого, кеша или конфигурации.
У Reincubate также есть ряд надёжных собственных методов получения данных о доле экранного времени, которую занимают приложения, отчасти на основе анализа выхлопных данных приложений.
Данные платформы приложений
Данные платформы приложений — это информация о приложении, связанная с платформой, на которой оно работает. Это могут быть метаданные, например те, которые сервис Apple iTunes хранит о значке приложения, его описании, рейтингах и возрастных ограничениях.
Но сюда могут относиться и данные об общем количестве установок приложений на платформе («рыночные данные приложений»). Такие компании, как App Annie, специализируются на сборе и предоставлении этих данных.
Данные приложений системного уровня
Наконец, у всех устройств, которые могут запускать приложения или работать с платформами приложений, есть определённый уровень данных системного уровня, часть которых или все доступны через API Reincubate, в зависимости от платформы.
Среди них может быть множество ценной информации: от периодов использования и геопозиционирования до конфиденциальных сведений, таких как учётные данные беспроводных сетей или, что ещё важнее, связка ключей с учётными данными для систем, к которым пользователь получал доступ.
Небезопасны ли данные приложений и скроют ли их платформы со временем?
Нет, в данных приложений нет ничего принципиально небезопасного. Платформы Apple, в частности, образец сильной реализации многих хороших практик безопасности. Они используют и 2FA, и 2SV (обе поддерживаются Reincubate), а также собственное шифрование, настолько сложное, что инструменты с открытым исходным кодом не смогли получить доступ к содержимому iOS 9 за все девять месяцев с момента выхода платформы. (Платформа Reincubate поддержала iOS 9 в сентябре 2015 года, когда вышла эта ОС.)
Стремиться убрать данные приложений — значит упускать суть. Их необходимо где-то хранить, чтобы приложения могли работать. Их можно убрать с устройств и оставить в облаке, но это создаёт столько же, если не больше, потенциальных уязвимостей, как и хранение на устройстве. Если хранить данные приложений только в облаке, приложение не сможет предоставить богатую среду при работе офлайн или при медленном соединении. Кроме того, определённый объём кеша, конфигурации и «выхлопа», вероятно, полезен для стабильной работы многих сложных приложений.
В этой области стоит задуматься над хорошими вопросами:
- Защищена ли учётная запись пользователя платформы приложений?
2FA/2SV,OAuth, надёжные пароли. - Принимают ли пользователи меры для защиты своих резервных копий с помощью шифрования и защищённых мест хранения, и предлагает ли платформа приложений подходящие настройки по умолчанию?
- Есть ли на платформе приложений механизм для такой защиты данных приложений? Apple предлагает его и, кроме того, использует усиленное шифрование, которое могут обеспечить их устройства с чипами
A9X. - Регулярно ли платформа приложений исправляет уязвимости и есть ли у неё программа для сообщений о них?
- Подвергается ли платформа приложений массовому сбору данных или попыткам вторжения с помощью фреймворков с открытым исходным кодом?
- Предусматривает ли платформа приложений дополнительные уровни шифрования и защиты на уровне приложений, и пользуются ли ими разработчики?
WeChat— хороший пример приложения с собственной схемой шифрования, аWhatsApp— пример приложения, использующего дополнительные необязательные классы защиты Apple. - Используют ли приложения собственную систему защиты ключей платформы или пытаются создать свою систему управления учётными данными? Не уязвима ли она?
- Требуют ли приложения зашифрованных резервных копий для хранения конфиденциальных данных, как
HealthKitот Apple, или вообще избегают хранения в резервных копиях, как данныеWalletот Apple?










