在iOS应用程序中安全地发送静态文本的最佳方法?

时间:2013-10-23 13:45:52

标签: ios database string security

我有这个应用程序,我向用户显示了许多预定义的字符串。但是,我想保护它们免受我的.ipa整体复制。似乎我不能使用PLists,XML等来存储它们,因为它们很容易被snoops读取。知道如何有效地模糊它们吗?

2 个答案:

答案 0 :(得分:1)

使用您想要的任何加密并在运行时解密字符串?如果有人找到钥匙仍然可读,但会使问题更多。

答案 1 :(得分:0)

使用Rob Napier的RNCryptor库使用AES加密它们。

他在博客中解释了如何:Properly encrypting with AES with CommonCrypto

NSData *iv;
NSData *salt;
NSError *error;
NSData *encryptedData = [RNCryptManager encryptedDataForData:plaintextData
                                                    password:password
                                                          iv:&iv
                                                        salt:&salt
                                                       error:&error];

Rob的高级iOS books看起来很有前途。我没有关系,说实话。

关键是您无法在设备上存储加密密钥。相反,请考虑使用用户的密码作为密钥。用户经常选择不良密码,因此首先将其传递给哈希函数。

当用户登录时,通过相同的哈希函数运行密码并解密数据。