[发明专利]保护文件的方法和装置有效
申请号: | 201811176699.1 | 申请日: | 2018-10-10 |
公开(公告)号: | CN110245464B | 公开(公告)日: | 2021-08-27 |
发明(设计)人: | 郭向国;付伟琦;金端峰 | 申请(专利权)人: | 爱信诺征信有限公司 |
主分类号: | G06F21/12 | 分类号: | G06F21/12;G06F21/60;G06F21/62 |
代理公司: | 北京合智同创知识产权代理有限公司 11545 | 代理人: | 李杰 |
地址: | 100093 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 保护 文件 方法 装置 | ||
本申请提供了一种保护文件的方法和装置,其中方法包括:获取调用DLL文件的堆栈信息,从所述堆栈信息中获取调用主体的属性信息;查验从所述堆栈信息中获取到的调用主体的属性信息是否合法,若查验结果表明从所述堆栈信息中获取到的调用主体的属性信息非法,则返回禁止调用DLL文件的结果;该方法简便快捷的实现了对文件的保护,有效防止对文件的非法访问,保护用户的合法权益,解决了加密文件后平台不兼容,稳定性差等问题。
技术领域
本申请涉及软件领域,尤其涉及一种保护文件的方法和装置。
背景技术
在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库(Dynamic Link Library,简称DLL)。
DLL文件符合PE文件结构,一般情况下,如果知道了导出函数的定义,就可以使用该DLL文件,执行其中的功能函数代码。虽然DLL文件不一定能被反编译成源码,造成其中内容的泄露;但如果可以执行其中的逻辑,同样可完成DLL文件的相关功能。如果DLL文件内封装了核心知识逻辑,被他人非法使用,就会给造成巨大的损失。
所以出于机密保护的要求,需要防止这类机密的DLL文件被其他程序或者动态库非法使用。目前的DLL保护方式一般是对DLL文件本身做加密处理,劫持LoadLibrary和LoadLibraryEx的调用等方式,实现方式较为复杂,还会造成平台的不兼容性问题,稳定性较差。
发明内容
本申请的目的在于提供一种保护文件的方法和装置,用于现有技术中存在的问题。
第一方面,本申请实施例提供了一种保护文件的方法,包括:
获取调用DLL文件的堆栈信息,从所述堆栈信息中获取调用主体的属性信息;
查验从所述堆栈信息中获取到的调用主体的属性信息是否合法,若查验结果表明从所述堆栈信息中获取到的调用主体的属性信息非法,则返回禁止调用所述DLL文件的结果。
可选地,在本申请的一实施例中,包括:获取合法调用主体的属性信息。
可选地,在本申请的一实施例中,查验从所述堆栈信息中获取到的调用主体的属性信息是否合法,还包括:将从所述堆栈信息中获取的调用主体的属性信息与所述合法调用主体的属性信息进行比对,以查验从所述堆栈信息中获取到的调用主体的属性信息是否合法。
可选地,在本申请的一实施例中,查验从所述堆栈信息中获取到的调用主体的属性信息是否合法,还包括:根据从所述堆栈信息中获取的调用主体的属性信息计算第一HASH值,以及根据所述合法调用主体的属性信息计算第二HASH值,所述第一HASH值与第二HASH值进行比对以查验从所述堆栈信息中获取的调用主体的属性信息是否合法。
可选地,在本申请的一实施例中,查验从所述堆栈信息中获取到的调用主体的属性信息是否合法,还包括:若查验结果表明从所述堆栈信息中获取到的调用主体的属性信息合法,则允许调用主体调用所述DLL文件,执行所述DLL文件中的逻辑。
可选地,在本申请的一实施例中,授权列表或硬件模块中存储有所述合法调用主体的属性信息;
所述获取合法调用主体的属性信息包括:从授权列表或硬件模块中获取合法调用主体的属性信息。
可选地,在本申请的一实施例中,从所述堆栈信息中获取到的调用主体的属性信息包括调用主体的名称和路径信息中的至少一种。
可选地,在本申请的一实施例中,禁止调用所述DLL文件的结果包括生成程序执行错误的提示信息。
可选地,在本申请的一实施例中,还包括中断调用主体调用DLL文件的进程以获取调用所述DLL文件的堆栈信息。
第二方面,本申请提供了一种保护文件的装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于爱信诺征信有限公司,未经爱信诺征信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811176699.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种燃气烟气焓值计算方法及系统
- 下一篇:一种软件加密、解密方法