Cocoaphony

Stop mutating, evolve

Quick Capture About iPhone Keychain

  • There is only one keychain, and it belongs to the OS.
    • It is backed-up, but it’s encrypted w/ a key that is not backed-up.
  • You can only read your own keychain entries, so you can’t share data this way
  • “Your own” is defined by your application name (not identifier)
    • If you change your application name to match some other application, you can read it’s keychain
    • You will of course overwrite that application in the process
    • This fact does not appear to be documented, so it might change
  • Because the keychain belongs to the OS, it outlives your app.
    • Even if your app is deleted from the phone
    • And reinstalled… your old keychain data is still there.
    • Beware if you change your keychain format
    • I know of no way to clear out the old data except to walk through and delete them all inside your app