Objective-C
Xcode
iOS

パスワードは間違っても NSUserDefaults に入れない

More than 3 years have passed since last update.

かなり広く知られてきましたが、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'

https://github.com/TheLevelUp/LUKeychainAccess

ライセンスは MIT です。