想在應用裏保存賬號、密碼等信息的話,直接存到 plist 裏顯然是不負責任的,本身折騰加密既麻煩又不能保證不被反編譯破解。實際上蘋果 iOS 和 Mac OS X 系統自帶了一套敏感信息保存方案:"鑰匙串" (Keychain)。git
用原生的 Security.framework 就能夠實現鑰匙串的訪問、讀寫。可是隻能在真機上進行,模擬器會出錯。在 Github 上有個封裝的很是好的類來實現這個功能,讓你既能在模擬器又能在真機上訪問鑰匙串。類的地址: http://github.com/ldandersen/scifihifi-iphone/tree/master/securitygithub
具體代碼:iphone
//獲取密碼
+ (NSString *) getPasswordForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;加密
//保存密碼
+ (void) storeUsername: (NSString *) username andPassword: (NSString *) password forServiceName: (NSString *) serviceName updateExisting: (BOOL) updateExisting error: (NSError **) error;url
//刪除密碼
+ (void) deleteItemForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;ip
原文地址: http://b.imi.im/?p=362ci