发明名称 Windows动态链接库的分段双重加密及安全加载方法
摘要 本发明公开了一种Windows动态链接库的分段双重加密及安全加载方法,目的在于解决现有技术中动态链接库容易被跟踪调试,被应用程序私自加载,被静态反汇编等技术问题,它包括如下步骤:解析Windows动态链接库文件结构;建立私有动态链接库导出表;清除动态链接库导出表;分别对动态链接库文件的代码段、数据段使用指定加密算法的一个加密密钥进行加密;对整个动态链接库文件使用指定加密算法的另外一个加密密钥进行加密;加载时从私有动态链接库导出表输出接口函数给应用程序等。
申请公布号 CN102938036B 申请公布日期 2016.01.13
申请号 CN201110388149.8 申请日期 2011.11.29
申请人 UT斯达康(中国)有限公司 发明人 徐继军
分类号 G06F21/51(2013.01)I;G06F9/445(2006.01)I 主分类号 G06F21/51(2013.01)I
代理机构 合肥顺超知识产权代理事务所(特殊普通合伙) 34120 代理人 杨天娇
主权项 一种Windows动态链接库的分段双重加密及安全加载方法,其特征在于,Windows动态链接库的分段双重加密方法包括如下步骤:解析Windows动态链接库文件结构;建立私有动态链接库导出表;清除动态链接库导出表;分别对动态链接库文件的代码段、数据段使用指定加密算法的一个加密密钥进行加密;对整个动态链接库文件使用指定加密算法的另外一个加密密钥进行加密;Windows动态链接库的安全加载方法包括:a)对加密的动态链接库文件使用指定加密算法的一个密钥进行解密,建立动态链接库文件内存映像I,对内存映像I中的代码段、数据段使用指定加密算法的另一个密钥进行解密;b) 建立内存映像II,分配一个虚拟内存块,拷贝内存映像I中的内容,重定位虚拟内存块中的地址数据;c) 从隐藏在内存映像II代码段中的私有动态链接库导出表输出接口函数给应用程序;d)删除内存映像I,清除内存映像II的段头;编制一制造私有动态链接库导出表存储区间的代码文件,所述制造私有动态链接库导出表存储区间的代码文件与动态链接库的源文件一起编译后, 在代码段中会包含两个字节串,称之为分隔码,在两个分隔码之间存放私有动态链接库导出表。
地址 100088 北京市海淀区花园路4号通恒大厦B07室