代码混淆常用在金融行业银行项目,最近也有机会接触到这方面的知识,就简述一下过程。
代码混淆大部分用的都是阿里大神的方法,即所有的文件名用固定的前缀如:"cm_",然后通过正则去匹配方法,将获取到的方法放到func.list里面,在codeObfuscation.h显示对应的方法名跟对应混淆之后的方法名。如图:
既然可以正则匹配那么就不同所有的方法加上"cm_"前缀,可以通过正则匹配掉一些规范的写法。如我的项目所有UI创建用的全是create前缀,垃圾代码的前缀全是garbage(ps:这个是做马甲包用的),请求的后缀是Request,这样通过正则就可以一次混淆掉。
/^create/p;/^garbage/p;/.*Request/p
网友评论