一种文件加密方法、装置及服务器制造方法及图纸

技术编号:18289773 阅读:22 留言:0更新日期:2018-06-24 04:36
本发明专利技术实施例公开了一种文件加密方法、装置及服务器。本发明专利技术实施例方法包括:服务器接收客户端的JS代码请求;服务器对待下发给客户端的JS代码文件分别进行随机排序,得到第一序列;服务器根据客户端标识信息和第一序列的JS代码文件生成共享秘钥;服务器根据第一序列得到第二序列;服务器根据共享秘钥按照第二序列加密JS代码文件。本发明专利技术实施例中通过共享秘钥按照预先得到的第二序列对JS代码文件进行加密,一旦任何一个文件被修改,即会导致所有JS代码文件都无法进行解密,有效保证JS代码文件的安全,避免了文件被篡改或攻击。

【技术实现步骤摘要】
一种文件加密方法、装置及服务器
本专利技术涉及文件加解密
,特别涉及一种文件加密方法、装置及服务器。
技术介绍
目前,随着手机、平板电脑灯移动终端及智能设备的普及,越来越多的移动应用也随之而起,然而使用移动终端原生语言来开发应用则会存在一些劣势。例如Android系统使用JAVA语言来开发应用,其更新迭代则比较缓慢。随着大前端,更多的移动应用会将进程变化的需求使用JS(JavaScript)语言来开发,从而具备了像WEB程序一样,及时实时的进行更新,极大的方便了应用的更新与迭代,实现了快速更新,实时上线等特性。随着JS代码的普及,由于JS代码是脚本语言,其源代码相当于是公开的,因此其极易被破解和篡改,通过篡改JS代码则可以实现一些非法的功能,例如通过篡改JS代码绕过客户端的逻辑检测,甚至可能产生跨站脚本攻击等等,因此需要一种方法来保障移动终端端加载或者执行的JS代码为服务器下发的正确的、没有被篡改过的JS代码。
技术实现思路
本专利技术实施例提供了一种文件加密方法,以避免现有JS代码文件容易被篡改或者易被跨站脚本攻击,而导致安全性低的问题。第一方面,本申请提供一种文件加密方法,所述方法包括:服务器接收客户端的JS代码请求,所述请求中包括所述客户端的客户端标识信息;所述服务器对待下发给所述客户端的JS代码文件分别进行随机排序,得到第一序列;所述服务器根据所述客户端标识信息和所述第一序列的JS代码文件生成共享秘钥;所述服务器根据所述第一序列得到第二序列;所述服务器根据所述共享秘钥按照所述第二序列加密所述JS代码文件。进一步的,所述服务器根据所述客户端标识信息和所述第一序列生成共享秘钥,具体包括:所述服务器根据所述客户端标识信息计算得到配对的第一公钥和第一私钥;所述服务器根据所述第一序列的JS代码文件生成第二公钥和第二私钥;所述服务器根据所述第一公钥和所述第二私钥生成所述共享秘钥,或者,所述服务器根据所述第一私钥和所述第二公钥生成所述共享秘钥。进一步的,所述服务器根据所述客户端标识信息计算得到配对的第一公钥和第一私钥,具体包括:所述服务器使用预置的哈希算法计算所述客户端标识信息,得到所述客户端标识信息的第一哈希值,将所述第一哈希值作为所述第一私钥;所述服务器使用预置的非对称加密算法计算所述第一私钥,得到与所述第一私钥配对的所述第一公钥。进一步的,所述服务器根据所述第一序列的JS代码文件生成第二公钥和第二私钥,具体包括:所述服务器使用预置的哈希算法计算所述第一序列的JS代码文件,得到第二哈希值,将所述第二哈希值作为所述第二私钥;所述服务器使用预置的非对称加密算法计算所述第二私钥,得到与所述第二私钥配对的所述第二公钥。进一步的,所述服务器根据所述第一公钥和所述第二私钥生成所述共享秘钥,具体包括:所述服务器使用预置的非对称加密算法计算所述第一公钥和所述第二私钥,得到所述共享秘钥。进一步的,所述服务器根据所述共享秘钥按照所述第二序列加密所述JS代码文件,包括:使用对称加密算法对所述第二序列中前m-1个JS代码文件按顺序依次进行加密,其中,m≥2,对前m-1个JS代码文件中每个JS代码文件,当前JS代码文件加密的KEY值为后一个JS代码文件的哈希值;使用所述对称加密算法以所述共享秘钥为KEY值对第二序列中第m个JS代码文件进行加密。第二方面,本申请提供一种文件加密装置,应用于服务器,所述装置包括:接收模块,用于接收客户端的JS代码请求,所述请求中包括所述客户端的客户端标识信息;排序模块,用于对待下发给所述客户端的JS代码文件分别进行随机排序,得到第一序列;生成模块,用于根据所述客户端标识信息和所述第一序列的JS代码文件生成共享秘钥;获取模块,用于根据所述第一序列得到第二序列;加密模块,用于根据所述共享秘钥按照所述第二序列加密所述JS代码文件。进一步的,所述生成模块具体用于:根据所述客户端标识信息计算得到配对的第一公钥和第一私钥;根据所述第一序列的JS代码文件生成第二公钥和第二私钥;根据所述第一公钥和所述第二私钥生成所述共享秘钥,或者,根据所述第一私钥和所述第二公钥生成所述共享秘钥。进一步的,所述生成模块具体用于:使用预置的哈希算法计算所述客户端标识信息,得到所述客户端标识信息的第一哈希值,将所述第一哈希值作为所述第一私钥;使用预置的非对称加密算法计算所述第一私钥,得到与所述第一私钥配对的所述第一公钥。进一步的,所述生成模块具体用于:使用预置的哈希算法计算所述第一序列的JS代码文件,得到第二哈希值,将所述第二哈希值作为所述第二私钥;使用预置的非对称加密算法计算所述第二私钥,得到与所述第二私钥配对的所述第二公钥。进一步的,所述生成模块具体用于:使用预置的非对称加密算法计算所述第一公钥和所述第二私钥,得到所述共享秘钥。进一步的,所述加密模块具体用于:使用对称加密算法对所述第二序列中前m-1个JS代码文件按顺序依次进行加密,其中,m≥2,对前m-1个JS代码文件中每个JS代码文件,当前JS代码文件加密的KEY值为后一个JS代码文件的哈希值;使用所述对称加密算法以所述共享秘钥为KEY值对第二序列中第m个JS代码文件进行加密。第三方面,本专利技术还提供一种服务器,包括:存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时可以实现第一方面中任一所述的方法。第四方面,本专利技术还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一所述的方法。本专利技术实施例中服务器接收客户端的JS代码请求;服务器对待下发给客户端的JS代码文件分别进行随机排序,得到第一序列;服务器根据客户端标识信息和第一序列的JS代码文件生成共享秘钥;服务器根据第一序列得到第二序列;服务器根据共享秘钥按照第二序列加密JS代码文件。本专利技术实施例中通过共享秘钥按照预先得到的第二序列对JS代码文件进行加密,一旦任何一个文件被修改,即会导致所有JS代码文件都无法进行解密,有效保证JS代码文件的安全,避免了文件被篡改或攻击。附图说明图1是本专利技术实施例中文件加密方法的一个实施例示意图;图2是本专利技术实施例中步骤S103的一个实施例示意图;图3是本专利技术实施例中步骤S103的另一个实施例示意图;图4是本专利技术实施例中步骤S1031的一个实施例示意图;图5是本专利技术实施例中步骤S1032的一个实施例示意图;图6是本专利技术实施例文件加密装置的一个实施例示意图;图7是本专利技术实施例中服务器的一个实施例示意图;图8是本专利技术实施例中文件加密方法的一个实施例示意图;图9是本专利技术实施例中步骤S803的一个实施例示意图;图10是本专利技术实施例中步骤S803的另一个实施例示意图;图11是本专利技术实施例中步骤S8031的一个实施例示意图;图12是本专利技术实施例中步骤S8032的一个实施例示意图;图13是本专利技术实施例中步骤S804的一个实施例示意图;图14是本专利技术实施例文件解密装置的一个实施例示意图;图15是本专利技术实施例中客户端的一个实施例示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚本文档来自技高网
...
一种文件加密方法、装置及服务器

