app代码混淆防止反编译(一)

刚刚写了如何使用class-tump查看app包头文件 ,那我们如何使我们保护我们app的安全呢,这里先简单的介绍一种代码混淆的方法,就是使用预编译替换。

我们新建工程,然后加入PrefixHeader.pch和head.h文件,然后在head.h文件中添加宏,如图

app代码混淆防止反编译(一)_第1张图片

然后定义并实现两个方法

-(void)xxxxxx;

-(void)test2;

-(void)xxxxxx{

NSLog(@"xxxxxx");

}

-(void)test2{

NSLog(@"test");

}

然后我们编译之后进行打包

app代码混淆防止反编译(一)_第2张图片

用归档工具打开ipa包,可以看到app文件,打开终端,输入

class-dump -H /Users/xie/Desktop/confuseTest\ 2017-08-21\ 10-39-29/Payload/confuseTest.app  -o /Users/xie/Desktop/confuseTest\ 2017-08-21\ 10-39-29

可以看到已经将ipa中app包的头文件导出到/Users/xie/Desktop/confuseTest\ 2017-08-21\ 10-39-29文件夹下。

app代码混淆防止反编译(一)_第3张图片

打开viewController.h文件,可以看到

app代码混淆防止反编译(一)_第4张图片

xxxxxx已经替换为宏定义的test,,所以我们代码中可以添加预编译宏来隐藏方法名。

你可能感兴趣的:(app代码混淆防止反编译(一))