我正在创建一个使用加密的新ios应用。我一直使用的方法需要一个唯一的密钥来加密。像:
onWindowResize()
目前,我使用NSUUID生成唯一ID:
- (NSData *)AES256EncryptWithKey:(NSString *)key;
使用KeychainItemWrapper保存id:
[[NSUUID UUID] UUIDString]
在用户首次打开应用时,会在某个时刻生成唯一ID。
我想知道是否有更好的方法。谢谢你的帮助。
答案 0 :(得分:2)
UUID包含非随机的部分。特别是你不希望字符串或密钥长度不正确。键应该是二进制字节数组。
使用Common Crypto SecRandomCopyBytes获取随机密钥。
其他UUID是128位值,您可能需要更长的密钥,例如256位。
答案 1 :(得分:-2)