我想为某些属性创建我的应用加密,我将保存在CoreData中
所以我想用AES256。 key
的最佳解决方案是什么?所以我可以使用设备中的一些标识符,但我想使用iCloud,那么我可以为每个用户使用哪个单独的常量?我不想硬编码key
。但是我不知道iCloud中一个用户的标识符(如iPhone中的UUID)总是不变的和类似的。
答案 0 :(得分:0)
您可以再使用的iDevice没有唯一的常量标识符。但是,您可以在首次启动应用时创建新的 UUID ,将其存储在NSUserDefaults
并使用 UUID - 它永远不会只要应用程序未重新安装(更新仍将保持 UUID 完整),就会更改。
首次启动应用时,请创建这样的UUID:
NSString* knownUUID = [[NSUserDefaults standardUserDefaults] objectForKey:@"myUUID"];
if (!knownUUID)
{
NSString *uuid = [[NSUUID UUID] UUIDString];
[NSUserDefaults standardUserDefaults] setObject:uuid forKey:@"myUUID"];
[NSUserDefaults standardUserDefaults] synchronize]; // store defaults
}