iPhone Rescue

バックアップを、そのままの姿で取り戻す。

写真、動画、メッセージ。Manifest.db が破損していても、すべてのファイルを生のバイトデータから識別し、取り出します。

iPhone Rescue
iPhone Rescue
概要
メッセージ
フラグメント救出
整合性チェック
原質エクスポート
アルバム
すべての写真
撮影日順

すべてのアルバムを撮影日順に。

HEIC はプレビュー時にその場で変換。エクスポートは元の HEIC バイトと EXIF を保持。動画は QuickTime メタデータを維持します。

iPhone Rescue

ネイティブのバブル表示。

会話全文、画像・動画の添付ファイル、iOS 14 以降の attributedBody — 生テキスト列と 100% 一致します。

iPhone Rescue
いる?
この前の写真、送ってもらえる?
ありがとう 👍

Manifest が壊れていても、復元できます。

データベースを迂回し、JPEG、HEIC、MOV、SQLite、plist、PDF をヘッダーのマジックバイトで識別して種類別にエクスポートします。

フラグメント救出
スキャン完了
模式図
タイプ件数合計サイズ
heic— GBエクスポート ›
jpeg— GBエクスポート ›
mov— GBエクスポート ›
png— GBエクスポート ›
sqlite— MBエクスポート ›

破損箇所をひと目で把握。

SQLite の PRAGMA integrity_check を実行し、Manifest が示すファイル数とディスク上に実在するファイル数を照合します。

iPhone Rescue
データベース
Manifest.db破損
Photos.sqlite正常
sms.db正常

1バイトも変えない。

元のファイル名、元の EXIF、mtime は撮影日時に設定。エクスポート済みのファイルはスキップされ、いつでも再開できます。

iPhone Rescue
進行状況
模式図
エクスポート中···
~/Desktop/rescued/…

壊れたインデックスを超えて。
生のバイトデータへ、直接。

iOS バックアップはすべてのファイルを SHA1 ハッシュにリネームし、<root>/xx/ サブディレクトリに格納します。元のファイル名と撮影日時は Manifest.db の中にのみ存在します。このデータベースが破損すると通常のツールは機能を失いますが、バイトデータそのものは無傷のままです。

マジックバイトによる識別

各ブロブの先頭 32 バイトを読み取ります。JPEG は FF D8 FF で始まります。PNG は 89 50 4E 47。HEIC はバイト 4 に ftyp ボックスがあり、heic ブランドが続きます。SQLite は SQLite format 3 で始まります。

推測も推論も行いません。一致すればそのタイプに分類し、一致しなければ「その他」として生のバイトデータとともに保持します。

出力例(模式図)
$ iphone-rescue scan  ./Backup

  Manifest.db ............... corrupt
  Photos.sqlite ............. ok
  sms.db .................... ok

  blobs on disk ............. xxxx
  blobs recognised .......... xxxx

  heic      ···     ·· GB
  jpeg      ···     ·· GB
  mov       ···     ·· GB
  png       ···     ·· GB
  sqlite    ···     ·· MB
  plist     ···     ·· MB
100%
ローカルで実行。サーバー不要。
0 KB
外部ネットワークへの送信データ。
3
対応デスクトッププラットフォーム(macOS / Windows / Linux)。
読み取り専用
バックアップ元には一切書き込まない。

静かに、着実に。

数万枚の写真にも対応できる、邪魔をしないインターフェイス。

概要
iPhone Rescue
アルバム
メッセージ
フラグメント救出
整合性チェック
原質エクスポート
デバイス
iPhone 14 Pro
バックアップ概要(模式図)
デバイス
iPhone 14 Pro
システム
iOS 18
最終バックアップ
最新
バックアップサイズ
— GB
整合性
— / — 合格
識別済み
— 件
概要
デバイス情報、整合性、クイックアクション — 1 画面で。
アルバム
iPhone Rescue
概要
メッセージ
フラグメント救出
整合性チェック
原質エクスポート
アルバム
すべての写真
撮影日順
アルバム
撮影日順の連続ストリーム。HEIC はその場で変換。
メッセージ
iPhone Rescue
概要
アルバム
フラグメント救出
整合性チェック
原質エクスポート
会話
お母さん
iMessage · — 件
いる?
この前の写真、送ってもらえる?
ありがとう 👍
メッセージ
iMessage バブル表示、添付ファイル含む。
フラグメント救出
iPhone Rescue
概要
アルバム
メッセージ
整合性チェック
原質エクスポート
フラグメント救出
タイプ別にグループ化
プレビューしてからエクスポート
タイプ件数合計サイズ
heic— GBエクスポート ›
jpeg— GBエクスポート ›
mov— GBエクスポート ›
png— GBエクスポート ›
sqlite— MBエクスポート ›
フラグメント救出
ファイルタイプ別にグループ化。プレビューしてからエクスポート。

UI 模式図。実際のスクリーンショットはリリースビルドに同梱されます。

スペック

対応プラットフォーム
macOS 12+ (Apple Silicon / Intel) · Windows 10+ (x64) · Linux (x86_64)
バックアップ形式
iTunes / Finder 非暗号化バックアップ(iOS 8 〜 最新)
読み取り対象
Manifest.db · Photos.sqlite · sms.db · 生ブロブディレクトリ
対応画像形式
HEIC / HEIF · JPEG · PNG · GIF(HEIC はプレビュー用に JPG へ変換。エクスポートは元のバイトを保持)
対応動画形式
MOV / MP4 / M4V / WebM(バイト単位の完全エクスポート)
インストールサイズ
macOS、Windows、Linux .deb いずれも 35 MB 以下
ネットワーク
ループバック(127.0.0.1)のみ。テレメトリなし。自動アップデート確認なし。
データの取り扱い
すべてお使いのマシン上で完結。バックアップ元は読み取り専用 — 1 バイトも変更しません。

今すぐダウンロード。

3 プラットフォーム対応。ネイティブビルド。

すべてのリリースには SHA-256 チェックサムが付属しており、ダウンロード後にファイルの整合性を検証できます。

よくある質問

アプリはオンラインに接続しますか?+

しません。バックエンドは 127.0.0.1 にのみバインドされます。テレメトリ、アナリティクス、自動アップデート確認はいずれも行いません。完全オフラインで動作します。

元のバックアップが変更されることはありますか?+

ありません。すべての SQLite 接続は mode=ro&immutable=1 を使用します。ファイル操作はすべて読み取り専用です。キャッシュはアプリ自身のデータディレクトリにのみ書き込まれます。

暗号化バックアップには対応していますか?+

今回のリリースでは対応していません。現時点では、iTunes または Finder で暗号化を無効にしてバックアップを作り直す必要があります。

大容量バックアップでは遅くなりますか?+

なりません。アルバムは 120 件ずつ遅延読み込みされ、サムネイルはオンデマンドで生成・キャッシュされます。フラグメント救出にはストリーミングスキャンを使用します。

なぜデスクトップアプリなのですか?+

バックアップは数十〜数百 GB にもなります。クラウドサービスにアップロードする合理的な理由はありません。オフライン対応で、データがマシンから外に出ないローカルデスクトップアプリだけが、唯一適切な形態です。

リリースを検証するにはどうすればよいですか?+

すべてのリリースには SHA-256 チェックサムが付属しています。ダウンロード後、macOS / Linux では shasum、Windows では certutil を使ってターミナルで検証し、ファイルが改ざんされていないこと、転送中に破損していないことを確認できます。