IOS keychain-更好的安全存儲

iOS的keychain服務提供了一種安全的保存私密信息(密碼,序列號蔗衡,證書等)的方式再榄,每個ios程序都有一個獨立的keychain存儲。相對于NSUserDefaults襟诸、文件保存等一般方式瓦堵,keychain保存更為安全,而且keychain里保存的信息不會因App被刪除而丟失励堡,所以在重裝App后谷丸,keychain里的數(shù)據(jù)還能使用。從ios 3应结。0開始刨疼,跨程序分享keychain變得可行泉唁。

如何需要在應用里使用使用keyChain,我們需要導入Security.framework 揩慕,keychain的操作接口聲明在頭文件SecItem.h里亭畜。直接使用SecItem.h里方法操作keychain,需要寫的代碼較為復雜迎卤,為減輕咱們程序員的開發(fā)拴鸵,我們可以使用一些已經(jīng)封裝好了的工具類,下面我會簡單介紹下我用過的兩個工具類:KeychainItemWrapper和SFHFKeychainUtils蜗搔。

?KeychainItemWrapper 下載地址劲藐。只需要把“KeychainItemWrapper.h”和“KeychainItemWrapper.m”拷貝到我們項目,并導入Security.framework 樟凄。KeychainItemWrapper的用法:

/** 初始化一個保存用戶帳號的KeychainItemWrapper */

KeychainItemWrapper *wrapper = [[KeychainItemWrapper alloc] initWithIdentifier:@"Account Number"

accessGroup:@"YOUR_APP_ID_HERE.com.yourcompany.AppIdentifier"];

//保存帳號

[wrapper setObject:@"<帳號>" forKey:(id)kSecAttrAccount];

//保存密碼

[wrapper setObject:@"<帳號密碼>" forKey:(id)kSecValueData];

//從keychain里取出帳號密碼

NSString *password = [wrapper objectForKey:(id)kSecValueData];

//清空設置

[wrapper resetKeychainItem];

其中方法“- (void)setObject:(id)inObject forKey:(id)key;”里參數(shù)“forKey”的值應該是Security.framework 里頭文件“SecItem.h”里定義好的key聘芜,用其他字符串做key程序會崩潰!

SFHFKeychainUtils是另一個封裝了KeyChain簡單操作的第三方類庫缝龄,使用上比KeychainItemWrapper要簡單點汰现,SFHFKeychainUtils只提供了獲取、保存和刪除三個方法:

SFHFKeychainUtils 提供了在 iOS keychain中安全的存儲密碼的工具

下載地址

1叔壤、引入Security.frameWork框架瞎饲。

2、引入頭文件:SFHKeychainUtils.h.

3炼绘、存密碼:

[SFHFKeychainUtils storeUsername:@"dd" andPassword:@"aa"forServiceName:SERVICE_NAME updateExisting:1 error:nil];

[SFHFKeychainUtils deleteItemForUsername:@"dd" andServiceName:SERVICE_NAME error:nil];

4嗅战、取密碼:

NSString *passWord =? [SFHFKeychainUtils getPasswordForUsername:@"dd"andServiceName:SERVICE_NAME error:nil];

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市饭望,隨后出現(xiàn)的幾起案子仗哨,更是在濱河造成了極大的恐慌,老刑警劉巖铅辞,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件厌漂,死亡現(xiàn)場離奇詭異,居然都是意外死亡斟珊,警方通過查閱死者的電腦和手機苇倡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來囤踩,“玉大人旨椒,你說我怎么就攤上這事《率” “怎么了综慎?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長勤庐。 經(jīng)常有香客問我示惊,道長好港,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任米罚,我火速辦了婚禮钧汹,結果婚禮上,老公的妹妹穿的比我還像新娘录择。我一直安慰自己拔莱,他們只是感情好,可當我...
    茶點故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布隘竭。 她就那樣靜靜地躺著塘秦,像睡著了一般。 火紅的嫁衣襯著肌膚如雪动看。 梳的紋絲不亂的頭發(fā)上嗤形,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天,我揣著相機與錄音弧圆,去河邊找鬼。 笑死笔咽,一個胖子當著我的面吹牛搔预,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播叶组,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼拯田,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了甩十?” 一聲冷哼從身側響起船庇,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎侣监,沒想到半個月后鸭轮,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡橄霉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年窃爷,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片姓蜂。...
    茶點故事閱讀 39,745評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡按厘,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出钱慢,到底是詐尸還是另有隱情逮京,我是刑警寧澤,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布束莫,位于F島的核電站懒棉,受9級特大地震影響草描,放射性物質發(fā)生泄漏。R本人自食惡果不足惜漓藕,卻給世界環(huán)境...
    茶點故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一陶珠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧享钞,春花似錦揍诽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至狐肢,卻和暖如春添吗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背份名。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工碟联, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人僵腺。 一個月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓鲤孵,卻偏偏與公主長得像,于是被迫代替她去往敵國和親辰如。 傳聞我的和親對象是個殘疾皇子普监,可洞房花燭夜當晚...
    茶點故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內(nèi)容

  • IOS系統(tǒng)中,獲取設備唯一標識的方法有很多: 一.UDID(Unique Device Identifier) U...
    緒雨成瀾閱讀 5,815評論 0 12
  • 這些都是轉載的琉兜! iOS的keychain服務提供了一種安全的保存私密信息(密碼凯正,序列號,證書等)的方式豌蟋,每個io...
    ANTI_JAM閱讀 836評論 0 0
  • IOS7如何獲取設備唯一標識 WWDC 2013已經(jīng)閉幕廊散,IOS7 Beta隨即發(fā)布,界面之難看無以言表...,簡...
    山楊閱讀 448評論 0 0
  • 最近看了很多關于APP注冊登錄方面的內(nèi)容夺饲,自己也有一點小小的心得體會奸汇。大部分的互聯(lián)網(wǎng)產(chǎn)品都離不開注冊登錄模塊。注冊...
    言十硯閱讀 883評論 0 0
  • 迤邐尋春歸去往声,長將山水牽懷擂找。秋千蕩過亂紅來。浮云雖有意浩销,世事總偏乖贯涎。 州府任中遷轉,仿佛滄海塵埃慢洋。...
    曾令琪西南文學雜志總編閱讀 638評論 2 5