ReactNative 中使用SSL Pinning防止中间人攻击

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ReactNative 中使用SSL Pinning防止中间人攻击相关的知识,希望对你有一定的参考价值。

参考技术A 如果你看懂了标题的话,我就不多解释这是做什么用的了,
如果你没有看懂标题,估计也不会点进来了。

一句话,就是在使用Charles抓包时,看不到网络请求。

RN侧使用 https://github.com/MaxToyberman/react-native-ssl-pinning 组件

其底层
ios是用AFNetworking 实现的
安卓是用实现的

使用方法

1、生成证书文件

其中 google.com 为你要用到的域名

2、iOS
把https.cer文件放到项目中,只要能打包进去就行。

3、RN侧
使用方法

结束了,
可以使用Charles 去抓包试一下,如果不能看到真实的请求数据,就OK了

参考:
[1] APP安全机制(十七) —— 阻止使用SSL Pinning 和 Alamofire的中间人攻击
AFNetworking设置SSL链接

Error:SSL peer shut down incorrectly的解决方案

此问题是小编在刚开始利用Androidstudio做react native开发时倒入react native项目时遇见的,如下图所示。

 

主要原因是gradle版本与Android plugin版本不一致导致。

 

解决方案:

1.利用Android studio自动下载相应的gradle版本

2.手动配置gradle版本

(1)Android studio——File——setting——Gradle,如下图所示

(2)选择已下载的相应gradle路径,点击ok即可。





Good luck!

Write by Jimmy.li








以上是关于ReactNative 中使用SSL Pinning防止中间人攻击的主要内容,如果未能解决你的问题,请参考以下文章

ReactNative: 使用进度条组件ProgressViewIOS组件

ReactNative: 使用图像选择器功能ImagePickerIOS

功能组件中的 React/ReactNative 静态属性

ReactNative: 了解ReactNative框架提供的全部内容

iOS开发嵌套ReactNative页面

ReactNative - 在 FBSDK 中呈现 userInfo 时使用数组错误呈现一组子项?