发明名称 .Net程序保护方法及装置
摘要 本发明公开了一种.Net程序保护方法及装置,属于软件保护领域。所述方法包括:从编译好的.Net程序选取包含.Net中间语言指令的二进制代码段;对该二进制代码段进行变换,并从.Net程序中删除该二进制代码段;将经过变换后的二进制代码段写入.Net程序的外壳程序中,并将外壳程序调用指令写入.Net程序中;运行.Net程序,当.Net程序运行到外壳程序调用指令时,外壳程序调用.Net虚拟机,.Net虚拟机运行经过变换后的二进制代码段。所述装置包括:选取模块、变换删除模块、写入模块和运行模块。本发明可以不受限制地保护.Net程序,使运行在.Net平台上的程序只需进行简单的变换就可以实现.Net程序保护。
申请公布号 CN100474253C 申请公布日期 2009.04.01
申请号 CN200710177937.6 申请日期 2007.11.22
申请人 北京飞天诚信科技有限公司 发明人 陆舟;于华章
分类号 G06F9/45(2006.01)I;G06F9/455(2006.01)I 主分类号 G06F9/45(2006.01)I
代理机构 北京三高永信知识产权代理有限责任公司 代理人 何文彬
主权项 1. 一种.Net程序保护方法,其特征在于,所述方法包括:步骤A:从编译好的.Net程序选取包含.Net中间语言指令的二进制代码段;步骤B:对所述二进制代码段进行变换,并从所述.Net程序中删除所述二进制代码段;步骤C:将经过变换后的二进制代码段写入所述.Net程序的外壳程序中,并将外壳程序调用指令写入所述.Net程序中;步骤D:运行所述.Net程序,当所述.Net程序运行到所述外壳程序调用指令时,所述外壳程序调用.Net虚拟机,所述.Net虚拟机运行经过变换后的二进制代码段;其中,所述步骤B中对所述二进制代码段进行变换的步骤具体为以下三种方式之一:方式一:对所述二进制代码段进行逻辑变换,并对经过逻辑变换的二进制代码段进行加密或压缩;方式二:对所述二进制代码段进行逻辑变换;方式三:对所述二进制代码段进行加密或压缩。
地址 100083北京市海淀区学院路40号研7楼5层