文章目录 前言 I、实现步骤 1.1 签名原始串:`按照参数名ASCII码从小到大排序并拼接`[递归的方式进行实现] 1.2 MD5加密(具体的算法和密钥计算出签名结果) 1.3 key 的存储 1.4 敏感逻辑的保护方案:把签名函数名隐藏在结构体里,以函数指针成员的形式存储 II、 用法 & demo下载 2.1 用法 2.2 签名demo 下载地址 III、 常见问题 3.1 `签名数组ASCII码排序的地方`相关问题的解答 3.2 Bool 参数处理 3.3 微信支付参数值为空不参与排序的处理方案 I…

2021年4月25日 0条评论 30点热度 阅读全文

文章目录 引言 划重点 I 、请求安全相关的设置 1.1 隧道APP请求我们自己接口的都不走隧道 1.2 SSL证书验证 1.3 允许不进行SSL证书验证 1.4 解决ios的https双向认证不能抓包问题: disable SSL certificate validation 1.5 不在本地缓存网络请求报文 II、利用NSURLProtocol 拦截 HTTP 请求(修改请求的HTTPHeaderField,设置代理IP和端口) 1.1 使用 NSURLProtocol 拦截 HTTP 请求的简单例子 1.2 …

2021年4月25日 0条评论 19点热度 阅读全文

文章目录 前言 I、把函数名隐藏在结构体里,以函数指针成员的形式存储 1.1 >* KNUtil.h 1.2 >* KNUtil.m 1.3 >* 外围调用 II、 案例:js根据key从本地方法获取设备及签名信息 (完整demo) III、see also 3.1、 敏感信息的安全设计Checklist 3.2 、签名key 的存储 3.3、使用宏进行替换字符串,来保护关键类名、方法名 前言 从CSDN下载Demo:https://download.csdn.net/download/u0110…

2021年4月25日 0条评论 27点热度 阅读全文

文章目录 引言 I、从本地进行DNS解析 1.1 CFHostGetAddressing 1.2 例子 1.3 设置HTTP请求头HOST字段,来避免服务端的解析异常 II、特定HTTPDNS 服务进行DNS解析 2.1 使用阿里云对特定域名启用HTTPDNS 2.2 固定使用单个服务IP 引言 启用HTTPDNS(直接从本地或特定HTTPDNS 服务进行DNS解析,来避免DNS劫持) HTTPDNS 利用 HTTP 协议与 DNS 服务器的 80 端口进行交互。不走传统的 DNS 解析,从而绕过运营商的 Loca…

2021年4月20日 0条评论 6点热度 阅读全文

文章目录 引言 划重点 I、iOS APP 不走全局proxy的方案 1.1 隧道APP的请求接口,一些自己特殊接口不走隧道 1.2 hook NSURLSession 进行全局设置 II、 例子:hook NSURLSession 进行全局设置 2.1 禁止网络代理抓包 2.2 那检查出了是否设置了代理,怎么取消客户端的请求? 2.3 通过开关动态控制是否禁止代理 III、防止修改请求和返回数据 引言 银行和信用卡类app 为了安全,防止修改和抓包都是基本的要求 应用场景: 1、隧道APP请求我们自己接口的都不走…

2021年4月19日 0条评论 7点热度 阅读全文

文章目录 引言 I 、解决方案 1.1 问题分析 1.2 解决方案 II、intercept the HTTP/HTTPS requests see also I 代码混淆 II 敏感逻辑的保护方案 III 接口安全(网络加密传输) 3.1 参数签名 3.2 网络请求安全优化 3.3 intercept the HTTP/HTTPS requests 3.4 接口安全设计的Checklist 引言 需求背景:对网络请求的数据进行报文级别的加密:使用NSURLProtocol来自动监听HTTP请求并加密解密。 通过[…

2021年4月19日 0条评论 8点热度 阅读全文

文章目录 前言 I、脱敏规范 II、 相关术语 2.1 PBKDF2算法 see also 前言 应用场景:商户结算账户信息加密保存,脱敏显示 原文 https://kunnan.blog.csdn.net/article/details/115670841 I、脱敏规范 数据类型 数据元素 敏感信息的脱敏规则 持卡数据 信用卡卡号(PAN) 信用卡号可显示前6后4,中间部分需要脱敏,可以“*”或其他字符代替 有效期 因PCI要求,有效期,验证码不可存储。 验证码:CAV2/CVV2/CVC2/CID 账户认证 账…

2021年4月13日 0条评论 8点热度 阅读全文