【技术实现步骤摘要】
一种基于wake算法的动态秘钥下发的加固方法及其系统
本专利技术涉及计算机编程
,特别是一种基于wake算法的动态秘钥下发的加固方法及其系统。
技术介绍
WAKE算法(WordAutoKeyEncryption)是英国剑桥大学计算机实验室的DavieJ.Wheeler提出的数据加密算法,WAKE被认为是最快的密码算法之一,加密一个字(32比特)大约20条指令。现有的加固方式:使用wake(WordAutoKeyEncryption)算法在游戏客户端进行数据包加密前需要填充秘钥生成秘钥表,执行加密、解密操作时会通过查找秘钥表在内存中映射的秘钥字段进行数据包的加密、解密操作。现有的加固方式的缺点是:秘钥表生成在游戏客户端内存中,软件破坏者就可以通过逆向破解手段将秘钥表从内存中还原,根据秘钥生成算法可以逆向得出真实的秘钥;通过真实的秘钥可以解密所有玩家的数据包,可以拦截、篡改任意的数据包。
技术实现思路
为克服上述问题,本专利技术的目的是提供一种基于wake算法的动态秘钥下发的加固方法,能 ...
【技术保护点】
1.一种基于wake算法的动态秘钥下发的加固方法,其特征在于:所述加固方法中设置有游戏秘钥认证服务端和游戏认证客户端,所述加固方法包括如下步骤:步骤S1、游戏秘钥认证服务端对android/ios游戏平台分别对应生成一个固定不变的主秘钥,游戏认证时会随机产生一串子秘钥;通过主秘钥和子秘钥来生成秘钥表;/n步骤S2、游戏平台的游戏认证客户端发起第一次认证信息时,游戏秘钥认证服务端动态下发秘钥表;游戏认证客户端根据秘钥表、游戏玩家固定标识、玩家登录游戏的时间戳对秘钥表进行混淆操作;通过使用混淆后的秘钥表对数据包进行加密,并发起第二次认证信息;/n步骤S3、游戏认证客户端通信过程 ...
【技术特征摘要】
1.一种基于wake算法的动态秘钥下发的加固方法,其特征在于:所述加固方法中设置有游戏秘钥认证服务端和游戏认证客户端,所述加固方法包括如下步骤:步骤S1、游戏秘钥认证服务端对android/ios游戏平台分别对应生成一个固定不变的主秘钥,游戏认证时会随机产生一串子秘钥;通过主秘钥和子秘钥来生成秘钥表;
步骤S2、游戏平台的游戏认证客户端发起第一次认证信息时,游戏秘钥认证服务端动态下发秘钥表;游戏认证客户端根据秘钥表、游戏玩家固定标识、玩家登录游戏的时间戳对秘钥表进行混淆操作;通过使用混淆后的秘钥表对数据包进行加密,并发起第二次认证信息;
步骤S3、游戏认证客户端通信过程中将数据包上传到游戏秘钥认证服务端,游戏秘钥认证服务端接收到第二次认证的认证信息时:根据游戏认证客户端发送的数据包和第二次认证信息还原出混淆后的秘钥表,解密并校验第二次认证数据包中数据的有效性。
2.根据权利要求1所述的一种基于wake算法的动态秘钥下发的加固方法,其特征在于:所述步骤S1中进一步具体为:游戏秘钥认证服务端对android/ios游戏平台分别对应生成一个固定不变的主秘钥,则android游戏平台和ios游戏平台最终会分别对应有一个秘钥表,其中秘钥表的生成方式为将主秘钥和子秘钥通过循环移位和异或运算后生成数组大小为256的秘钥表。
3.根据权利要求1所述的一种基于wake算法的动态秘钥下发的加固方法,其特征在于:第一次认证时的认证信息包括:游戏玩家固定标识、账号名、玩家登录时的游戏平台、玩家登录游戏的时间戳;所述游戏认证客户端根据秘钥表、游戏玩家固定标识、玩家登录游戏的时间戳对秘钥表进行混淆操作,具体为将游戏玩家固定标识和玩家登录游戏的时间戳进行与运算,计算后的结果对秘钥表按数组大小进行循环或运算从而实现混淆操作。
4.根据权利要求1所述的一种基于wake算法的动态秘钥下发的加固方法,其特征在于:第二次认证时的认证信息包括:游戏玩家固定标识、账号名、玩家登录时的游戏平台、玩家登录游戏的时间戳、游戏客户端版本号、玩家姓名、年龄、性别、以及身份证号。
5.根据权利要求1所述的一种基于wake算法的动态秘钥下发的加固方法,其特征在于:所述步骤S3进一步具体为:游戏秘钥认证服务端进行第二次认证时游戏秘钥认证服务端将之前下发给游戏认证客户端的秘钥表进行还原得出混淆后的秘钥表,通过还原出混淆后的秘钥表解密出游戏认证客户端第二次认证提交的数据包;数据包解密后开始验证数据包中的内容是否有效;当第二次认证的数据包校验结果有效,下发验证通过的指令消息给游戏认证客户端;当第二次认证的数据包校验结果无效,下发拒绝连接的指令消息给游戏认证客户端;当第二次认证的数据包解密失败,下发拒绝连接的指令消息给游戏认证客户端。
...
【专利技术属性】
技术研发人员:刘德建,韦铭,陈宏展,
申请(专利权)人:福建天晴在线互动科技有限公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。