[发明专利]一种基于编译中间结果的软件保护方法有效
申请号: | 202011603323.1 | 申请日: | 2020-12-29 |
公开(公告)号: | CN112528342B | 公开(公告)日: | 2022-06-28 |
发明(设计)人: | 关玉欣;吴昊 | 申请(专利权)人: | 内蒙古工业大学 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F21/64;G06F13/40;G06F8/41 |
代理公司: | 北京睿智保诚专利代理事务所(普通合伙) 11732 | 代理人: | 周新楣 |
地址: | 010051 内蒙古*** | 国省代码: | 内蒙古;15 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 编译 中间 结果 软件 保护 方法 | ||
本发明公开了一种基于编译中间结果的软件保护方法,应用于基础软件技术领域,根据所述原始目标OBJ文件得到分拆数据;对所述分拆数据分配唯一识别ID和预处理;利用所述唯一识别ID得到数字签名,同时利用所述数字签名和唯一识别ID将所述分拆数据重组,得到可执行文件。将分拆数据分为包含保护代码段和不包含保护代码段的数据,传输时,可以仅传输包含保护代码段的数据,能够减小数据传输的压力;对分拆数据进行预处理,主要是对数据进制进行转换起到压缩数据的作用,同时也减小数据传输的压力;通过数字签名验证,能够保证数据不被非法破解,以及篡改,大大提高了软件的安全性能。
技术领域
本发明涉及基础软件技术领域,更具体的说是涉及一种基于编译中间结果的软件保护方法。
背景技术
应用程序的开发包括:源代码的编写,编译器的编译的OBJ文件,以及链接器对OBJ文件的链接这一系列组成。每一个源文件对应一个OBJ文件,OBJ文件是由系统编译器对高级语言进行汇编、符号处理、字符串处理之后的产物,OBJ文件符合相应平台的文档标准,如微软COFF文件标准等。OBJ文件相较于链接后的可执行文件来说,具有更加简单的结构,以及更加灵活的数据索引以及代码调用方式,因此处理起来更加灵活,可以进行多种方式的混淆,包括混淆函数导入导出表,字符串引用,增加冗余性等等。这种操作并不影响程序原有的功能。
目前,针对软件保护的措施中,有针对源代码级的软件混淆,代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。其中一种方式是将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。这样带来了一系列的问题,如被混淆的代码难于理解,因此调试出错也变得困难起来。还有一些针对可执行文件的代码保护,主要表现为对软件加壳。加壳技术是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作,这一部分的工作可以用来对原来的指令进行预处理,将原有的程序执行流程打乱,以做到防止软件被分析和破解。以上两种方式各有优劣,源代码级别的保护很局限,对于较为底层的语言的处理能力有限,而基于可执行文件的加壳种类不多,容易被脱壳,进而将原有程序暴露给分析者。
因此,如何提供一种避免OBJ文件传输过程中泄露的基于编译中间结果的软件保护方法是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于编译中间结果的软件保护方法,能够避免OBJ文件传输过程中泄露,防止软件遭到非法破解以及分析。
为了实现上述目的,本发明提供如下技术方案:
一种基于编译中间结果的软件保护方法,具体步骤包括如下:
将软件源代码进行编译得到原始目标OBJ文件;
根据所述原始目标OBJ文件得到分拆数据;
对所述分拆数据分配唯一识别ID和预处理;
利用所述唯一识别ID得到数字签名,同时利用所述数字签名和唯一识别ID将所述分拆数据重组,得到可执行文件。
优选的,在上述的一种基于编译中间结果的软件保护方法中,所述分拆数据包括第一分拆数据和第二分拆数据;其中,所述第一分拆数据为包含保护代码段的数据,所述第二分拆数据为无保护代码段的数据。
优选的,在上述的一种基于编译中间结果的软件保护方法中,根据所述唯一识别ID区分是否包含保护代码段。
优选的,在上述的一种基于编译中间结果的软件保护方法中,所述唯一识别ID包含:所述分拆数据的序号、每个所述分拆数据对应的私钥、与所述私钥一一对应的公钥。
优选的,在上述的一种基于编译中间结果的软件保护方法中,所述预处理包括:将所述分拆数据默认进制类别进行进制转换,得到压缩数据,所述压缩数据的字节数小于所述分拆数据的字节数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于内蒙古工业大学,未经内蒙古工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011603323.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:预制减振道床
- 下一篇:一种百叶螺旋去湿的市政道路使用的节能环保照明灯