加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 站长资讯 > 评论 > 正文

iOS中常见的几种加密方式总结!

发布时间:2019-04-11 04:22:36 所属栏目:评论 来源:iOS开发_小迷糊
导读:这篇文章主要给大家介绍了关于iOS中常见的几种加密方法,其中包括 base64加密、POST加密、Token值介绍、MD5加密--(信息-摘要算法) 哈希算法之一、时间戳密码以及指纹识别等方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。 前言 在我们日常

创建请求

  1. NSURL *url = [NSURL URLWithString:@"http://localhost/login/loginhmac.php"]; 
  2. // POST 要手动设置方法,因此为可变 
  3. NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 
  4. // 设置请求方法 
  5. request.HTTPMethod = @"POST"; 
  6. // 设置请求体内容 
  7. NSString *body = [NSString stringWithFormat:@"username=zhangsan&password=%@", password]; 
  8. request.HTTPBody = [body dataUsingEncoding:NSUTF8StringEncoding]; 

发送请求

  1. [[[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { 
  2. NSLog(@"%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]); 
  3. }] resume]; 

六. 钥匙串访问

基本介绍

苹果在 iOS 7.0.3版本以后公布钥匙串访问的SDK.钥匙串访问接口是纯C语言的.

  • 钥匙串使用 AES 256加密算法,能够保证用户密码的安全.
  • 钥匙串访问的第三方框架SSKeychain,是对C语言框架的封装.注意:不需要看源码.
  • 钥匙串访问的密码保存在哪里?只有苹果才知道.这样进一步保障了用户的密码安全.

简单使用

参数介绍

  • Password :需要存储的密码信息.
  • Service :用来标识 app ,app的唯一标识符.
  • account :账户信息,当前密码所对应的账号.

利用钥匙串进行加密

  1. // 获取应用程序唯一标识. 
  2. NSString *bundleId = [NSBundle mainBundle].bundleIdentifier; 
  3. // 利用第三方框架,将用户密码保存在钥匙串 
  4. [SSKeychain setPassword:self.pwdText.text forService:bundleId account:@"wpf"]; 

从钥匙串加载密码

  1. self.pwdText.text = [SSKeychain passwordForService:bundleId account:@"wpf"]; 

七. 指纹识别

简单介绍

指纹识别功能是 iphone 5S之后推出的.SDK是 iOS 8.0 推出!

推出指纹识别功能的目的,是为了简化移动支付环节,占领移动支付市场.

使用步骤

导入框架

  1. #import 

获得当前系统版本号

  1. float version = [UIDevice currentDevice].systemVersion.floatValue; 
  2. if (version < 8.0 ) // 判断当前系统版本 { 
  3. NSLog(@"系统版本太低,请升级至最新系统"); 
  4. return; 

实例化指纹识别对象,判断当前设备是否支持指纹识别功能(是否带有TouchID)

  1. // 1> 实例化指纹识别对象 
  2. LAContext *laCtx = [[LAContext alloc] init]; 
  3. // 2> 判断当前设备是否支持指纹识别功能. 
  4. if (![laCtx canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:NULL]) { 
  5. // 如果设备不支持指纹识别功能 
  6. NSLog(@"该设备不支持指纹识别功能"); 
  7. return; 
  8. }; 

指纹登陆(默认是异步方法)

  1. [laCtx evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"指纹登陆" reply:^(BOOL success, NSError *error) { 
  2. // 如果成功,表示指纹输入正确. 
  3. if (success) { 
  4. NSLog(@"指纹识别成功!"); 
  5. } else { 
  6. NSLog(@"指纹识别错误,请再次尝试"); 
  7. }]; 

总结:

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读