导航:首页 > 数据处理 > 为什么要篡改请求数据

为什么要篡改请求数据

发布时间:2023-03-02 08:21:15

A. iOS 网络数据安全(防止抓包)

在上个例子中,小客和小服在沟通中存在一个很大的安全隐患,假设邮差在送信过程中被人拦截下来,并篡改了信的内容,这样就会导致隐私泄露和信息被恶意修改问题,并且小客和小服完全不知道发生了什么。我们如果使http请求更安全呢?

A 参考 https://github.com/SmileZXLee/aboutHttp.git

1.服务端生成一对公钥和私钥把公钥交给客户端,
当客户端需要进行数据请求的时候,数据加密处理,客户端保存的公钥,对请求数据进行加密传给后台,后台利用私钥对请求解密,拿出参数进行处理后再加密返回给客户端.客户端对返回的数据进行解密然后进行界面的展示

2.其实第一个很多时候就可以了.对于复杂的APP,有很多接口是不用加密的.这样就出现了防代理的模式:

这里用的CFNetwork.framework框架,进行代理的获取.
这种接口的处理对于用户开VPN的情况下很多时候是有错误的效果.他其实没有代理想抓你包的意思.但是开的VPN会被认为是代理了,导致无法使用APP.

3.SSL Pinning

通过对服务端生成的.cer证书进行域名校验,服务器通过.crt证书导出.cer放到客户端进行处理.
NSURLSession处理

或者是AF里面自定义

证书会失效,证书由于是服务端生成的根据域名来的所以一般最长的是一年的证书.所以不能忘了换,不然可能会对接口请求产生问题.
那么还有没有不用证书来校验的方式呢?还能防止抓包呢?

苹果官方文档

CFNetWork

这个属性可以设置网络代理,默认值是 NULL,使用系统的代理设置。
configuration.connectionProxyDictionary = @{};

https://github.com/frankKiwi/FNKSafaNet.git

以上四个方案,建议是第一个加密 和 第四个结合处理.第四个对于H5页面的网络请求还是可以抓到的.

IOS七层协议:
从下到上:
a.物理层:传输的是比特流,网卡位于这层。
b.数据链路层:本层传输的是帧;本层主要定义了如何格式化数据,错误检测。交换机位于本层
c.网络层:本层传输的是数据包,路由器位于本层。本层协议是IP协议(Internet Protocol Address),主要功能是路由选择最短路径,将数据包从发送端路由到接收端
d.传输层:协议有TCP(传输控制协议)/UDP(用户数据报协议);主要是控制重传、数据分割之类的,主要是解决数据之间的传输,和传输质量。是IOS最核心的一层,其中TCP协议是最重要的协议
e.会话层:不同机器之间建立会话
f.表示层:解决不同系统之间的语法问题
g.应用层:应用网络中发送数据:需要注意Http协议(超文本传输协议),Https(超文本传输安全协议)

TCP/IP四层模型
与IOS七层模型相同,从下往上依次为:
a.链路层(物理层+数据链路层),
b.网络层(IP),
c.传输层(TCP),
d.应用层(应用层+表示层+会话层)(HTTP)。

阅读全文

与为什么要篡改请求数据相关的资料

热点内容
什么是数据独立性分哪些层次 浏览:230
亚马逊产品单个包装怎么多个卖 浏览:619
证券账号多久没有交易会休眠 浏览:663
客服跟代理有什么区别 浏览:116
哪些手游端能交易 浏览:194
河南哪里有古董交易市场 浏览:817
时富交易所是什么 浏览:713
徕卡全站仪如何提取数据 浏览:653
云南男装代理有哪些牌子 浏览:831
南宁面料市场到哪个站下车 浏览:155
县城技术类事业单位工资一般多少 浏览:33
浅谈通过会计信息化有什么收获 浏览:464
spss数据模板是什么 浏览:24
文档筛选删除后剩余的数据在哪里 浏览:558
市场半边天是什么意思 浏览:46
真正的名牌服装批发市场在哪里 浏览:157
菜市场买花甲怎么选 浏览:754
微信小程序奥特曼抽卡游戏王的激活码是什么 浏览:131
数据线灰蓝是什么意思 浏览:144
天猫产品如何查总销量 浏览:185