[发明专利]一种智能终端代码混淆方法、装置、电子设备及存储介质在审
| 申请号: | 202210621273.2 | 申请日: | 2022-06-01 |
| 公开(公告)号: | CN114924749A | 公开(公告)日: | 2022-08-19 |
| 发明(设计)人: | 来骥;费稼轩;张实君;娄竞;仇慎剑;聂正璞;姚启桂;李硕;杨睿;孟德;李贤;常海娇 | 申请(专利权)人: | 国网冀北电力有限公司信息通信分公司;国网智能电网研究院有限公司;国家电网有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/71;H04L9/00 |
| 代理公司: | 北京三聚阳光知识产权代理有限公司 11250 | 代理人: | 林韵英 |
| 地址: | 100053 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 智能 终端 代码 混淆 方法 装置 电子设备 存储 介质 | ||
本申请提供一种智能终端代码混淆方法、装置、电子设备及存储介质,该方法包括:获取待混淆的代码文件;对代码文件进行调用对象分析,确定代码文件中各调用对象的被调次数;根据各调用对象的被调次数,确定多个目标调用对象;在代码文件中定位各目标调用对象,并在各目标调用对象之前插入跳跃节点;当运行代码文件时,基于各跳跃节点插入垃圾代码。上述方案提供的方法,通过基于设置在目标调用对象之前的跳跃节点随机地插入垃圾代码,确保每次运行的代码文件都会发生变化,增加了代码逆向分析的难度,保证了软件开发代码的安全性。
技术领域
本申请涉及网络安全技术领域,尤其涉及一种智能终端代码混淆方法、装置、电子设备及存储介质。
背景技术
目前,在软件开发过程中,通常将代码编译中的类、变量、函数的名字设置为具有一定的可读性,同时为了保护软件的开发代码,需将使用开发代码编译的代码文件进行代码混淆处理,以增加软件应用的安装文件被反编译和篡改的难度,实现对开发代码的保护。
在现有技术中,通常将代码中的名字替换成没有意义的字符串,或采用加密算法对名字进行加密。但是,无论是进行字符串替换还是加密,都容易被逆向分析,也就无法保证代码的安全性。
发明内容
本申请提供一种智能终端代码混淆方法、装置、电子设备及存储介质,以解决现有技术无法保证软件开发代码的安全性等缺陷。
本申请第一个方面提供一种智能终端代码混淆方法,包括:
获取待混淆的代码文件;
对所述代码文件进行调用对象分析,确定所述代码文件中各调用对象的被调次数;
根据各所述调用对象的被调次数,确定多个目标调用对象;
在所述代码文件中定位各所述目标调用对象,并在各所述目标调用对象之前插入跳跃节点;
当运行所述代码文件时,基于各所述跳跃节点插入垃圾代码。
可选的,所述根据各所述调用对象的被调次数,确定多个目标调用对象,包括:
根据各所述调用对象的被调次数,确定混淆区间;
将被调次数属于所述混淆区间的调用对象,确定为目标调用对象。
可选的,所述根据各所述调用对象的被调次数,确定混淆区间,包括:
对各所述调用对象的被调次数进行升序排序,并确定对应的第一四分位数和第三四分位数;
根据所述第一四分位数和第三四分位数之间的差值计算结果,确定四分位距;
根据所述第一四分位数和四分位距之间的和值计算结果和差值计算结果,确定混淆区间的端点值。
可选的,所述基于各所述跳跃节点插入垃圾代码,包括:
基于各所述跳跃节点,在预设的垃圾代码库中随机调用垃圾代码。
可选的,还包括:
遍历所述代码文件,提取所述代码文件中的所有参数;
按照数据类型对所述参数进行分类,得到不同数据类型对应的参数集合;
按照各参数的提取顺序,为各所述参数集合中的参数分配索引号,并对所述索引号进行同态加密。
可选的,所述按照数据类型对所述参数进行分类,包括:
针对任一所述参数,调用该参数对应的目标函数;
对比所述目标函数和标准库中的函数,得到对应的函数对比结果;
根据所述函数对比结果所表征的函数信息,确定该参数的数据类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国网冀北电力有限公司信息通信分公司;国网智能电网研究院有限公司;国家电网有限公司,未经国网冀北电力有限公司信息通信分公司;国网智能电网研究院有限公司;国家电网有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210621273.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种烟丝的含水率检测装置
- 下一篇:一种超高速数控机床线性导轨安装的调节机构





