かなり広く知られてきましたが、NSUserDefaults
は安全ではないので、漏れたらまずい情報は KeyChain を使うのがベストプラクティスです。
が、KeyChain なにかと面倒くさい。
今までいい感じの KeyChain ラッパを知らなかったのですが、最近やっと見つけたのでご紹介します。
LUKeychainAccess *keychainAccess = [LUKeychainAccess standardKeychainAccess];
[keychainAccess setString:@"SOME_SECRET_STRING" forKey:@"SOMEKEY"];
読み出しは
[keychainAccess stringForKey:@"SOMEKEY"];
// => "SOME_SECRET_STRING"
ほとんど NSUserDefaults
と使い方変わらないので違和感なく使えます。
Pod は
Podfile
pod 'LUKeyChainAccess'
ライセンスは MIT です。