01-钥匙串

1. 通过系统提供的钥匙串功能可以在本地保存密码,系统使用AES的方式对密码加密 a. 查看Safari中保存的密码

2. 使用第三方框架SSKeychain把密码保存到钥匙串和获取钥匙串中的密码 a. 获取钥匙串中的所有用户

[SSKeychain allAccounts]
b. 把密码保存到钥匙串中 service可以用boundleID

[SSKeychain setPassword:self.pwdView.text forService:kPWDCHAINKEY account:self.nameView.text]; c. 从钥匙串中获取密码

self.pwdView.text = [SSKeychain passwordForService:kPWDCHAINKEY account:self.nameView.text];

02-指纹识别 

1. 指纹识别
a. iPhone5s推出指纹识别,touchID b. iOS8中开放了指纹识别的sdk

2. 指纹识别的使用

  1. 导入头文件
    #import <LocalAuthentication/LocalAuthentication.h>
  2. 判断设备是否支持指纹识别
    LAContext *ctx = [[LAContext alloc] init];

//判断是否支持指纹识别
if ([ctx canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:NULL]) {

NSLog(@"支持");

//指纹识别

[ctx evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"指纹验证" reply: ^(BOOL success, NSError *error) {

NSLog(@" == %d===%@",success,error); if (success) {

//指纹验证成功后,请求服务器支付或登录 }

}]; }else{

NSLog(@"不支持"); }

3. 只有iOS8以后才有指纹识别的api //判断设备是否是iOS8的系统

if ([UIDevice currentDevice].systemVersion.floatValue < 8) {

return; }

4. 指纹识别的错误

//指纹无法识别

LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed, //用户点了取消按钮

LAErrorUserCancel //用户点击了输入密码按钮

LAErrorUserFallback //系统取消,激活了其他应用

= kLAErrorUserCancel, = kLAErrorUserFallback,

LAErrorSystemCancel //验证无法启动,设备上没有设置密码

= kLAErrorSystemCancel,

LAErrorPasscodeNotSet = kLAErrorPasscodeNotSet, //验证无法启动,设备上没有Touch ID

LAErrorTouchIDNotAvailable = kLAErrorTouchIDNotAvailable, //验证无法启动,没有输入指纹

LAErrorTouchIDNotEnrolled = kLAErrorTouchIDNotEnrolled,

03. GET和POST对比 

a. GET
i. GET一般是获取服务器上的数据

ii. GET方式是通过url传递数据,效率高 iii. 请求的数据在URL上,不安全

1) login.php?username=zs&pwd=123456

2) 参数中如果有中文和特殊符号(? = &等)应该进行url编码 iv. GET请求的结果能够被浏览器缓存

b. POST
i. POST一般是往服务器提交数据,并获取服务器返回的结果

ii. POST方式是通过请求体传输数据,效率低 iii. 请求的数据用户看不到,相对安全

iv. POST请求不能被浏览器缓存

