美文网首页iOS
iOS 应用开发,用户密码存储技术--KeyChain

iOS 应用开发,用户密码存储技术--KeyChain

作者: 清雪飘香 | 来源:发表于2015-09-19 21:58 被阅读928次

这次的Xcode 事件,让我们应用的安全意识更强了。之前项目中存储都是用的NSUserDefault , 那是存放在应用沙盒中,是可以逆向出你的用户名和密码的。

OS X 保存密码有个很好的机制,叫做钥匙串,同理,iOS 开发也有这种机制。

将账号密码保存到钥匙串,有个很好的第三方库,SSKeyChain,[github 地址](https://github.com/soffes/sskeychain)。

将SSKeyChain 引入需要用到的类。只需要调用几个类方法就轻松保存账号密码,或者取出账号密码。

service 一般为应用的app name ,是唯一的标识。可以随意写,但是必须和下面用的地方一样。

保存账号密码 (如果你的账号不存在,这里是创建一个账号并保存账号和密码,如果这个账号已经存在,它是更新密码,源代码中有标明)

[SSKeychain setPassword:self.passWd.text forService:@"demo" account:self.userName.text];

通过用户名获得密码

self.passWd.text = [SSKeychain passwordForService:@"demo" account:self.userName.text];

获取最后一个存放的账号密码。

1.获得数组中最后一个账号(密码无法通过这种方式获取)

self.userName.text = [SSKeychain allAccounts].lastObject[@"acct"];

2.密码只能通过这种方式去获得。输出sskeychain 所有的参数没有密码选项,也刚好说明了它 的安全性。

self.passWd.text = [SSKeychain passwordForService:@"demo" account:self.userName.text];

相关文章

  • iOS 应用开发,用户密码存储技术--KeyChain

    这次的Xcode 事件,让我们应用的安全意识更强了。之前项目中存储都是用的NSUserDefault , 那是存放...

  • ios Keychain存储

    iOS设备中的Keychain是一个安全的存储容器,可以用来为不同应用保存敏感信息比如用户名,密码,网络密码,认证...

  • Keychain Sharing

    1、前言 在iOS开发中,我们或多或少会使用Keychain服务来存储用户的账号密码、证书或其他重要的信息。 根据...

  • iOS Keychain的使用总结记录

    什么是Keychain: Keychain是iOS中的一个安全的存储容器,可以为不同的应用存储敏感信心,例如,用户...

  • IOS使用 SFHFKeychainUtils 在 iOS ke

    为什么使用Keychain存储用户敏感信息 : iOS的keychain服务提供了一种安全的保存私密信息(密码,序...

  • SFHFKeychainUtils

    使用Keychain存储用户敏感信息 iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书...

  • 查看iOS越狱设备keyChain数据

    根据苹果的介绍,iOS设备中的keychain是一个安全的存储容器,可以用来为不同应用保存敏感信息比如用户名,密码...

  • 用keychain存储密码

    1.存本地不安全; 2.根据获取的token;来保持登录; 3.用keychain存储密码 iOS开发

  • keychain(一)

    iOS keychain 主要是用来保存一些用户敏感数据。比如用户密码,token。keychain是用SQLit...

  • iOS数据持久化方案

    技术由来 数据持久化是iOS开发中必不可少的一项技能。因为开发中我们多会涉及到用户信息存储、文件存储、应用内容缓存...

网友评论

  • husky_duang:xcode 里面要不要打开钥匙串?为什么我的程序删除了uuid就变了
    清雪飘香:@固执的 不用。

本文标题: iOS 应用开发,用户密码存储技术--KeyChain

本文链接:https://www.haomeiwen.com/subject/cqabcttx.html