解析iOS 5 Manifest.mbdb备份以查找备份文件时使用的路径

时间:2011-10-24 18:07:45

标签: iphone ios5

我正在尝试解析iOS 5,iTunes 10.5备份manifest.mbdb。 iOS 5,iTunes 10.5备份不再维护manifest.mbdx文件,在以前的版本中,该文件用于查找备份中的文件。 Padraig回答了一个相关的stackoverflow问题:

“备份文件夹中的hex文件名是附加到域的文件路径的SHA1哈希值,中间是” - “。因此'DomainName- / path / filename.png'的哈希值将匹配到正确的文件。“

所以,我们尝试使用manifest.plist和manifest.mbdb中的应用程序路径和文件信息对SHA-1哈希进行多种DomainName- / path / filename组合 - 没有一个产生文件名在备份文件夹中。

例如,SHA-1哈希:

com.company.MyApp-的/ var /移动/应用/ A7F76BBE-3707-40F5-ACCC-72648EBA71CF /文档/ MyRecording.aac

是50b28a991eb23e0414436c209dbd6e70ab2b0a82但是没有此名称的文件位于备份文件夹中。

我应该特别使用域名(com.company.MyApp)之后和目标文件名之前的“路径”?

谢谢

2 个答案:

答案 0 :(得分:1)

好的,我终于想出了正确的路径和哈希。

您必须拥有“AppDomain-”+ DomainName(例如com.company.appname)+“ - ”+路径(前面没有\或/)+ filename。 SHA1散列(是的,SHA1不是SHA),并且备份文件夹中有文件名。

这种组合每次都适用于我需要访问的每个文件。

答案 1 :(得分:0)

保存后

  

com.company.MyApp-的/ var /移动/应用/ A7F76BBE-3707-40F5-ACCC-72648EBA71CF /文档/ MyRecording.aac

进入文本文件并运行

cat ~/Desktop/test.txt | openssl dgst -sha

我得到173048e3d6ca10c5370a1ca54a26148ed05641d1

的哈希值

备份中是否存在此文件?也许您正在错误地运行哈希?

编辑:啊,我看到你发布的哈希是SHA1哈希,而正确的哈希是普通的SHA。我会在另一个帖子上更新我的原始答案。