iOS 使用钥匙串将用户密码存入本地
在 iOS 开发中,用户一般注册时候,APP会将用户的用户名和密码直接保存到本地,便于用户下次直接进行登录。
这样就会牵扯到一个问题,用户的密码不能以明文的形式存储在本地,使用钥匙串进行保存用户的密码较为安全。
钥匙串的使用,需要使用第三方的框架, SSKeychain
#import "ViewController.h"
#import "SSKeychain.h"
#define kBundleID @"alexanderTest"
@interface ViewController ()@property (weak, nonatomic) IBOutlet UITextField *usernameField;@property (weak, nonatomic) IBOutlet UITextField *pwdField;@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.
}// 登录按钮的点击/**一般用户注册之后,会将用户的账户和密码存在本地,但是都不会以明文的形式存储在本地,最为安全的做法就是使用苹果的钥匙串,来记录密码,其采用的是AES 加密算法,较为安全使用的话,1> 就是导入SSKeychain.h2> iOS10 之后,需要在项目工程中 Cabilities 中的Keychain Sharing 选项中开启on*/
- (IBAction)loginBtnClick:(id)sender {// 用户一旦输入username 有长度,就去加载本地的密码if (self.usernameField.text.length > 0) {// 去钥匙串取得密码NSError *error = nil;self.pwdField.text = [SSKeychain passwordForService:kBundleID account:self.usernameField.text error:&error];if (!error) {NSLog(@"取得本地数据成功");}else{NSLog(@"取得本地密码失败或者密码不存在");}}
}- (IBAction)registBtnClick:(id)sender {NSString *username = self.usernameField.text;NSString *pwd = self.pwdField.text;// 将密码保存到本地/**将密码存入本地的方法参数1: 用户的密码参数2:服务名,一般都是此APP的 bundle ID,保证唯一性参数3:用户的账户,要通过账户将密码取出来*/NSError *error = nil;[SSKeychain setPassword:pwd forService:kBundleID account:username error:&error];if (!error) {NSLog(@"存数据成功");}
}@end
iOS 使用钥匙串将用户密码存入本地相关推荐
- 修改MOSSAD用户密码或本地用户密码
sharepoint2007的功能之强大,大家有目共睹.但其自身总会存在一些瑕疵.许多人在抱怨产品组怎么不一起开发个修改密码的页面呢?其实这些只要我们自己动手就可以轻易的解决了.以下就是本次的Demo ...
- 将CSDN600W用户及密码帐号存入本地MySql数据库
有感于密码文本文件太大,索性将其存入本地MySql,其中有6个账户因为文件编码问题不知密码,将其删去. 1 import java.io.BufferedReader; 2 import java. ...
- IOS的钥匙串,确保本地隐私数据的安全
* 苹果的"生态圈",钥匙串访问,使用 AES 256 加密算法,能够保证用户密码的安全 * 钥匙串访问SDK,是苹果在 `iOS 7.0.3` 版本以后公布的 * 钥匙串访问的接 ...
- php mysql md5加密_php 用户密码MD5加密存入数据库问题//
比如说用户注册后,后台给用户密码MD5加密了在存入数据库,用户在登入的时候输入的密码要与数据库保存的密码对比.我想问的是,用户登入时,后台要把密码用MD5加密后才能与数据库的密码比较吗? 对,确实如此 ...
- ios 密码大小写数字 符号_iOS 用户密码 数字字母特殊符号设置 判断
//直接调用这个方法就行 -(int)checkIsHaveNumAndLetter:(NSString*)password{ //数字条件 NSRegularExpression *tNumRegu ...
- 使用Saminside+Ophcrack破解本地用户密码
Saminside这玩意儿是俄罗斯人的产物,主要用于破解windows系统的用户密码用的一种神奇工具 而Ophcrack是一个使用彩虹表来破解散列值(hash文件)的这么一个程序.下面是我通过 以上两 ...
- iOS应用架构谈(4) 本地持久化方案及动态部署
前言 嗯,你们要的大招.跟着这篇文章一起也发布了CTPersistance和CTJSBridge这两个库,希望大家在实际使用的时候如果遇到问题,就给我提issue或者PR或者评论区.每一个issue和 ...
- 如何正确对用户密码进行加密?转自https://blog.csdn.net/zhouyan8603/article/details/80473083...
本文介绍了对密码哈希加密的基础知识,以及什么是正确的加密方式.还介绍了常见的密码破解方法,给出了如何避免密码被破解的思路.相信读者阅读本文后,就会对密码的加密有一个正确的认识,并对密码正确进行加密措施 ...
- 如何正确对用户密码进行加密?
本文介绍了对密码哈希加密的基础知识,以及什么是正确的加密方式.还介绍了常见的密码破解方法,给出了如何避免密码被破解的思路.相信读者阅读本文后,就会对密码的加密有一个正确的认识,并对密码正确进行加密措施 ...
最新文章
- eclipse调用JNI之环境的搭建
- C++ 字符ASC排序
- JAVA基础知识(2)
- requests 可以 scrapy 不行_python学习教程,B站博人传评论数据抓取 scrapy
- QT_4_QpushButton的简单使用_对象树
- 【python】-- Django 中间件、缓存、信号
- python 组合数据_python-组合数据类
- form表单会跨域_form 表单跨域提交
- java 数据包含_java – 包含大量数据库表的通用实现
- 如何在Mac 上的“自动操作”中使用所选文件创建工作流程?
- 122. PHP 性能问题(3)
- 【python入门到实践1】简介和环境搭建
- 性能优化-测试If-Else和if哪个性能更好
- 贩卖个人信息非法获利300余万,平安惠普、拍拍贷都是买方
- RFBNet模型推理
- 手机游戏创业者的苦涩:成功率被指0.1%
- 武汉大学计算机 韩立,文澜学术系列讲座 第135期 武汉大学经济与管理学院韩立宁老师:“Financial Network and Industry Connectedness”...
- 迅为stm32mp157开发板资料手册+实战教程+视频教程
- 漫画:骚操作系列(必须掌握的疯子找座问题)
- 【转载】提问的智慧(How To Ask Questions The Smart Way)