Перейти к основному содержимому
Reincubate

Как приложения хранят данные в резервных копиях iPhone: имена файлов и хеши

Aidan Fitzpatrick

Опубликовано 23 апреля 2012 г.· Обновлено 1 августа 2022 г.

Cover image for: Как приложения хранят данные в резервных копиях iPhone: имена файлов и хеши

Эта статья поможет найти файлы определённого приложения внутри резервной копии iPhone, а также лучше понять, как устроены файлы и папки в iOS.

Проще всего восстановить файлы из резервной копии iOS с помощью iPhone Backup Extractor: бесплатная версия поможет найти и извлечь нужные файлы, и вам не придётся разбираться в подробностях из этой статьи. Если хотите так сделать, в верхнем меню сайта вы найдёте несколько полезных руководств, которые проведут вас через этот процесс.

Как устроены хешированные имена файлов в резервных копиях iOS

Когда для iPhone, iPad или iPod touch создаётся резервная копия в iTunes или iCloud, важные данные сохраняются в различные файлы внутри папки резервной копии.

Имена файлов закодированы, поэтому в папке резервной копии они выглядят как строки из букв и цифр: это так называемый хеш SHA-1 в шестнадцатеричной кодировке. Во многих версиях операционной системы iPhone используются одни и те же имена.

Вот некоторые из основных файлов баз данных SQLite, которые можно найти в папке резервной копии iTunes. Имена файлов одинаковы для резервных копий iTunes и iCloud.

Расположение файлов в резервных копиях iPhone с iOS 16, 15 и 14

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
НапоминанияCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
ЗаметкиNoteStore.sqlite4f98687d8ab0d6d1a371110e6b7300f6e465bef2
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
История звонковCallHistory.storedata5a4935c78a5255723f707230a451d79c540d2741
Геопозицииconsolidated.db4096c9ec676f2847dc283405900e284a7c815836
История браузераHistory.db1a0e7afc19d307da602ccdcece51af33afe92c53
Голосовая почтаvoicemail.db992df473bbb9e132f4b3b6e4d33f72171e97bc7a
ФотографииPhotos.sqlite12b144c0bd44f2b3dffd9186d3f9c05b917cee25
Обои (главный экран)HomeBackground.cpbitmapb97b0c3bc8a6bb221d0849b450fbd92b5d06a301
Обои (экран блокировки)LockBackground.cpbitmap86736007d0166a18c646c567279b75093fc066fe

Расположение файлов в резервных копиях iPhone с iOS 13, 12 и 11

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
НапоминанияCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
ЗаметкиNoteStore.sqlite4f98687d8ab0d6d1a371110e6b7300f6e465bef2
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
История звонковCallHistory.storedata5a4935c78a5255723f707230a451d79c540d2741
Геопозицииconsolidated.db4096c9ec676f2847dc283405900e284a7c815836
История браузераHistory.dbe74113c185fd8297e140cfcf9c99436c5cc06b57
Голосовая почтаvoicemail.db992df473bbb9e132f4b3b6e4d33f72171e97bc7a
ФотографииPhotos.sqlite12b144c0bd44f2b3dffd9186d3f9c05b917cee25
Обои (главный экран)HomeBackground.cpbitmapb97b0c3bc8a6bb221d0849b450fbd92b5d06a301
Обои (экран блокировки)LockBackground.cpbitmap86736007d0166a18c646c567279b75093fc066fe

Расположение файлов в резервных копиях iPhone с iOS 10, 9, 8 и 7

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
НапоминанияCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
История звонковCallHistory.storedata5a4935c78a5255723f707230a451d79c540d2741
Геопозицииconsolidated.db4096c9ec676f2847dc283405900e284a7c815836
ФотографииLine.sqlite2d711a1f5613f5259730b98328a3f7e816698f88

Пути к базам данных WhatsApp, Snapchat, Kik, Viber и WeChat указаны в таблице ниже. Эти имена файлов актуальны для iOS 8 и 9, а в более старых версиях iOS они другие.

