码迷,mamicode.com
首页 > 其他好文 > 详细

KIKeyChain 安全保存用户名和密码

时间:2015-08-06 16:30:24      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:

在 iOS 应用程序开发过程中,我们经常会存储一些比较重要的信息。如涉及到用户系统的 App, 我们就需要考虑自动登录的功能,如果把用户的用户名和密码存储在 NSUserDefault 中很不安全。第一,该信息是明文存储的;第二,可以通过一些工具获取到 NSUserDefault 中的信息。容易造成泄露用户的账号信息。
出于安全方面的考虑,Apple 为我们提供了一个叫 KeyChain 的工具, 存储在里面的信息不能说绝对安全,但是相对于 NSUserDefault 或者其它一些存储在 App 沙盒中的信息,其要安全很多。第一,KeyChain 的存储位置位于 /private/var/Keychains/... ,如果我们要直接访问里面的信息,必须要先越狱之后才能访问;第二,KeyChain 的关键信息都是经过加密处理的,所以就算获取到之后也还需要做破解工作。
网上有很多关于 KeyChain 的访问组件,Apple 也提供了相应的 Demo。但是,感觉不怎么实用,操作起来相对麻烦。所以决定自己对其重新进行封装,所以就有了这个 KIKeyChain 这个组件。

#import "ViewController.h"

#import "KIKeyChain.h"

 

@interface ViewController ()

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    

    KIKeyChain *key = [KIKeyChain keyChainWithIdentifier:@"default_user"];

    [key setValue:@"user1" forKey:@"username"];

    [key setValue:@"password1" forKey:@"password"];

    [key write];

}

 

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

- (void)viewDidAppear:(BOOL)animated {

    [super viewDidAppear:animated];

    

    KIKeyChain *key = [KIKeyChain keyChainWithIdentifier:@"default_user"];

    

    NSLog(@"%@==%@", [key valueForKey:@"username"], [key valueForKey:@"password"]);

}

 

@end

KIKeyChain 安全保存用户名和密码

标签:

原文地址:http://www.cnblogs.com/zero-zql/p/4708242.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!