代码混淆
代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。下面关于iOS马甲包代码混淆简单说明一下个人的思路,对变量,函数,类的名字进行混淆,方面各路大神顺利过包。
1.占位符替换
就是在变量,函数,类的名字中插入特别的占位符,如 X01 等等。
2.前后缀包裹,正则匹配进行替换
就是在变量,函数,类的名字前后使用类似 BJ7_xxxx_C9S等前后缀包裹
3.使用宏替换
就是利用oc的pch文件将要混淆的变量,函数,类进行宏定义
pch文件内容:
pch设置:
4.垃圾方法插入
采用预先埋点的方式进行替换与调用
5.辣鸡代码生成