МессенджерМесто храненияИмя файла в резервной копии
WhatsAppApp Domain/net.whatsapp.WhatsApp/, Documents/ChatStorage.sqlite1b6b187a1b60b9ae8b720c79e2c67f472bab09c0, 275ee4a160b7a7d60825a46b0d3ff0dcdb2fbc9d, 7c7fba66680ef796b916b067077cc246adacf01d
SnapchatApp Domains/com.toyopagroup.picaboo/, Documents/chats.plist (личные сообщения) или stories.plist (публичные снэпы)1cd3cd2b412f7b045dd479b617cb2a4f99ffdfee, 7cdb9af6c5352b97cc0f87369df43c49a45c99f3
KikApp Domain/group.com.kik.chat/, cores/private/…/kik.sqlite8e281be6657d4523710d96341b6f86ba89b56df7
ViberApp Domain/com.viber/, Documents/Contacts.datab39bac0d347adfaf172527f97c3a5fa3df726a3a
WeChatApp Domain/com.tencent.xin/, Documents/DB/MM.sqlite(динамически меняется)
LinePhotos.sqlite12b144c0bd44f2b3dffd9186d3f9c05b917cee25

Имена файлов в резервных копиях iPhone с iOS 6

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
НапоминанияCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
Геопозицииconsolidated.dbУдалено из резервной копии iTunes, но не из iOS

Имена файлов в резервных копиях iPhone с iOS 5

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
НапоминанияCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
Геопозицииconsolidated.dbУдалено из резервной копии iTunes, но не из iOS

Имена файлов в резервных копиях iPhone с iOS 4

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.sqliteca3bc056d4da0bbf88b5fb3be254f3b7147e639c
История звонковcall_history.db2b2b0084a1bc3a5ac8c27afdf14afb42c61a19ca
Геопозицииconsolidated.db4096c9ec676f2847dc283405900e284a7c815836

Имена файлов в резервных копиях iPhone с iOS 3 и 2

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedb31bb7ba8914766d4ba40d6dfb6113c8b614be442
КалендарьCalendar.sqlitedb2041457d5fe04d39d0ab481178355df6781e6858
Заметкиnotes.db740b7eaf93d6ea5d305e88bb349c8e9643f48c3b
История звонковcall_history.dbff1324e6b949111b2fb449ecddb50c89c3699a78

Имена файлов в резервных копиях iPhone с iOS 1

СодержимоеНастоящее имя файлаИмя файла в резервной копии
SMSsms.db3d0d7e5fb2ce288813306e4d4636395e047a3d28
КонтактыAddressBook.sqlitedbadb8c77534444e97c31ff15924d50f3ed1fbd3b1
КалендарьCalendar.sqlitedb14ee8cdc3e6e0220399ff210246e1c92b7df89a0
Заметкиnotes.db740b7eaf93d6ea5d305e88bb349c8e9643f48c3b
История звонковcall_history.dba49bfab36504be1bf563c1d1813b05efd6076717

Как видите, работать с файлами, названными таким образом, довольно сложно. Если вам нужен более простой способ узнать, что находится в резервной копии iTunes или iCloud, у нас есть инструмент, который выполняет всю эту расшифровку за вас. Познакомьтесь с iPhone Backup Extractor.

Как работают экспертный режим и домены iOS

При создании приложений для iOS авторам приходится принимать ряд решений о том, как и где хранить данные. (Мы отдельно писали о том, какие компромиссы стоят перед авторами приложений при выборе места хранения пользовательских данных.) Лучший способ изучить, где каждое приложение хранит свои файлы в iOS, и освоиться с этим — бесплатная версия iPhone Backup Extractor. Запустите программу, выберите резервную копию в меню навигации слева, а затем выберите «Экспертный режим» в основной части окна: вы увидите список примерно из 18 папок, скорее всего, начинающийся с «Application Groups». Строго говоря, эти группы верхнего уровня называются «доменами».

Многие домены лишь косвенно используются приложениями. Например, в домене «Keyboard» могут храниться данные сторонних клавиатур, но не обычных приложений.

Некоторые домены, например «Media» и «Camera Roll», активно используются встроенными приложениями «Сообщения» и «Камера». Но при поиске данных сторонних приложений нас больше всего интересуют домены «Application Groups» и «Applications».

