一种手机游戏数据加密解密的方法及系统与流程

文档序号:15462786发布日期:2018-09-18 18:34阅读:1039来源:国知局
本发明涉及数据安全领域,尤其涉及一种手机游戏数据加密解密的方法及系统。
背景技术
:目前,随着智能手机的普及,手机游戏业也快速发展,每年都有大量新的游戏产生,但是能够在市场上获得成功的游戏其实并不多。因此,在手机游戏开发行业出现一种不好的现象,就是山寨那些成功的游戏。他们通过对安装文件(例如,apk文件)进行解压缩,从而轻易获得其中的资源文件,快速的分析破解那些游戏的资源、配置,然后快速山寨出一个类似的游戏。还有一些游戏外挂也是通过破解游戏的配置数据,从而得到游戏的一些关键数据。目前在游戏数据加密方面常用的方法包括以下步骤:1.在加密过程中随机选取压缩方式、加密方式对游戏客户端重要资源进行压缩、加密,并据此生成索引信息上传至游戏服务器;2.在解密过程中从游戏服务器获取上述索引信息,并根据其选取正确的解密方式、解压方式对被调用的已加密重要资源进行解密、解压;进而完成上述重要资源的调用以保障游戏客户端的正常运行。该加密方法在一定程度上提高被恶意破解的难度,有效地保护游戏客户端及其重要资源,但是上述方法的缺点是游戏资源的加密解密需要有专门的服务端进行配合,这个会给资源解密带来不方便,增加游戏资源处理额外的不少工作量。技术实现要素:本发明所要解决的技术问题是:提供一种低成本、安全的对手机游戏数据加密解密的方法及系统。为了解决上述技术问题,本发明采用的技术方案为:一种对手机游戏数据加密解密的方法,包括步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;S5、终端接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。为了解决上述技术问题,本发明采用的另一种技术方案为:一种对手机游戏数据加密解密的系统,包括开发端和终端,所述开发端包括第一存储器、第一处理器及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述终端包括第二存储器、第二处理器及存储在第二存储器上并可在第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;所述第二处理器执行所述第二计算机程序时实现以下步骤:S5、接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。本发明的有益效果在于:通过哈希码对原始KEY加密形成第一加密信息,原始KEY对待加密的手机游戏数据加密形成第二加密信息,将第一加密文件与第二加密文件组合形成加密文件,终端通过哈希码对加密文件解密,最终获得待加密的手机游戏数据,无需额外的服务端进行配合,成本低,使用二级加密算法,更加安全。附图说明图1为本发明实施例的一种手机游戏加密解密的方法的流程图;图2为本发明实施例的一种手机游戏加密解密的系统的结构示意图;标号说明:1、开发端;2、第一存储器;3、第一处理器;4、终端5、第二存储器;6、第二处理器;7、手机游戏数据加密解密系统。具体实施方式为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。本发明最关键的构思在于:使用哈希码和与待加密的手机游戏数据对应的原始KEY通过加密解密规则对手机游戏数据进行加密解密,无需额外的服务端进行配合,成本低,使用二级加密算法,更加安全。请参照图1,一种手机游戏数据加密解密的方法,包括步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;S5、终端接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。从上述描述可知,本发明的有益效果在于:通过哈希码对原始KEY加密形成第一加密信息,原始KEY对待加密的手机游戏数据加密形成第二加密信息,将第一加密文件与第二加密文件组合形成加密文件,终端通过哈希码对加密文件解密,最终获得待加密的手机游戏数据,无需额外的服务端进行配合,成本低,使用二级加密算法,更加安全。进一步的,所述步骤S2具体包括:获取所述原始KEY的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述原始KEY的长度一致,将所述扩充后的哈希码与所述原始KEY按位进行异或操作,获得所述第一加密信息;所述步骤S3具体包括:获取所述待加密的手机游戏数据的长度,将所述原始KEY进行循环扩充,扩充后的原始KEY的长度与所述待加密的手机游戏数据的长度一致,将所述扩充后的原始KEY与所述待加密的手机游戏数据按位进行异或操作,获得所述第二加密信息。由上述描述可知,使用哈希码和原始KEY进行循环扩充作为密钥加密更加便捷,无需单独设置加密密钥,方便快捷。进一步的,步骤S4中所述将所述第一加密信息与所述第二加密信息组合形成加密文件具体包括:将所述第一加密信息的长度以及所述第一加密信息写入所述加密文件的头部,将所述第二加密信息的长度以及所述第二加密信息写入所述加密文件的尾部。步骤S5中所述从所述加密文件读取所述第一加密信息和所述第二加密信息具体包括:终端接收所述加密文件,读取所述加密文件的头部,获得所述第一加密信息的长度,确定所述第一加密信息,获取所述第二加密信息的长度,确定所述第二加密信息。由上述描述可知,通过获取第一加密信息的长度以及第二加密信息的长度能更精确的定位第一加密信息和第二加密信息。进一步的,所述步骤S5具体包括:获取所述第一加密信息的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述第一加密信息的长度一致,将所述扩充后的哈希码与所述第一加密信息按位进行异或操作,获得所述原始KEY;所述步骤S6具体包括:获取所述第二加密信息的长度,将所述原始KEY循环扩充,扩充后的原始KEY的长度与所述第二加密信息的长度一致,将所述扩充后的原始KEY与所述第二加密信息按位进行异或操作,获得所述手机游戏数据。由上述描述可知,使用哈希码和原始KEY进行循环扩充作为密钥解密更加便捷,无需单独设置解密密钥,使用异或操作进行解密更加快捷,提高用户体验。请参照图2,一种对手机游戏数据加密解密的系统,包括开发端和终端,所述开发端包括第一存储器、第一处理器及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述终端包括第二存储器、第二处理器及存储在第二存储器上并可在第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;所述第二处理器执行所述第二计算机程序时实现以下步骤:S5、接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。从上述描述可知,本发明的有益效果在于:通过哈希码对原始KEY加密形成第一加密信息,原始KEY对待加密的手机游戏数据加密形成第二加密信息,将第一加密文件与第二加密文件组合形成加密文件,终端通过哈希码对加密文件解密,最终获得待加密的手机游戏数据,无需额外的服务端进行配合,成本低,使用二级加密算法,更加安全。进一步的,所述步骤S2具体包括:获取所述原始KEY的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述原始KEY的长度一致,将所述扩充后的哈希码与所述原始KEY按位进行异或操作,获得所述第一加密信息;所述步骤S3具体包括:获取所述待加密的手机游戏数据的长度,将所述原始KEY进行循环扩充,扩充后的原始KEY的长度与所述待加密的手机游戏数据的长度一致,将所述扩充后的原始KEY与所述待加密的手机游戏数据按位进行异或操作,获得所述第二加密信息。由上述描述可知,使用哈希码和原始KEY进行循环扩充作为密钥加密更加便捷,无需单独设置加密密钥,方便快捷。进一步的,步骤S4中所述将所述第一加密信息与所述第二加密信息组合形成加密文件具体包括:将所述第一加密信息的长度以及所述第一加密信息写入所述加密文件的头部,将所述第二加密信息的长度以及所述第二加密信息写入所述加密文件的尾部。步骤S5中所述从所述加密文件读取所述第一加密信息和所述第二加密信息具体包括:接收所述加密文件,读取所述加密文件的头部,获得所述第一加密信息的长度,确定所述第一加密信息,获取所述第二加密信息的长度,确定所述第二加密信息。由上述描述可知,通过获取第一加密信息的长度以及第二加密信息的长度能更精确的定位第一加密信息和第二加密信息。进一步的,所述步骤S5具体包括:获取所述第一加密信息的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述第一加密信息的长度一致,将所述扩充后的哈希码与所述第一加密信息按位进行异或操作,获得所述原始KEY;所述步骤S6具体包括:获取所述第二加密信息的长度,将所述原始KEY循环扩充,扩充后的原始KEY的长度与所述第二加密信息的长度一致,将所述扩充后的原始KEY与所述第二加密信息按位进行异或操作,获得所述手机游戏数据。由上述描述可知,使用哈希码和原始KEY进行循环扩充作为密钥解密更加便捷,无需单独设置解密密钥,使用异或操作进行解密更加快捷,提高用户体验。请参照图1,本发明的实施例一为:一种手机游戏数据加密解密的方法,包括步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;所述步骤S2具体包括:获取所述原始KEY的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述原始KEY的长度一致,将所述扩充后的哈希码与所述原始KEY按位进行异或操作,获得所述第一加密信息,所述哈希码为开发端设置,保密未公开的字符串;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;所述步骤S3具体包括:获取所述待加密的手机游戏数据的长度,将所述原始KEY进行循环扩充,扩充后的原始KEY的长度与所述待加密的手机游戏数据的长度一致,将所述扩充后的原始KEY与所述待加密的手机游戏数据按位进行异或操作,获得所述第二加密信息。S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;所述将所述第一加密信息与所述第二加密信息组合形成加密文件具体包括:将所述第一加密信息的长度以及所述第一加密信息写入所述加密文件的头部,将所述第二加密信息的长度以及所述第二加密信息写入所述加密文件的尾部。S5、终端接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;所述步骤S5具体包括:获取所述第一加密信息的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述第一加密信息的长度一致,将所述扩充后的哈希码与所述第一加密信息按位进行异或操作,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。所述步骤S6具体包括:获取所述第二加密信息的长度,将所述原始KEY循环扩充,扩充后的原始KEY的长度与所述第二加密信息的长度一致,将所述扩充后的原始KEY与所述第二加密信息按位进行异或操作,获得所述手机游戏数据。本发明的实施例二为:将实施例一所述的方法应用于具体的场景,比如哈希码为:HASHC,与待加密的手机游戏数据对应的原始KEY为:TESTKEYCODE123,待加密的手机游戏数据为:IPHONEGAME12345678,开发端进行加密的过程具体为:所述哈希码的长度为5个字符,所述原始KEY的长度为14个字符,循环扩充所述哈希码,得到HASHCHASHCHASH,循环扩充的哈希码与所述原始KEY的长度一致,将HASHCHASHCHASH的每个字符ASCII码和TESTKEYCODE123的每个字符ASCII码按位进行异或操作,如下:得到第一加密信息,如下:2840288132416771311297123所述待加密的手机游戏数据的长度为18个字符,所述原始KEY的长度为14个字符,循环扩充所述原始KEY,得到TESTKEYCODE123TEST,循环扩充的原始KEY与所述待加密的手机游戏数据的长度一致,将TESTKEYCODE123TEST的每个字符ASCII码和IPHONEGAME12345678的每个字符ASCII码按位进行异或操作,如下:得到第二加密信息,如下:3121272750301414111631797115100108所述将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述第一加密信息的长度14以及所述第一加密信息写入所述加密文件的头部,将所述第二加密信息的长度18以及所述第二加密信息写入所述加密文件的尾部,将所述加密文件发送至终端,终端接收到加密文件,读取第一加密信息和第二加密信息,根据异或操作的规则:同一变量与另一变量和其异或值异或等于另一个数,如(a^b)^a=b;读取第一加密信息的长度为14,将所述哈希码HASHC进行循环扩充,得到HASHCHASHCHASH,所述扩充后的哈希码与第一加密信息的长度一致,将HASHCHASHCHASH的每个字符ASCII码和第一加密信息的每个字符ASCII码按位进行异或操作,如下:得到所述原始KEY为TESTKEYCODE123,根据异或操作的规则:同一变量与另一变量和其异或值异或等于另一个数,如(a^b)^a=b;读取第二加密信息的长度为18,将所述原始KEY循环扩充,得到TESTKEYCODE123TEST,循环扩充的原始KEY与所述第二加密信息的长度一致,将TESTKEYCODE123TEST的每个字符ASCII码和第二加密信息的每个字符ASCII码按位进行异或操作,如下:得到手机游戏数据为IPHONEGAME12345678。请参照图2,本发明的实施例三为:一种对手机游戏数据加密解密的系统7,包括开发端1和终端4,所述开发端1包括第一存储器2、第一处理器3及存储在第一存储器上并可在第一处理器上运行的第一计算机程序,所述终端4包括第二存储器5、第二处理器6及存储在第二存储器上并可在第二处理器上运行的第二计算机程序,其特征在于,所述第一处理器3执行所述第一计算机程序时实现以下步骤:S1、设置一个与待加密的手机游戏数据对应的原始KEY;S2、使用哈希码对所述原始KEY按照加密规则进行加密,形成第一加密信息;所述步骤S2具体包括:获取所述原始KEY的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述原始KEY的长度一致,将所述扩充后的哈希码与所述原始KEY按位进行异或操作,获得所述第一加密信息,所述哈希码为开发端设置,保密未公开的字符串;S3、使用所述原始KEY对所述待加密的手机游戏数据按照加密规则进行加密,形成第二加密信息;所述步骤S3具体包括:获取所述待加密的手机游戏数据的长度,将所述原始KEY进行循环扩充,扩充后的原始KEY的长度与所述待加密的手机游戏数据的长度一致,将所述扩充后的原始KEY与所述待加密的手机游戏数据按位进行异或操作,获得所述第二加密信息。S4、将所述第一加密信息与所述第二加密信息组合形成加密文件,将所述加密文件发送至终端;所述将所述第一加密信息与所述第二加密信息组合形成加密文件具体包括:将所述第一加密信息的长度以及所述第一加密信息写入所述加密文件的头部,将所述第二加密信息的长度以及所述第二加密信息写入所述加密文件的尾部。所述第二处理器6执行所述第二计算机程序时实现以下步骤:S5、接收所述加密文件,从所述加密文件读取所述第一加密信息和所述第二加密信息,使用所述哈希码对所述第一加密信息按照解密规则进行解密,获得所述原始KEY;所述步骤S5具体包括:获取所述第一加密信息的长度,将所述哈希码进行循环扩充,扩充后的哈希码的长度与所述第一加密信息的长度一致,将所述扩充后的哈希码与所述第一加密信息按位进行异或操作,获得所述原始KEY;S6、使用所述原始KEY对所述第二加密信息按照解密规则进行解密,获得所述手机游戏数据。所述步骤S6具体包括:获取所述第二加密信息的长度,将所述原始KEY循环扩充,扩充后的原始KEY的字符长度与所述第二加密信息的长度一致,将所述扩充后的原始KEY与所述第二加密信息按位进行异或操作,获得所述手机游戏数据。综上所述,本发明提供的一种手机游戏数据加密解密的方法及系统,通过哈希码对原始KEY加密形成第一加密信息,原始KEY对待加密的手机游戏数据加密形成第二加密信息,将第一加密文件与第二加密文件组合形成加密文件,终端通过哈希码对加密文件解密,最终获得待加密的手机游戏数据,无需额外的服务端进行配合,成本低,使用二级加密算法,更加安全。以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的
技术领域
,均同理包括在本发明的专利保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1