banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

iOS開發之使用Keychain來存取敏感信息

iOS 開發時一般使用 UserDefaults 來存取 App 的配置信息,但是如果需要保存一些敏感信息的話,這時可以考慮使用 Keychain 來存取。開發時需要注意的是,App 卸載後 UserDefaults 的內容會被刪除,而 Keychain 裡面的則不會,如果首次將內容寫入 Keychain,需要判斷 Keychain 中是否包含之前沒有刪除乾淨的內容。 Keychain (鑰匙串) 是蘋果公司 Mac OS 中的密碼管理系統,iOS 出現後也被引入到 iOS 中,作為用戶密碼管理的重要工具。使用 Keychain 對開發者來說,可以省略掉敏感信息的加密和解密的過程,交由系統管理。

Keychain 的用法也很簡單,蘋果提供了一段示例代碼裡面包含了 KeychainItemWrapper 這個對 Keychain 操作的包裝工具包。使對 Keychain 的操作如同 NSDictionary 一樣簡單

KeychainItemWrapper *keychainItem = [[[KeychainItemWrapper alloc]
initWithIdentifier:@"Identifier"
accessGroup:@"cn.limc.app.boundle"]autorelease];
// 獲取 keychain 中的內容
NSString *value = [keychainItem objectForKey];

// 寫入內容到 keychain
NSString *valueToWrite = @"value to store";
[keychainItem setObject forKey];

蘋果官方 GenericKeychain 示例: http://developer.apple.com/library/ios/#samplecode/GenericKeychain/

參考網址: http://blog.csdn.net/tianyitianyi1/article/details/7643365 http://blog.k-res.net/archives/1081.html

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。