一种在安全环境中生成代码提高软件保护强度的方法技术

技术编号:8705127 阅读:194 留言:0更新日期:2013-05-16 19:18
本发明专利技术公开了一种基于运行时在安全环境中生成动态代码的软件保护方法,通过在安全环境中即时生成与非安全运行环境相关的代码,在非安全运行环境中运行生成的代码,从而提高软件调试和分析的难度,还可以避免使用安全环境运行代码引起的性能损失,本方法基本没有性能损失,且能够提供较好的安全性,具有非常大的实用价值。

【技术实现步骤摘要】

本专利技术涉及软件版权保护技术,特别涉及到基于即时编译的软件保护方法。
技术介绍
计算机软件由于具有数字化的特征,因此很容易被复制和非法使用,软件保护技术就是用来保护软件版权、避免软件被非法使用的技术。针对计算机软件进行破解的主要方法就是调试,通过调试了解软件运行的流程和逻辑,然后加以篡改,实现对软件破解,由于运行计算机软件的计算机硬件和操作系统平台信息是公开的,并且都提供了对调试器的支持以便进行正常的软件调试,因此,在这种环境下很难避免软件被调试,所以,软件保护的一个重要发展方向就是构造安全的运行环境,在安全环境中运行软件的部分代码,这样,针对软件进行分析就必须先分析出安全环境,提高了破解的难度。例如常见的虚拟机保护技术,使用未公开架构的虚拟机来运行软件的部分代码,破解者要调试这部分软件代码就必须分析出虚拟机的指令集。安全环境显著提高了软件调试的难度,特别是对于将安全环境置于智能卡硬件或者远程服务器的情况,几乎不可能对受保护的部分进行调试,从而可以实现非常高的保护强度。然而,由于构造安全环境要比构造普通的环境考虑的情况更加复杂,在安全环境中运行代码的速度会大幅度降低,例如某些虚拟本文档来自技高网...

【技术保护点】
一种在安全环境中生成代码提高受保护软件保护强度的方法,所述安全运行环境是可运行代码、具有安全防范功能、难以进行调试的计算机运行环境,其中所述安全环境中运行代码生成模块,所述代码生成模块根据源输入逻辑描述生成对应逻辑的可执行代码;其中,所述受保护软件中具有调用模块;所述方法包括如下步骤:抽取受保护软件中的部分代码;将所述部分代码转换为源输入逻辑描述;在所述受保护软件中被抽取代码的位置插入调用模块;当所述受保护软件运行到被抽取代码的位置时,所述调用模块将调用安全环境,报告运行环境信息;所述安全环境中的所述代码生成模块根据所述运行环境信息生成与所述运行环境相关的执行代码;将生成的与运行环境相关的所述...

【技术特征摘要】

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:北京深思洛克软件技术股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1