如何加密,解密和删除plist文件

时间:2012-01-01 19:09:02

标签: iphone xcode4 ios4

我正在制作一个密码应用程序,用于将信用卡,银行信息等用户登录/密码等存储到plist文件中。我用谷歌搜索,我知道如何使用带密钥的AES加密来加密和解密字符串。我得到了简单的登录和密码工作。我加密并保存登录名和密码到NSdata,然后解密并读取它

- (NSData *)AES256EncryptWithKey:(NSString *)key;
- (NSData *)AES256DecryptWithKey:(NSString *)key;


- (NSData*) encryptString:(NSString*)plaintext withKey:(NSString*)key;
- (NSString*) decryptData:(NSData*)ciphertext withKey:(NSString*)key;

我想要做的是当用户通过按下主页按钮退出我的应用程序时,我想加密password.plist文件,将其保存为加密数据文件,然后从他的iPhone中删除可读的password.plist xml文件。 (password.plist文件将有多行,值如信用卡1信息,信用卡2信息等)

当用户重新登录时,我想解密并重新创建password.plist文件。任何人都知道如何做到这一点?

1 个答案:

答案 0 :(得分:3)

  • 您可以使用Keychain Services为您加密密码。
  • 您可以使用NSFileProtectionComplete为您加密plist文件。

在尝试创建自己的协议之前,最好依赖于已经正确实施加密协议的其他人(例如,在您的系统中哪里可以确保加密数据的完整性?)。 Apple已经在这方面做得很好,所以只需使用他们的东西。