Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is a keychain password backed up by iTunes/iCloud?

I have been unable to find an explicit answer to this in the official documentation.

Does the kSecAttrAccessible affect the behavior of how a keychain item of class kSecClassGenericPassword is backed up or not?

Only kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly explicitly states that the item is not backed up. AFAICS, the only reason why kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly makes it explicit is because it's by design.

Does this mean that whether a kSecClassGenericPassword is backed up or not is an implementation detail and as such subject to change?

like image 535
qnoid Avatar asked Nov 09 '22 16:11

qnoid


1 Answers

Emphasis mine.

iCloud Backup acts like an iTunes backup without a password: the keychain items are included in the backup but they are wrapped with a device-specific key. Thus, they can only be restored to the device that originally backed them up, which means that they get lost when you restore the backup to a different device

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

Ref: https://forums.developer.apple.com/message/282490#282490enter image description here

like image 81
qnoid Avatar answered Nov 15 '22 05:11

qnoid