美文网首页
oc的代码混淆

oc的代码混淆

作者: OwenKing | 来源:发表于2018-05-29 10:55 被阅读21次

平时在我们开发过程中,做完项目测试完毕以后就会直接打包上传到AppStore,最近看了一篇文章说现在项目提交审核之前做一下代码混淆可以提高代码的安全。现在逆向开发可以对我们源程序中的函数类型和变量进行查看,像一些phoneNum userName passWord这些原本是为了方便我们开发使用的变量名也会因为方便了黑客们,于是就好好看了看并且在项目中试了试。

1.在进行代码混淆之前,我们需要在我们的项目中增加两个文件:confuse.sh&func.list

我们打开我们的终端命令行,先cd到你项目的路径下,然后回车

然后在终端中分别输入 touch confuse.sh 和func.list然后回车

这个时候打开我们的项目文件夹,就能看到多了两个文件。这个时候我们打开我们的工程,把我们创建的这两个文件添加到项目中去

2.这个时候我们点击我们的confuse.sh文件可以看到里面的内容是空的,我们要填一些代码进去,点这个链接地址iOS安全攻防(二十三):Objective-C代码混淆可以把这位大神的代码粘贴到自己的confuse.sh文件中

3.

在项目中添加一个.PCH文件。如果你说你不知道怎么添加.pch,没关系。这里有个链接地址能帮到你ios中pch文件的创建与配置

成功添加.pch文件之后,我们就要在.pch文件中添加这么一句代码#import"codeObfuscation.h 然后我们编译一下,是不是报错了?是不是这样的?

我们先把报错的代码注释掉,然后去项目的Build Phases中的左上角的+号,选中那个New Run Script Phase,然后如下图所示,把你的confuse.sh文件的地址写进去

然后返回我们的PCH文件,把我们刚才注释的那行代码打开,然后再编译一下子,是不是通过了。这个时候就证明,代码混淆的前期工作,我们已经做好了。

4.然后接下来的就是如何进行代码混淆了。

这个时候你就找到一个你想要混淆的类(.h .m)文件都可以。把你想混淆的代码复制一下,然后粘贴到我们的func.list文件中去。然后编译一下,然后把切换到这个界面

我们就可以看到,我们定义的属性或者方法名都被混淆了。

5.注意:该方法只能针对有.m.h的类进行混淆,静态库等只有.h文件的没法进行混淆

相关文章

  • iOS 初探代码混淆(OC)

    iOS 初探代码混淆(OC) iOS 初探代码混淆(OC)

  • oc的代码混淆

    平时在我们开发过程中,做完项目测试完毕以后就会直接打包上传到AppStore,最近看了一篇文章说现在项目提交审核之...

  • iOS OC代码混淆

    由于iOS系统下,应用沙盒是封闭的,所以iOS应用相对于安卓应用来说,安全性稍微高一些,但是这并不能代表iOS应用...

  • iOS混淆

    iOS混淆 最近因为业务需求,需要做代码的混淆,找了许多教程和资料,最终发现一个很好的框架可以混淆OC的代码。 S...

  • iOS 初探代码混淆(OC)

    前言 自己做iOS开发也有几年的时间了,平时做完项目基本就直接打包上传到Appstore上,然后做上架操作了。但是...

  • iOS 4.3审核被拒-iOS 4.3被拒-iOS other审

    这里强烈推荐一款好用的iOS代码混淆工具支持(oc、swift、c++、dart):Github:https://...

  • ios-class-guard - Swift & OC Mix

    Swift OC 代码需要混淆代码 一、class-dump 能够从可执行文件中获取类/方法和属性的信息, ios...

  • Android项目的代码混淆

    代码混淆: 代码混淆有两种重要功能。其一,混淆代码。其二,优化代码。有的混淆是根据自己写得代码有关,需要根据异常错...

  • 2019-07-04

    iOS 初探代码混淆(OC) 前言 自己做iOS开发也有几年的时间了,平时做完项目基本就直接打包上传到Appsto...

  • ProGuard详解

    Android分享:代码混淆那些事Android代码混淆之混淆规则Android-Dev-Favorites An...

网友评论

      本文标题:oc的代码混淆

      本文链接:https://www.haomeiwen.com/subject/homojftx.html