[发明专利]一种对ios应用程序源代码进行混淆保护的方法及系统在审
| 申请号: | 201911021718.8 | 申请日: | 2019-10-25 |
| 公开(公告)号: | CN110765425A | 公开(公告)日: | 2020-02-07 |
| 发明(设计)人: | 徐程程 | 申请(专利权)人: | 杭州涂鸦信息技术有限公司 |
| 主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F8/41 |
| 代理公司: | 11605 北京崇智专利代理事务所(普通合伙) | 代理人: | 任小燕 |
| 地址: | 310012 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 混淆 应用程序源代码 源代码 抽象语法树 随机字符串 编译 安全代码 代码替换 应用程序 工具把 遍历 黑客 预设 解析 安全 | ||
1.一种对ios应用程序源代码进行混淆保护的方法,其特征在于,包括以下步骤:
获取ios应用程序源代码中的待混淆代码;
利用Clang工具对所述待混淆代码进行编译,得到抽象语法树;
根据预设标记遍历所述抽象语法树,得到所有的类名代码、方法名代码和变量名代码;
将所述类名代码、所述方法名代码和所述变量名代码替换为随机字符串;
根据所述随机字符串生成对应于所述待混淆代码的安全代码。
2.根据权利要求1所述的方法,其特征在于,还包括以下步骤:
获取所述ios应用程序的源代码;
利用class-dump遍历所述源代码,得到所有的类名源代码、方法名源代码和变量名源代码;
根据所述预设标记对所述类名源代码、所述方法名源代码和所述变量名源代码进行标记,得到所述类名代码、所述方法名代码和所述变量名代码。
3.根据权利要求1或2所述的方法,其特征在于:所述预设标记为设置在类名、方法名和变量名上的前缀或后缀。
4.根据权利要求1或2所述的方法,其特征在于:所述ios应用程序源代码为ios系统中的Objective-C语言的源代码。
5.根据权利要求1或2所述的方法,其特征在于:所述随机字符串为无意义字符串。
6.一种对ios应用程序源代码进行混淆保护的系统,其特征在于,包括:
第一获取模块,被设置为用于获取ios应用程序源代码中的待混淆代码;
编译模块,被设置为用于利用Clang工具对所述待混淆代码进行编译,得到抽象语法树;
遍历模块,被设置为用于根据预设标记遍历所述抽象语法树,得到所有的类名代码、方法名代码和变量名代码;
替换模块,被设置为用于将所述类名代码、所述方法名代码和所述变量名代码替换为随机字符串;
混淆模块,被设置为用于根据所述随机字符串生成对应于所述待混淆代码的安全代码。
7.根据权利要求6所述的系统,其特征在于,还包括:
第二获取模块,被设置为用于获取所述ios应用程序的源代码;
class-dump模块,被设置为用于利用class-dump工具遍历所述源代码,得到所有的类名源代码、方法名源代码和变量名源代码;
标记模块,被设置为用于根据所述预设标记对所述类名源代码、所述方法名源代码和所述变量名源代码进行标记,得到所述类名代码、所述方法名代码和所述变量名代码。
8.根据权利要求6或7所述的系统,其特征在于:所述预设标记为设置在类名、方法名和变量名上的前缀或后缀。
9.根据权利要求6或7所述的系统,其特征在于:所述ios应用程序源代码为ios系统中的Objective-C语言的源代码。
10.根据权利要求6或7所述的系统,其特征在于:所述随机字符串为无意义字符串。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州涂鸦信息技术有限公司,未经杭州涂鸦信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911021718.8/1.html,转载请声明来源钻瓜专利网。





