詳解iPhone開發(fā)保存用戶密碼安全
iPhone開發(fā)保存用戶密碼安全方法是本文要介紹的內(nèi)容,安全問題很重要,先來了解本文是如何解決的。作為一名iPhone開發(fā)者, 你需要對你的用戶安全負責. 請問, 你是怎么保存用戶的密碼的?
直接保存到plist里?
加密? AES? DES? 能保證你的代碼不被反編譯拿到你的加密Key?
這也未免太不蘋果了吧. 我Google了一下, 國內(nèi)的開發(fā)者根本沒有注意到這個問題.
蘋果系統(tǒng)中有個程序叫”鑰匙串” (Keychain), 它不僅僅是你申請開發(fā)證書用的, 哈哈. 它可以存密碼!
這也是蘋果給出的保存密碼的***解決方案.
iPhone開發(fā)中也有Keychain, 用過PushFix破解包(就是那個修復推送的小工具)的國內(nèi)iPhone破解用戶應該還有印象.
用原生的Security.framework就可以實現(xiàn)鑰匙串的訪問, 讀寫, 但是只能在真機上進行, 模擬器會出錯. 在Github上, 有個封裝的非常好的類 來實現(xiàn)這個功能, 讓你既能在模擬器又能在真機上訪問鑰匙串.
- //獲取密碼
- + (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;
- //刪除密碼
- + (void) deleteItemForUsername: (NSString *) username andServiceName: (NSString *) serviceName error: (NSError **) error;
類的地址: http://github.com/ldandersen/scifihifi-iphone/tree/master/security
小結(jié):詳解iPhone開發(fā)保存用戶密碼安全方法的內(nèi)容介紹完了,希望通過本文的學習能對你有所幫助!