iOS 钥匙串 指纹识别 get和Post请求的区别的更多相关文章

  1. iOS - TouchID 指纹识别

    前言 NS_CLASS_AVAILABLE(10_10, 8_0) @interface LAContext : NSObject 指纹识别功能是 iPhone 5s 推出的,SDK 是 iOS 8. ...

  2. ios开发-指纹识别

    最近我们使用支付宝怎么软件的时候,发现可以使用指纹了,看起来是否的高大上.当时苹果推出了相关接口,让程序写起来很简单哈. 在iPhone5s的时候,苹果推出了指纹解锁.但是在ios8.0的时候苹果才推 ...

  3. 如何使用iOS 8 指纹识别,代码、示例

    像想象,iOS 8指纹是非常容易使用的.只是需要能够获得一个接口,弹出屏幕模式框,随着app store在相同的. 直接上的条形码.以下代码是从复制Apple官方文件. 加入LocalAuthenti ...

  4. iOS开发——基础篇——get和post请求的区别

    HTTP 定义了与服务器交互的不同方法,最常用的有4种,Get.Post.Put.Delete,如果我换一下顺序就好记了,Put(增),Delete(删),Post(改),Get(查),即增删改查,下 ...

  5. iOS指纹识别Touch ID的安全性探讨

    苹果公司在 iPhone 5s 的发布会上公布了全新的指纹识别安全技术,也就是 Touch ID,开创了生物安全识别技术在便携设备上使用的新篇章.此后,苹果还将此技术带到了 iPad 上.此前没有任何 ...

  6. IOS指纹识别调用

    最近正在开发的一个app需要加入指纹识别的功能,先搜索一下找到官方文档,简单易懂: https://developer.apple.com/library/ios/documentation/Loca ...

  7. 指纹识别人脸识别 iOS

    //1.判断iOS8及以后的版本 if([UIDevice currentDevice].systemVersion.doubleValue >= 8.0){ //从iPhone5S开始,出现指 ...

  8. iOS开发——Touch ID 指纹识别

    项目中为了安全性,一般使用密码或iPhone手机的指纹识别Touch ID. 第一步,判断系统是否支持,iOS8.0及以上才支持. 第二步,判断手机是否支持,带Touch ID的手机iPhone5s及 ...

  9. iOS指纹识别

    #import "ViewController.h" #import <LocalAuthentication/LocalAuthentication.h> @inte ...

随机推荐

  1. spring + myBatis 常见错误:SQL语法错误

    在程序运行时,有时候会出现如下错误: 这个错误通常是你的sqlmapper.xml中sql语句语法有错误.所以请仔细查看你sql语句是否正确,比如{#id}这样写就会报上述错误,其实应该#{id}这样 ...

  2. CentOs7 网卡出现问题Job for network.service failed

    centos7网卡是需要写入MAC地址的不然启动不了 在运行“/etc/init.d/network restart”命令时,出现错误“Job for network.service failed.  ...

  3. Divide and conquer:Dropping tests(POJ 2976)

    最大化平均值 题目大意:给定你n个分数,从中找出k个数,使∑a/∑b的最大值 这一题同样的也可以用二分法来做(用DP会超时,可见二分法是多么的实用呵!),大体上是这样子:假设最大的平均值是w,那么题目 ...

  4. codeforces Educational Codeforces Round 5 A. Comparing Two Long Integers

    题目链接:http://codeforces.com/problemset/problem/616/A 题目意思:顾名思义,就是比较两个长度不超过 1e6 的字符串的大小 模拟即可.提供两个版本,数组 ...

  5. HTML 表单 选择器

    表单元素 每个表单都对应一个<form></form>标签    表单内所有元素都写在 <form></form>里面: 1.最重要的属性 <fo ...

  6. Vim 强大的配置

    新建文件.vimrc,然后复制如下内容,并将该文件放到vim安装目录下 map <F9> :call SaveInputData()<CR> func! SaveInputDa ...

  7. xcode报错,svn : is not a workingCopy

    解决方案: 1.点击对应的targets 2.选择build phases 3.在红框处有一个run script选项(截图中已经删除了.),点击下拉按钮,看看是否是与svn有关的东西, 如果是,删除 ...

  8. 解决jetty7.0.pre5启动时报ClassNotFoundException: javax.interceptor.InvocationContext异常的问题

    一.背景介绍:最近项目在使用maven命令行运行jetty服务器时出现ClassNotFoundException: javax.interceptor.InvocationContext异常 二.环 ...

  9. ios手势

    iOS 手势操作:拖动.捏合.旋转.点按.长按.轻扫.自定义 大 中 小   1.UIGestureRecognizer 介绍 手势识别在 iOS 中非常重要,他极大地提高了移动设备的使用便捷性. i ...

  10. [Android Pro] CountDownTimer倒计时

    定时执行在一段时候后停止的倒计时,在倒计时执行过程中会在固定间隔时间得到通知(译者:触发onTick方法),下面的例子显示在一个文本框中显示一个30s倒计时: new CountdownTimer(3 ...