LoginSignup
18
16

More than 5 years have passed since last update.

iOSの各種バックアップとKeychainの復元状況を検証

Last updated at Posted at 2016-02-08

アプリからKeychainに保存したデータがバックアップされているのか確認したかったので総当たりで検証したメモです。
結果から言うと同一デバイス間か異なるデバイス間かで結果が変わります。

環境

デバイス

  • iPhone6+ (8.4.1)
  • iPhone5 (8.4.1)

リセット方法

  • すべてのコンテンツと設定を消去

同一デバイス間で検証

iPhone6+ -> iPhone6+

復元方法 Keychain
新しいiPhoneとして設定 データなし
iCloudバックアップから復元 復元されている
iTunesバックアップから復元 復元されている
暗号化されたiTunesバックアップから復元 復元されている

異なるデバイス間で検証

iPhone5 -> iPhone6+

復元方法 Keychain
iCloudバックアップから復元 データなし
iTunesバックアップから復元 データなし
暗号化されたiTunesバックアップから復元 復元されている

まとめ

  • 機種変だと異なる端末から復元されるパターンになるので注意した方が良い。例えばデータベースのアクセスキーをKeychainに保存しているアプリでアプリをバックアップに含めていた場合に、アプリ内のデータベースは復元されるけどKeychainに保存していたアクセスキーは復元されないパターンがあるのでそうなるとデータベースにアクセスできない状況が起きます。
  • 他に未検証なのはiOS9とiTunesで初期化してから復元がありますが、仮に挙動が変わってもKeychainが復元されない場合を想定していれば大丈夫そう。
18
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
16