Https 与 iOS 信息安全】的更多相关文章

转载自:swift-cafe 什么是 Https 咱们从最直观的说起. 我们平时在用电脑访问网页的时候,有时候会在地址栏的左边多出一个小锁的图标,就像这样: 这是大多数主流浏览器的一个通用做法,当我们看到这个锁的时候,基本上就说明我们访问的这个网站是基于 Https 协议的了. 那么 Https 到底和我们熟知的 Http 有什么区别呢? 主要的区别就是信息的安全加密. 使用 Https 传输的数据是经过加密的, 而 Http 不会加密. 那么为什么需要对网络请求加密呢? 这就涉及到互联网的基本…
转载自:swift cafe 使用 NSURLSession NSURLSession 是 iOS 原生提供的网络处理库.它提供了丰富的接口以及配置选项,满足我们平时网络处理的大部分需求,同时它也支持 https.关于 NSURLSession 的基本内容,可以参看之前的这篇文章: NSURLSession 网络库 这次我们主要介绍使用 NSURLSession 对 https 的处理,关于 https 的基本原理,大家可以参看这里: Https 与 iOS 信息安全 好了,准备知识都了解了之后…
由于苹果规定2017年1月1日以后,所有APP都要使用HTTPS进行网络请求,否则无法上架,因此研究了一下在iOS中使用HTTPS请求的实现.网上搜索了一些比较有用资料,大家可以参考下 苹果强制升级的HTTPS不仅仅是在接口HTTP上加个S那么简单: 它所有满足的是iOS9中新增App Transport Security(简称ATS)特性: 那满足ATS我们需要做什么呢 1.必须是苹果信任的CA证书机构颁发的证书 2.后台传输协议必须满足: TLS1.2 (这很重要, 后面的自制证书满足这个条…
iOS开发HTTPS实现之信任SSL证书和自签名证书 转自:http://www.jianshu.com/p/6b9c8bd5005a/comments/5539345 (收录一下供自己学习用的) 字数1566 阅读5025 评论76 喜欢30 首先来分析一下什么是HTTPS以及了解HTTPS对于iOS开发者的意义 HTTPS 以及SSL/TSL 什么是SSL? SSL(Secure Sockets Layer, 安全套接字层),因为原先互联网上使用的 HTTP 协议是明文的,存在很多缺点,比如…
由于苹果规定2017年1月1日以后,所有APP都要使用HTTPS进行网络请求,否则无法上架,因此研究了一下在iOS中使用HTTPS请求的实现.网上搜索了一些比较有用资料,大家可以参考下 苹果强制升级的HTTPS不仅仅是在接口HTTP上加个S那么简单:它所有满足的是iOS9中新增App Transport Security(简称ATS)特性:那满足ATS我们需要做什么呢1.必须是苹果信任的CA证书机构颁发的证书2.后台传输协议必须满足: TLS1.2 (这很重要, 后面的自制证书满足这个条件是前提…
二.创建app.plist 1. <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"><dic…
笔者尝试了网上各种办法最后还是找到了方法解决了一系列局域网内测的问题,随手做个笔记记录下,亲测可行. 一.先生成证书 1.进入apache web 的根目录处理证书命令 cd /Library/WebServer/Documents/ios 基于 /Library/WebServer/Documents/ios  根目录下处理命令: a-生成私钥,命令: sudo openssl genrsa -des3 -out app.key 1024 b-生成签署申请,命令: sudo openssl r…
前言: 上周五快要下班的时候,突然收到通知客户希望了解一下部署HTTPS的流程,这种事情谁听了都会有几分诧异的.因为这件事虽然和工作有一定的相关度,但平时不会走这个方向,实际上也较少接触.此外,客户手下应该不缺人,做运维和开发的肯定比我更懂这个,但情况却和我想的不一样. 正文: 客户有需求,就应该尽量满足!因此,尽管之前对Apache.Tomcat的一些配置不熟,也未有过自己部署HTTPS的经验[当然失败的尝试还是有的],便趁着周末了解了一下相关的东西,在本地搭建了环境.实践表明,当你对一个东西…
1.调用电话 1.1 拨打系统电话 调用系统自带的打电话程序,要跳转到打电话程序,打完电话自动跳转回来. 在 iOS9.0 + 系统隐私控制里禁止查询设备中已安装的 App,所以在 iOS9.0 + 系统中要实现应用间跳转还需要配置协议白名单.在发起跳转的 App 的 Info.plist 文件中增加一个 LSApplicationQueriesSchemes 字段,把它设置为数组类型,并配置需要跳转的协议名单. URL 地址:tel://电话号码 iOS 系统版本 < 10.0 NSURL *…
背景 最近App似乎有报异常是DNS无法解析,尝试解决此问题.搜集到的资料很少,甚至连AFN原作者都判定这可能是一个无解的问题,参见: https://github.com/AFNetworking/AFNetworking/issues/2954,不过最终还是靠着stackoverflow上的一丁点提示,顺利找到并汇集成了一个可用的解决方案.大喜,与君共享! 问题描述 通过IP直接访问网站,可以解决DNS劫持问题.DNS劫持,可以通过修改电脑的host文件模拟.如果是HTTP请求,使用ip地址…
URL加载系统----iOS工程师必须熟练掌握     iOS根本离不开网络——不论是从服务端读写数据.向系统分发计算任务,还是从云端加载图片.音频.视频等.   当应用程序面临处理问题的抉择时,通常会选择最高级别的框架来解决这个问题.所以如果给定的任务是通过http://, https:// 或 ftp://进行通讯,那么与 NSURLConnection 相关的方法就是最好的选择了.苹果关于网络的类涵盖甚广,包括从URL加载.还存管理到认证与存储cookie等多个领域,完全可以满足现代Obj…
问题描述: 在手机连接pc的fiddler后,安卓微信打不开https页面,安卓的浏览器.qq等都可以正常访问https,ios也都可以,就只有安卓微信放问https是空白页面 解决思路: 一. 证书没有正确安装 连接抓包工具无法访问https的,首先判断是证书问题.在浏览器访问    ,点击最下面的证书进行安装 安装好证书后,发现仍然访问不了. 重新整理思路,安卓浏览器和qq等都可以正常访问https说明证书配置是正确的.唯独在微信访问异常,在百度后查到有其他人遇到类似的问题,说是证书链不完整…
通讯原理 participant Client participant Server Client->>Server: 以明文传输数据,主要有客户端支持的SSL版本等客户端支持的加密信息 Server-->>Server: 服务端选择加密方式 Server-->>Client: 服务端给客户端返回SSL版本.随机数等信息 Client->>Client: 校验服务端证书是否合法.产生随机数 Client->>Server: 使用服务端随机数加密数…
参考:https://www.jianshu.com/p/235bc6c3ca77 因为ios11经常抓不了包,以前一直没管,今天实在是不行,,,,搞了一下.OK了 步骤: 1.下载并安装charles 2.给PC和手机安装证书 3.给手机安装证书之后,就可以查看了. 4.如果看不了https,把PC的防火墙关掉 5.如果还看不了https,ios的打开 通用-关于-信任证书,信任charles证书. 6.如果还看不了https,对charles做设置 7.如果还看不了,把电脑和手机砸了吧,辣鸡…
背景:全站HTTPS的时代来了 全站HTTPS,请参考:http://www.cnblogs.com/bugly/p/5075909.html 1. 设置BasicHttpBinding的BasicHttpSecurity模型. create Binding时通过URI的Scheme来判断是HTTPS还是HTTP. internal class AtomBinding { private AtomBinding() { } internal static BasicHttpBinding Cre…
前言 开发中遇到需要获取SDK中的数据,由于无法看到代码,所以只能通过监听所有的网络请求数据,截取相应的返回数据,可以通过NSURLProtocol实现,还可用于与H5的交互 一.NSURLProtocol拦截请求 1.NSURLProtoco简介 NSURLProtocol的官方定义 An NSURLProtocol object handles the loading of protocol-specific URL data. The NSURLProtocol class itself…
iOS 新特性总结(since iOS6) iOS 6 1.废除viewDidUnLoad 收到内存警告须要到didReceiveMemoryWarning中处理 [小技巧] -(void)didReceiveMemoryWarning { [super didReceiveMemoryWarning];//即使没有显示在window上.也不会自己主动的将self.view释放. // Add code to clean up any of your own resources that are…
https要比http更加安全一些,也就是说http协议是由ssl+http协议构建的可进行加密传输.身份验证的网络协议要比http协议安全 现在大多数的网站都逐渐用https://,因为安全问题太重要了,有很多的网站都被攻破了,用户数据被泄露. 全站https将是以后网络发展的趋势,国外很多站点都是实行的全站https,中国人对信息安全好像还不是特别重视,甚至很多登录支付页面的是http, 我想在发生了很多安全信息被泄露的事故后,大多人就会越来越重视网络安全问题 所以说https://会是以后…
博客搬家: https原理总结 最近在公司项目的服务器上做一些内部接口,要求使用https,于是花时间研究了一波.我们熟知的http在传输时未对数据进行加密,在传输一些敏感信息时存在着不小的安全隐患.因此,https在http的基础上加上了SSL(Secure Sockets Layer)加密,以保障数据的安全传输.如今使用的TLS实际上是SSL的升级版本.具体有关https的概念可参考百科 https介绍 1.https原理探究 https的保障信息安全的机制,其实用一句话就能概括:clien…
1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler 能捕获Android 和 Windows Phone 等设备发出的 HTTP/HTTPS 请求.同理也可以截获iOS设备发出的请求,比如 iPhone.iPad 和 MacBook 等苹果设备. 今天宏哥讲解和分享Fiddler 如何截获iOS移动端发出的 HTTP/HTTPS 请求. 2.环境准备 Fiddler 如果想要实现手机抓包,需要先满足下面…
一.简介 在前面一篇文章中讲到过实现JavaScript与Native交互的方式有一种就是使用原生内嵌webView.在iOS8之前,开发者只能使用苹果提供的UIWebView类来加载URL或者HTML网页视图,然后通过设置代理,在回调函数中拦截并处理自定义交互事件,功能十分有限,通常只是作为一个辅助视图使用.在iOS8之后,苹果对这方面的技术进行了重构和优化,推出了一个新的框架WebKit.WebKit提供了Native与JavaScript交互的方法,整个框架的结构很清晰,对外暴露的接口友好…
前言 蒲公英,维护后把我上传的包清除了,所以想自己搭建一个用下. 步骤 项目用ruby语言写的,部署起来也很简单支持源码和Docker部署 GitHub | https://github.com/pluosi/app-host 安装Ruby并配置为国内源 安装Ruby的包 # yum install ruby rubygems ruby-devel -y # gem -v 2.7.8 # gem sources --add https://gems.ruby-china.com/ --remov…
前端框架uni-app 可编译到iOS.Android.H5.小程序等多个平台 一套代码编到7个平台 uni-app在跨端数量.扩展能力.性能体验.周边生态.学习成本.开发成本等6大关键指标上拥有极强的竞争优势. HBuilderX内置相关环境 HBuilderX:官方IDE下载地址 uni-app支持通过 HBuilderX可视化界面.vue-cli命令行两种方式快速创建项目 运行的快捷键是Ctrl+r 原生app-云端打包 uni-app 支持离线打包 发布为H5 manifest.json…
接入支付宝准备工作:(关于账号可以是个体商户也可以是企业账号但必须有营业执照) 1.登录蚂蚁金服开放平台  2.创建应用,应用分类网页应用和移动应用.应用提交审核审核通过后得到Appid才能调用相应的接口权限 3.添加功能:一般有扫码付,电脑网站支付,手机网站支付,APP支付.看你的需求什么.移动应用选择APP支付或者是扫码付,而网页应用分为移动端和PC端. 4.商户签约 需要提交相关的资料 一般是要求你提供你的网站地址和APP包等要求 按照支付宝要求来签约相关的支付功能 5.配置你的应用开发配…
最近在做一个搜索附近3公里所有超市信息(已经录入数据库的超市信息)的功能.思路很简单只是获取用户当前地理位置(经纬度),通过sql语句筛选出3公里范围内的所有超市信息,然后传递到前台页面展示出来.但是我是第一次通过移动端web获取用户地理位置,遇到很多的问题,我觉得我有必要记录一下,一方面彰显自己的成就,一方面想把经验分享给大家. 移动web端获取用户地理位置很麻烦,因为涉及用户隐私,所以web获取用户地理位置的方式很少而且精确度很低.我刚知道要做定位的功能,第一时间去看了百度地图API,找到了…
一.数据安全 1.提交用户的隐私数据一定要使用POST请求提交用户的隐私数据GET请求的所有参数都直接暴露在URL中请求的URL一般会记录在服务器的访问日志中服务器的访问日志是黑客攻击的重点对象之一 用户的隐私数据登录密码银行账号… … 2.数据安全仅仅用POST请求提交用户的隐私数据,还是不能完全解决安全问题可以利用软件(比如Charles)设置代理服务器,拦截查看手机的请求数据因此:提交用户的隐私数据时,一定不要明文提交,要加密处理后再提交 常见的加密算法MD5 \ SHA \ DES \…
1.HTTPS传输流程 2.常用加密算法 3.AFN证书校验策略及核心方法 4.SSL Pinning 5.CA证书申请流程 HTTPS经由超文本传输协议进行通信,但利用SSL/TLS来对数据包进行加密.HTTPS开发的主要目的,是提供对网络服务器的身份认证,保护交换数据的隐私与完整性 1.HTTPS传输流程   HTTPS传输流程.png 由于不相信服务器生成的随机数,所以需要客户端生成pre-master-securet,然后再由服务端加密,最后得到master-securet(主密钥),建…
一.假新闻如此猖獗 刚才一位老同事 打电话问:我们公司还是用的HTTP,马上就到2017年了,提交AppStore会被拒绝,怎么办? 公司里已经有很多人问过这个问题,回答一下: HTTP还是可以正常提交,不满足 苹果要求的 HTTPS 也可以正常提交.只需要修改下info.plist里的ATS配置. 另外,昨天(2016-12-21)苹果发布声明,ATS的适配规则往后延,时间还没定.也就是现在,大家什么都不用改了.如果苹果不出这个新闻,大家也不用适配HTTPS,因为苹果规定的是禁止忽略ATS,这…
在Mac下做开发,用Fiddler抓包由于离不开Windows比较痛苦,还好有Charles,到官网http://www.charlesproxy.com/可下载到最新版本(若不支持rMBP可拖到Retinizer中把文字变清晰) HTTP抓包 打开Charles程序 查看Mac电脑的IP地址,如192.168.1.7 打开iOS设置,进入当前wifi连接,设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888 iOS设备打开你要抓包的app进行网络…
其实不久前苹果就发了通告,要求ios上的应用全部以HTTPS来进行接口调用以及数据访问,这样做是为了数据安全,一方面为了自己,另一方面也是对应用的要求更加严格,这么做很好,也加强了市场app的规范,虽然android没有这么提,但是苹果的这个做法肯定会引来移动互联网不小的波动 什么是HTTP,这个不用多说了,目前大家访问的很多网站都是HTTP的,做web应用的也都了解HTTP协议,客户端发送请求到服务端,服务端响应数据给客户端,这一组数据传输就是HTTP HTTPS:其实就是HTTP + SSL…