-
公开(公告)号:CN105046117A
公开(公告)日:2015-11-11
申请号:CN201510375384.X
申请日:2015-06-30
Applicant: 西北大学
CPC classification number: G06F21/14 , G06F21/125
Abstract: 本发明公开了一种具有指令集随机化的代码虚拟化软件保护系统,属于计算机软件安全领域。所述发明包括在该系统中构建虚拟指令集,将待保护程序中的关键代码进行反汇编得到本地指令序列,接着根据以构架的虚拟指令集将本地指令序列转换为第一虚拟指令,并将第一虚拟指令进行编码得到字节码指令,将字节码指令与生成的附属虚拟机组件组合为附加文件,将附加文件与待保护程序组合为第一文件,在对第一文件进行垃圾数据填充后得到最终的保护程序。本发明能够提高待保护程序的复杂性,延长了分析者对待保护程序的分析时间,从而增强了待保护程序的保护能力。
-
公开(公告)号:CN105184118B
公开(公告)日:2018-02-23
申请号:CN201510548193.9
申请日:2015-08-31
Applicant: 西北大学
Abstract: 本发明公开了一种基于代码碎片化的Android应用程序加壳保护方法及装置,该方法首先从待保护的应用程序中提取可执行文件、共享库文件、资源及配置信息等,然后对可执行文件进行代码分片,分别加密,导入到新建的应用程序包中,添加提取的配置信息;继而对加密后代码片解密并分配独立的内存空间,对解密的代码片修复重组为可执行文件,进行运行环境的准备并重构安装包。本发明方法保护强度高,被保护应用程序的可执行文件在其整个生命周期中,始终以碎片化形式存在于进程内存中,大大降低了完整的可执行文件被攻击者窃取到的可能性,也就极大地增加了应用程序被逆向、破解、二次打包等的难度;可以平衡保护强度和性能开销。
-
公开(公告)号:CN105184118A
公开(公告)日:2015-12-23
申请号:CN201510548193.9
申请日:2015-08-31
Applicant: 西北大学
CPC classification number: G06F21/125 , G06F21/602 , G06F2221/2107
Abstract: 本发明公开了一种基于代码碎片化的Android应用程序加壳保护方法及装置,该方法首先从待保护的应用程序中提取可执行文件、共享库文件、资源及配置信息等,然后对可执行文件进行代码分片,分别加密,导入到新建的应用程序包中,添加提取的配置信息;继而对加密后代码片解密并分配独立的内存空间,对解密的代码片修复重组为可执行文件,进行运行环境的准备并重构安装包。本发明方法保护强度高,被保护应用程序的可执行文件在其整个生命周期中,始终以碎片化形式存在于进程内存中,大大降低了完整的可执行文件被攻击者窃取到的可能性,也就极大地增加了应用程序被逆向、破解、二次打包等的难度;可以平衡保护强度和性能开销。
-
-