文档类名混淆
类名混淆
预计阅读时间:10 分钟
什么是类名混淆?
类名混淆是将有意义的类名替换为无意义的随机字符串,使逆向工程人员难以理解代码结构和业务逻辑。
混淆前
UserManager
PaymentService
LoginViewController混淆后
ZFJObj_8xK9m
ZFJObj_3nM7k
ZFJObj_9pX4j工作原理
1
扫描项目
扫描所有 .h、.m、.swift 文件,识别所有类定义
2
过滤系统类
自动排除系统框架类和白名单中的类
3
生成映射
为每个类生成唯一的混淆名称
4
全局替换
在所有文件中替换类名,包括 Storyboard、XIB
支持的类类型
支持混淆
- 自定义类 (@interface)
- Swift 类 (class)
- 分类和扩展
- 协议 (protocol)
自动排除
- 系统框架类
- AppDelegate
- 第三方库类
注意事项
- •使用反射的类需要加入白名单
- •Storyboard 中的类会自动同步
- •混淆后请完整测试应用功能