在iOS上对用户隐藏注册码

在iOS上对用户隐藏注册码,ios,encryption,encoding,plist,nsdata,Ios,Encryption,Encoding,Plist,Nsdata,这里只有一个简短的问题,我想知道我从服务器返回的用户的注册码的最佳放置位置。我正在加密它 唯一的另一个规范是把它藏起来/放在一个没有人知道的地方。 我需要保存状态,所以它需要某种plist,我只是想知道是否有比直接将其添加到plist文件更好的方法来隐藏它 你会怎么做 非常感谢您的帮助。如果您需要安全地存储数据,我强烈建议您使用钥匙链。这里有一个关于创建基本钥匙链应用程序的教程: 您可以安全地将数据存储在密钥链中,而不必担心首先对其进行加密,因为这是由操作系统处理的。但是如果你愿意,你可以 在实

这里只有一个简短的问题,我想知道我从服务器返回的用户的注册码的最佳放置位置。我正在加密它

唯一的另一个规范是把它藏起来/放在一个没有人知道的地方。 我需要保存状态,所以它需要某种plist,我只是想知道是否有比直接将其添加到plist文件更好的方法来隐藏它

你会怎么做


非常感谢您的帮助。

如果您需要安全地存储数据,我强烈建议您使用钥匙链。这里有一个关于创建基本钥匙链应用程序的教程:

您可以安全地将数据存储在密钥链中,而不必担心首先对其进行加密,因为这是由操作系统处理的。但是如果你愿意,你可以


在实现安全性时,千万不要试图在别人看不见的地方隐藏东西:

LOL非常感谢。。我现在就去看看。我一直在做大量关于加密的研究,但这正是我需要的,谢谢!
//encrypting
NSString* strToEncrypt =NewPINField.text
NSString* theKey = @\"KeyKeyKeyKey\";
NSData* dataToEncrypt = [strToEncrypt dataUsingEncoding: NSUTF8StringEncoding];
NSData *encryptedData = [dataToEncrypt EncryptWithKey: theKey];
NSLog(@\"Encrypted data: %@\", encryptedData);


//decrypting
NSData* encryptedData = (NSData*)[profileData objectForKey:@\"PIN\"];
NSString* theKey = @\"KeyKeyKeyKey\"; //notice this is the same as above. It MUST be
NSData *decData = [encryptedData DecryptWithKey: theKey ];
currentPIN = [NSString stringWithUTF8String:[decData bytes]];

NSLog(@\"Decrypted pin: %@\", currentPIN);