[发明专利]一种模拟软件运行的方法有效

专利信息
申请号: 201010214123.7 申请日: 2010-06-29
公开(公告)号: CN102012858A 公开(公告)日: 2011-04-13
发明(设计)人: 陆舟;于华章 申请(专利权)人: 北京飞天诚信科技有限公司
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 暂无信息 代理人: 暂无信息
地址: 100085 北京市*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 模拟 软件 运行 方法
【说明书】:

技术领域

发明涉及软件保护领域,特别涉及一种模拟软件运行的方法。

背景技术

R7.Net外壳工具的保护原理是将被加壳程序中符合条件的(能够在加密锁中运行的指令)、连续的指令序列提取出来,将这部分指令序列移植到加密锁中去运行,以达到保护算法的目的。

但是,当我们将一个被加壳程序中的若干指令序列移植到加密锁中以后,等我们运行这个加壳后的程序时,无法知道移植到加密锁中的指令序列的运行情况,而现有技术中,一般会有下面三种情况:

1)某些指令序列没有被执行,起不到保护作用,因为这部分指令序列没有被执行,所以不会影响到程序的正常运行;

2)某些指令序列过于频繁的被执行,严重影响效率,由于访问加密锁需要耗时,所以如果过于频繁访问加密锁,有可能导致加壳后的程序无法正常运行;

3)某些指令序列适当的被执行,在程序执行的某些关键步骤被执行,既起到了保护算法的作用,又不会影响程序的正常执行。

很明显,我们在为一个程序加壳时,应尽量选择符合第3种情况的指令序列,放弃第1、2种情况的指令序列。

并且,目前软件保护的可选择方案比较多,但经常在一个软件保护中为平衡安全与效率,可能会选择其中的一种或多种方案进行软件保护,但通常这种平衡需要在保护完成后才能去判断,并且判断的过程通常也不是很直观,特别是浪费资源和时间等。

发明内容

为了解决现有技术中的不足,本发明提供了一种模拟软件运行的方法,所述方法包括:

对被加壳程序进行分析,查找出满足条件的指令序列,记录下所述指令序列在所述被加壳程序中的具体位置;

在被加壳程序的副本的所述具体位置上插入相关语句;

启动并运行所述插入相关语句后的被加壳程序的副本,进行模拟运行,并且相关语句在执行时记录模拟运行信息;

读取模拟运行信息,进行分析和比较,查看模拟运行效果,选择保护方案。

本发明的有益效果在于:本发明提供了一种模拟软件运行的方法,通过该方法预先模拟各种保护方案,并自动分析模拟得到的相关数据,提供评定保护效果,并且在模拟过程中可预先处理保护信息,提升最终真正保护软件的效率,进一步实现了透明的软件保护,提高了效率,节约了资源,方便直观得选择最合适的保护方案。

附图说明

图1为本实施例提供的一种模拟软件运行功能的方法的流程图;

图2为本实施例提供的另一种模拟软件运行功能的方法的流程图;

图3为本实施例提供的又一种模拟软件运行功能的方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式做进一步地详细描述。

实施例1

本实施例提供了一种模拟软件运行功能的方法。

参见图1,一种模拟软件运行功能的方法,具体实现步骤如下:

步骤101:外壳工具接收用户输入的对被加壳程序进行分析的信息,调用入口函数准备对被加壳程序进行分析;

在本实施例中,入口函数具体为OnAppOperateAnalyseIl()。

步骤102:判断上述被加壳程序中是否存在连续的指令序列,若不存在,则提示出错,若存在,则执行步骤103;

其中,指令序列具体可以为运算指令序列、常量加载指令序列、局部变量加载指令序列和局部变量存储指令序列;

在实施例步骤102中,外壳工具一次性从被加壳程序中查找出所有的连续的指令序列,再判断上述所有的连续的指令序列是否满足步骤103到步骤105所说的条件,最后步骤105得到的连续的指令序列则为满足所有条件的指令序列;

具体地,在本实施例中,以如下被加壳程序为例进行说明,被加壳程序如下:

    .method assembly instance void DrawIsoMap(class

[System.Drawing]System.Drawing.Graphics A_1,

                                      uint16A_2,

                                      uint16A_3)cil

managed

      {

      .locals init(int16V_0,

                   int16V_1,

                   uint16V_2,

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京飞天诚信科技有限公司,未经北京飞天诚信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010214123.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top