Что такое пространство имён?

Если развернуть домен «Applications» и посмотреть список папок в нём, вы увидите несколько папок со странными названиями. Вот пример:

  • com.apple.Health
  • com.burbn.instagram
  • com.facebook.Messenger
  • snapchat.picaboo
  • com.spotify.client
Восстановление данных iOS из приложений с помощью iPhone Backup Extractor

Восстановление данных iOS из приложений с помощью iPhone Backup Extractor

Эти папки — основное место, где приложение хранит свои данные, и называются они, как правило, в одном и том же формате. В 1996 году компания Sun Microsystems выпустила язык программирования Java. В документации к Java был описан способ, позволяющий сторонним разработчикам программного обеспечения публиковать его так, чтобы оно не конфликтовало с программами других авторов. Суть в том, чтобы взять имя сайта компании, например apple.com, записать его в обратном порядке и добавить название продукта. Так, приложение «Здоровье» от Apple находится в com.apple.Health, а iPhone Backup Extractor по праву относится к com.reincubate.iPhoneBackupExtractor. Такие имена стали называть «пространствами имён», и Sun опубликовала ряд дополнительных правил для них.

Apple переняла этот подход как рекомендуемую практику при создании iOS. Конечно, такое соглашение об именовании — всего лишь рекомендация. Как видно на примере Snapchat (snapchat.picaboo), играют по этим правилам не все. Это не обязательно плохо, но единообразие очень помогает, когда нужно восстановить данные!

Иногда пространство имён приложения раскрывает любопытный исторический факт. Пространство имён Instagram — com.burbn.instagram, потому что… в 2010 году Instagram назывался Burbn.

Где популярные приложения iOS хранят свои данные?

В следующей таблице показаны пространства имён ряда популярных приложений iOS. Не забывайте, что этот список встроен в iPhone Backup Extractor (а ещё программа знает об изменениях между разными версиями приложений и iOS), поэтому она всегда знает, где искать, когда помогает вам восстановить данные iOS.

ПриложениеПространство имён iOS
Facebookcom.facebook.Facebook, com.facebook.Messenger
Instagramcom.burbn.instagram
Snapchatsnapchat.picaboo
СообщенияHome/Library/SMS
Spotifycom.spotify.client
Pinterestpinterest
Skypecom.skype.skype
Shazamcom.shazam.Shazam

Как приложения iOS хранят данные и как их прочитать?

Авторы приложений вправе хранить данные в любом удобном формате. Пользователи iPhone Backup Extractor при ручном поиске данных в резервных копиях чаще всего сталкиваются с тремя форматами:

  • XML Plist
  • двоичные Plist
  • базы данных SQLite

И XML Plist, и двоичные Plist часто можно узнать по расширению «.plist». Однако на Plist-файл могут указывать и многие другие расширения, например «.cookies». Plist — сокращение от «Property list» (список свойств), и это предпочтительный формат Apple для хранения набора простых данных. XML Plist обычно можно прочитать глазами, так как они хранятся в виде обычного текста, а двоичные Plist при простом просмотре, как правило, непонятны.

К счастью, в бесплатную версию iPhone Backup Extractor встроены средство просмотра и редактор Plist: выберите в меню «Файл» пункт «Просмотр/правка Plist», и вы сможете изучить содержимое любого Plist-файла. Кроме того, в экспертном режиме можно щёлкнуть файл правой кнопкой мыши и выбрать «Просмотреть как Plist».

Просмотр в виде Plist в iPhone Backup Extractor

Просмотр в виде Plist в iPhone Backup Extractor

Базы данных SQLite — это именно то, что вы ожидаете: наборы структурированных данных. Их часто можно узнать по расширениям «.db» или «.sqlite3». Такие файлы нельзя прочитать без специального редактора, но iPhone Backup Extractor умеет выполнять к ним запросы за вас.

Что содержит каждый домен в резервной копии iPhone?

