利索能及
我要发布
收藏
专利号: 201810029006X
申请人: 武汉斗鱼网络科技有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2024-12-09
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种Shader文件的加密方法,其特征在于,包括:

对客户端程序对应的各个Shader文件进行排序,依次获取各个Shader文件的编码值;

根据预设的加密循环规则建立编码值与Shader文件之间的映射关系,具体为:将前一个Shader文件的编码值与后一个shader文件建立映射关系;

将与每一Shader文件具有映射关系的编码值作为该Shader文件的加密KEY值,并采用得到的加密KEY值对相应的Shader文件进行加密;

将各个加密后的Shader文件分布到客户端程序的不同DLL文件中;

生成配置关系列表,所述配置关系列表中包括Shader文件与对应的加密算法和所分布的DLL文件之间的对应关系,以及加密循环规则和至少一个Shader文件的加密KEY值;

将所述配置关系列表添加到所述客户端程序的主程序中,并随所述客户端程序进行发布。

2.根据权利要求1所述的方法,其特征在于,所述采用得到的加密KEY值对相应的Shader文件进行加密包括:采用不同 的加密算法分别根据每一Shader文件的加密KEY值对各个Shader文件进行加密。

3.根据权利要求1所述的方法,其特征在于,所述将各个加密后的Shader文件分布到客户端程序的不同DLL文件中包括:根据预设对应关系将各个加密后的Shader文件分别分布到客户端程序的指定DLL文件中,或采取随机原则将各个加密后的Shader文件分布到客户端程序的不同DLL文件中。

4.根据权利要求1-3任一项所述的方法,其特征在于,所述将各个加密后的Shader文件分布到客户端程序的不同DLL文件中包括:在所述DLL文件中增加全局变量,所述全局变量用于存储加密后的Shader文件。

5.一种Shader文件的解密方法,其特征在于,包括:

从客户端程序的主程序中获取配置关系列表,所述配置关系列表中包括Shader文件与对应的加密算法和所分布的DLL文件之间的对应关系,以及加密循环规则和至少一个Shader文件的加密KEY值;

从所述配置关系列表中查找待执行Shader文件所分布的DLL文件,并从对应的DLL文件中获取加密后的Shader文件;

根据所述加密循环规则确定与所述待执行Shader文件具有映射关系的编码值所对应的目标Shader文件,所述目标Shader文件的编码值为所述待执行Shader文件的加密KEY值;

根据所述至少一个Shader文件的加密KEY值按照所述加密循环规则依次进行Shader文件解密,得到解密后的目标Shader文件;

获取所述目标Shader文件的编码值;

从所述配置关系列表中查找所述待执行Shader文件对应的加密算法,并根据所述加密算法对应的解密算法和所述目标Shader文件的编码值对获取的加密后的Shader文件进行解密,得到待执行Shader文件。

6.一种Shader文件的加密装置,其特征在于,包括:

服务端编码模块,用于对客户端程序对应的各个Shader文件进行排序,依次获取各个Shader文件的编码值;

关系建立模块,用于根据预设的加密循环规则建立编码值与Shader文件之间的映射关系,具体为:将前一个Shader文件的编码值与后一个shader文件建立映射关系;

加密模块,用于将与每一Shader文件具有映射关系的编码值作为该Shader文件的加密KEY值,并采用得到的加密KEY值对相应的Shader文件进行加密;

分布模块,用于将各个加密后的Shader文件分布到客户端程序的不同DLL文件中;

配置模块,用于生成配置关系列表,所述配置关系列表中包括Shader文件与对应的加密算法和所分布的DLL文件之间的对应关系,以及加密循环规则和至少一个Shader文件的加密KEY值;

添加模块,用于将所述配置关系列表添加到所述客户端程序的主程序中,并随所述客户端程序进行发布。

7.根据权利要求6所述的装置,其特征在于,所述加密模块,具体用于采用不同 的加密算法分别根据每一Shader文件的加密KEY值对各个Shader文件进行加密。

8.一种Shader文件的解密装置,其特征在于,包括:

获取模块,用于从客户端程序的主程序中获取配置关系列表,所述配置关系列表中包括Shader文件与对应的加密算法和所分布的DLL文件之间的对应关系,以及加密循环规则和至少一个Shader文件的加密KEY值;

提取模块,用于从所述配置关系列表中查找待执行Shader文件所分布的DLL文件,并从对应的DLL文件中提取加密后的Shader文件;

判定模块,用于根据所述加密循环规则确定与所述待执行Shader文件具有映射关系的编码值所对应的目标Shader文件,所述目标Shader文件的编码值为所述待执行Shader文件的加密KEY值;

解密模块,用于根据所述至少一个Shader文件的加密KEY值按照所述加密循环规则依次进行Shader文件解密,得到解密后的目标Shader文件;

客户端编码模块,用于获取所述目标Shader文件的编码值;

所述解密模块,还用于从所述配置关系列表中查找所述待执行Shader文件对应的加密算法,并根据所述加密算法对应的解密算法和所述目标Shader文件的编码值对提取的加密后的Shader文件进行解密,得到待执行Shader文件。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任一项所述方法或权利要求5所述方法的步骤。

10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-4任一项所述方法或权利要求5所述方法的步骤。