[发明专利]一种支持运行环境检测及完整性检测的加壳保护方法在审
| 申请号: | 202011451281.4 | 申请日: | 2020-12-09 |
| 公开(公告)号: | CN112507292A | 公开(公告)日: | 2021-03-16 |
| 发明(设计)人: | 陈自刚;宋杭叡;彭遥;张甜甜;李雅琦;朱海华 | 申请(专利权)人: | 重庆邮电大学 |
| 主分类号: | G06F21/14 | 分类号: | G06F21/14 |
| 代理公司: | 北京同恒源知识产权代理有限公司 11275 | 代理人: | 赵荣之 |
| 地址: | 400065 *** | 国省代码: | 重庆;50 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 支持 运行 环境 检测 完整性 保护 方法 | ||
1.一种支持运行环境检测及完整性检测的加壳保护方法,其特征在于:包括一种产生服务程序的加壳保护工具A,对原程序B进行加壳操作、插入安全通信模块和调用模块,生成唯一对应的服务程序C和被加壳保护的程序B1;
所述程序B1在执行时,首先调用服务程序C,将服务程序C调入到内存当中,当服务程序C进入内存后程序B1与服务程序C进行交互认证;程序B1存在对服务程序C的完整性检测;
所述程序C在执行时,与程序B1进行交互认证,对程序B1进行基于运行环境的检测,所述运行环境检测通过后对程序B1进行解壳并交回控制权;
所述程序C负责在间隔时间段内生成新的动态认证消息。
2.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:所述程序B1与服务程序C进行交互认证,若服务程序C与程序B1唯一对应,具有程序B1的解壳代码,验证通过;
若服务程序C不是与程序B1对应的服务程序,验证不通过,抛出错误信息,并结束程序以保护程序B1及系统安全。
3.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:所述完整性检测是由程序B1发起的对服务程序C基于内容的完整性检测;程序B1计算服务程序C内容的HASH值,使用此HASH值作为校验码,进行完整性检测;
如果完整性检测通过,判断为服务程序C未被篡改或调试具有正确解壳B1的功能,B1向C发送正确启动信号并交还控制权,进入睡眠状态,服务程序C继续运行;
如果完整性检测未通过,判断为服务程序C被篡改、调试或破坏,无法正常解壳,抛出错误信息并结束程序B1,进入睡眠状态以抵御逆向工程。
4.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:所述基于运行环境的检测过程是由服务程序C对程序B1所处的运行环境进行检测,判断程序B1是否未处于调试环境;
若运行环境检测通过,则认为程序B1正常运行,未处于调试环境,服务程序C进行自解壳后使用正确密钥将加壳状态的程序B1解壳为原程序B;所述密钥由服务程序C产生并负责维护和更新;
若运行环境检测未通过,判断程序B1处于调试或反汇编的不安全环境,抛出错误信息,并结束程序B1以抵御逆向工程。
5.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:所述服务程序C正常运行时间隔采集环境信息,计算信息的HASH值作为新的认证消息,更新程序B1存储的认证消息;采集的环境信息包括但不限于时间信息、内存环境、产生随机数、程序名。
6.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:程序之间通信由双方通信模块负责,基于轻量级的通信协议加密传输信息;通信消息的加密方式为:MESSAGE认证消息XOR MESSAGE消息内容。
7.根据权利要求1所述的支持运行环境检测及完整性检测的加壳保护方法,其特征在于:当程序B1正常结束时,根据当前拥有的认证消息生成加壳密钥对自己核心代码部分加壳;当程序B1或者服务程序C非正常结束时,程序抛出错误信息,并立即结束运行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011451281.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种农产品用运输装置
- 下一篇:一种压力可调节的压力容器