Домен резервной копии iOSДанные, которые находятся в этом домене
Application GroupsДанные, которые приложения хранят здесь, могут использоваться на устройстве несколько свободнее. Многие приложения хранят здесь небольшой объём данных, но ценное содержимое встречается редко.
Application PluginsПриложения, хранящие здесь данные, обычно делают это в составе расширения iOS: например, плагина для Watch, сторонней клавиатуры, виджета, расширения для отправки данных или Animoji. Пользовательские данные в этом домене встречаются редко.
ApplicationsЭто основной домен, в котором приложения хранят пользовательские данные на iPhone. У каждого приложения своё пространство имён, как описано выше в разделе «Что такое пространство имён?».
Camera RollДомен Camera Roll включает все фотографии, видео и метаданные, хранящиеся на устройстве iOS. Если на устройстве включена функция «Оптимизировать хранилище» и не все фотографии хранятся локально, в этом домене может оказаться меньше информации, чем вы ожидаете.
DatabasesНа современных версиях iOS здесь хранится мало информации.
HealthВ домене Health хранятся данные HealthKit и медицинские данные, а также данные об активности, которыми обмениваются с подключённым Apple Watch.
HomeДомен Home — настоящая золотая жила информации для многих встроенных приложений Apple, например «Сообщений», «Заметок» и «Календаря».
HomeKitВ этом домене хранится ограниченный объём информации о состоянии конфигурации Apple HomeKit.
InstallДомен Install содержит метаданные о том, какие встроенные приложения Apple установлены на устройстве iOS.
KeyboardВ этом домене хранятся настройки языка и клавиатуры.
KeychainЗдесь, в файле SQLite, хранится связка ключей устройства iOS (набор паролей пользователя).
Managed PreferencesЭтот домен содержит данные об управлении устройством iOS. Если устройство зарегистрировано в программе MDM (управление мобильными устройствами), например в вашей школе или на работе, здесь будут храниться некоторые метаданные.
MediaВ этом домене хранятся многие типы медиафайлов. Например, здесь можно найти вложения в SMS-сообщения, записи и данные «Фотопотока».
RootДомен Root содержит основные файлы конфигурации для настройки устройства iOS.
System ContainersДомен System Containers содержит ограниченный набор метаданных из приложения App Store и некоторых других процессов iOS.
System PreferencesЭтот домен содержит низкоуровневую информацию о состоянии устройства iOS. Например, здесь можно узнать о конфигурации сети или о сетях Wi-Fi и VPN, к которым устройство недавно подключалось.
System Shared ContainersЗдесь хранят данные некоторые системные процессы iOS, которые могут обмениваться данными в рамках iOS. С этого домена стоит начать, если нужно узнать больше об активности Bluetooth на устройстве.
WirelessДомен Wireless содержит богатый набор сведений об использовании iOS сотовых сетей и сетей Wi-Fi, а также о недавно присвоенных IP-адресах.

Что делать дальше

Почему бы не скачать iPhone Backup Extractor или не узнать больше о Reincubate и о том, как мы помогаем клиентам по всему миру восстанавливать данные?

Если хотите узнать больше об iOS или iPhone Backup Extractor, на этом сайте есть множество руководств и статей о том, как получить максимум от своих данных. Хорошо начать со статьи о том, что хранится в резервной копии, а что нет. В нашем центре поддержки также есть множество других статей базы знаний с ответами на частые вопросы.


Об авторе

Aidan Fitzpatrick

Основатель, генеральный директор

Aidan основал Reincubate в 2008 году, создав первый в мире инструмент восстановления данных для iOS. С тех пор он превратил компанию в одного из ведущих в мире независимых поставщиков программного обеспечения (ISV), сотрудничая с такими компаниями, как AMD, Qualcomm и HP, чтобы создавать значимые функции машинного обучения для видеопрограмм, главным примером которых служит экосистема приложений Camo. Под руководством Aidan Reincubate четыре раза получала высшую бизнес-награду Великобритании, вошла в список The Sunday Times 100 Tech и была отмечена номинациями на Apple Design Award и в App Store. Его работы и методы нередко цитируются в научных статьях по мобильной криминалистике, а его приглашают выступать на мероприятиях таких компаний, как Google, Microsoft и Snap.


Похожие статьи

Нужна помощь?

Мы стараемся отвечать на все сообщения в течение одного рабочего дня.

support@reincubate.com
Помощь