【技术保护点】
1.一种文件加密方法,其特征在于,所述方法包括:服务器接收客户端的JS代码请求,所述请求中包括所述客户端的客户端标识信息;所述服务器对待下发给所述客户端的JS代码文件分别进行随机排序,得到第一序列;所述服务器根据所述客户端标识信息和所述第一序列的JS代码文件生成共享秘钥;所述服务器根据所述第一序列得到第二序列;所述服务器根据所述共享秘钥按照所述第二序列加密所述JS代码文件。

【技术特征摘要】
1.一种文件加密方法,其特征在于,所述方法包括:服务器接收客户端的JS代码请求,所述请求中包括所述客户端的客户端标识信息;所述服务器对待下发给所述客户端的JS代码文件分别进行随机排序,得到第一序列;所述服务器根据所述客户端标识信息和所述第一序列的JS代码文件生成共享秘钥;所述服务器根据所述第一序列得到第二序列;所述服务器根据所述共享秘钥按照所述第二序列加密所述JS代码文件。2.根据权利要求1所述的方法,其特征在于,所述服务器根据所述客户端标识信息和所述第一序列生成共享秘钥,具体包括:所述服务器根据所述客户端标识信息计算得到配对的第一公钥和第一私钥;所述服务器根据所述第一序列的JS代码文件生成第二公钥和第二私钥;所述服务器根据所述第一公钥和所述第二私钥生成所述共享秘钥,或者,所述服务器根据所述第一私钥和所述第二公钥生成所述共享秘钥。3.根据权利要求2所述的方法,其特征在于,所述服务器根据所述客户端标识信息计算得到配对的第一公钥和第一私钥,具体包括:所述服务器使用预置的哈希算法计算所述客户端标识信息,得到所述客户端标识信息的第一哈希值,将所述第一哈希值作为所述第一私钥;所述服务器使用预置的非对称加密算法计算所述第一私钥,得到与所述第一私钥配对的所述第一公钥。4.根据权利要求2所述的方法,其特征在于,所述服务器根据所述第一序列的JS代码文件生成第二公钥和第二私钥,具体包括:所述服务器使用预置的哈希算法计算所述第一序列的JS代码文件,得到第二哈希值,将所述第二哈希值作为所述第二私钥;所述服务器使用预置的非对称加密算法计算所述第二私钥,得到与所述第二私钥配对的所述第二公钥。5.根据权利要求2所述的方法,其特征在于,所述服务器根据所述第一公钥和所述第二私钥生成所述共享秘钥,具体包括:所述服务器使用预置的非对称加密算法计算所述第一公钥和所述...

【专利技术属性】
技术研发人员:周志刚陈少杰张文明
申请(专利权)人:武汉斗鱼网络科技有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1