一种验证客户端可信的方法及相关装置制造方法及图纸

技术编号:21405148 阅读:31 留言:0更新日期:2019-06-19 08:49
本申请实施例公开了一种验证客户端可信的方法及相关装置,用于提高服务器的验证效率。本申请实施例方法包括:直播平台服务器向客户端发送验证指令,验证指令用于指示客户端生成的长度为M的计算结果需满足的验证要求,验证指令包括长度为N的随机数据,长度为(M‑N)的直播平台服务器的当前时间戳,锚点的位置信息,锚点的数值P,漂点的数值Q;直播平台服务器接收客户端发送的验证响应;直播平台服务器根据预置算法和用户信息生成加密KEY;当判断计算结果满足验证要求时,直播平台服务器将随机数据和计算时间戳拼接得到验证数据;直播平台服务器根据加密KEY加密验证数据,得到验证值;若验证值与计算结果一致,则确定客户端为可信的客户端。

【技术实现步骤摘要】
一种验证客户端可信的方法及相关装置
本申请涉及直播平台领域,尤其涉及一种验证客户端可信的方法及相关装置。
技术介绍
随着网络的不断普及和发展,线上直播变的越来越受用户欢迎。直播平台服务器需要对不同的客户端进行验证,以确定各客户端的计算能力,例如客户端H5、Android、IOS、PC客户端等。然而,随着算法的不断升级,客户端可能同时存在有新旧版本,故直播平台服务器需要兼容新旧版本的验证逻辑。同时,用户在观看直播时,由于每个用户观看时长不一样,直播平台服务器在进行验证时还需要考虑用户特性。尤其当直播平台有大型赛事时,同时在线的用户会徒增,那么直播平台服务器的负载压力会徒增,因此,如何让直播平台服务器的验证过程更加高效,以缓解直播平台服务器的负载压力是当前急需解决的一个问题。
技术实现思路
本申请实施例提供了一种验证客户端可信的方法及相关装置,用于增加直播平台服务器的验证效率,并有效缓解直播平台服务器的负载压力。本申请实施例的第一方面提供了一种验证客户端可信的方法,包括:直播平台服务器向客户端发送验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为(M-N)的所述直播平台服务器的当前时间戳,长度为N的随机数据,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q,所述M大于所述N;所述直播平台服务器接收所述客户端发送的验证响应,所述验证响应至少包括以下信息:满足所述验证要求的所述计算结果和所述客户端计算时使用的计算时间戳;所述直播平台服务器根据预置算法和所述用户信息生成所述加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定;当直播平台服务器判断所述计算结果满足所述验证要求时,所述直播平台服务器将所述随机数据和所述计算时间戳拼接得到验证数据;所述直播平台服务器根据所述加密KEY加密所述验证数据,得到验证值;若所述验证值与所述计算结果一致,则所述直播平台服务器确定所述客户端为可信的客户端。在一种可能的实施例中,所述直播平台服务器根据所述加密KEY加密所述验证数据,得到验证值包括:所述直播平台服务器通过以下加密算法得到所述验证值:Blowfish_Encrypt(&ctx,input);Charinput[M]=randdata+Timestamp2;其中,所述Blowfish_Encrypt()为Blowfish加密算法的加密接口,所述加密接口的输出值为所述验证值,所述&ctx为所述Blowfish加密算法的上下文环境变量,所述input为所述验证数据,所述randdata为所述随机数据,所述Timestamp2为所述计算时间戳。本申请实施例的第二方面提供了验证客户端可信的方法,包括:客户端接收直播平台服务器发送的验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为(M-N)的所述直播平台服务器的当前时间戳,长度为N的随机数据,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q,所述M大于所述N;基于预置算法,所述客户端根据用户信息生成加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定,所述用户信息包括用户标识信息,设备标识信息和房间标识信息,所述客户端的当前时间戳的长度为M-N;所述客户端将所述随机数据和所述客户端的当前时间戳进行拼接,得到长度为M的加密数据;所述客户端根据所述加密数据和所述加密KEY生成满足所述验证要求的所述计算结果,并发送响应于所述验证指令的验证响应至所述直播平台服务器,所述验证响应至少包括以下信息:所述计算结果,所述客户端生成所述计算结果的加密次数,所述客户端计算时使用的计算时间戳,所述客户端生成所述计算结果的计算时长和所述客户端的标识信息,以使得所述直播平台服务器根据所述验证响应验证所述客户端是否可信。在一种可能的实施例中,所述客户端根据所述加密数据和所述加密KEY生成满足所述验证要求的所述计算结果包括:所述客户端通过以下加密算法对所述加密数据进行加密,得到加密结果:Blowfish_Encrypt(&ctx,input);Charinput[M]=randdata+Timestamp3;其中,所述Blowfish_Encrypt()为Blowfish加密算法的加密接口,所述加密接口的输出值为所述加密结果,所述&ctx为所述Blowfish加密算法的上下文环境变量,所述input为所述加密数据,所述randdata为所述随机数据,所述Timestamp3为所述客户端的当前时间戳;所述客户端判断所述加密结果是否满足所述验证要求;若所述加密结果不满足所述验证要求,则所述客户端通过调用while函数循环加密所述加密数据,直至所述加密结果满足所述验证要求,所述满足验证要求的加密结果为所述计算结果,其中,所述Timestamp3为每次循环时所述客户端的当前时间戳。在一种可能的实施例中,所述客户端判断所述加密结果是否满足所述验证要求包括:所述客户端判断所述加密结果在所述指定位置处的值是否为所述P;若所述指定位置处的值不为所述P,则所述客户端确定所述加密结果不满足所述验证要求;若所述指定位置处的值为所述P,则所述客户端判断所述加密结果中是否包含所述Q;若所述指定位置处的值为所述P且所述加密结果中包含所述Q,则所述客户端确定所述加密结果满足所述验证要求;若所述加密结果中不包含所述Q,则所述客户端确定所述加密结果不满足所述验证要求。本申请实施例的第三方面提供了一种直播平台服务器,包括:收发单元,用于向客户端发送验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为(M-N)的所述直播平台服务器的当前时间戳,长度为N的随机数据,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q,所述M大于所述N;接收所述客户端发送的验证响应,所述验证响应至少包括以下信息:满足所述验证要求的所述计算结果和所述客户端计算时使用的计算时间戳;生成单元,用于根据所述预置算法和用户信息生成所述加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定;当直播平台服务器判断所述计算结果满足所述验证要求时,将所述随机数据和所述计算时间戳拼接得到验证数据;加密单元,用于根据所述加密KEY加密所述验证数据,得到验证值;确定单元,用于若所述验证值与所述计算结果一致,则确定所述客户端为可信的客户端。本申请实施例的第四方面提供了一种客户端,包括:收发单元,用于接收直播平台服务器发送的验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为(M-N)的所述直播平台服务器的当前时间戳,长度为N的随机数据,锚点的位置信息,锚点的数值P,漂点的本文档来自技高网...

【技术保护点】
1.一种验证客户端可信的方法,其特征在于,包括:直播平台服务器向客户端发送验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为N的随机数据,长度为(M‑N)的所述直播平台服务器的当前时间戳,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q;所述直播平台服务器接收所述客户端发送的验证响应,所述验证响应至少包括以下信息:满足所述验证要求的所述计算结果和所述客户端计算时使用的计算时间戳;所述直播平台服务器根据预置算法和所述用户信息生成所述加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定;当直播平台服务器判断所述计算结果满足所述验证要求时,所述直播平台服务器将所述随机数据和所述计算时间戳拼接得到验证数据;所述直播平台服务器根据所述加密KEY加密所述验证数据,得到验证值;若所述验证值与所述计算结果一致,则所述直播平台服务器确定所述客户端为可信的客户端。

【技术特征摘要】
1.一种验证客户端可信的方法,其特征在于,包括:直播平台服务器向客户端发送验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为N的随机数据,长度为(M-N)的所述直播平台服务器的当前时间戳,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q;所述直播平台服务器接收所述客户端发送的验证响应,所述验证响应至少包括以下信息:满足所述验证要求的所述计算结果和所述客户端计算时使用的计算时间戳;所述直播平台服务器根据预置算法和所述用户信息生成所述加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定;当直播平台服务器判断所述计算结果满足所述验证要求时,所述直播平台服务器将所述随机数据和所述计算时间戳拼接得到验证数据;所述直播平台服务器根据所述加密KEY加密所述验证数据,得到验证值;若所述验证值与所述计算结果一致,则所述直播平台服务器确定所述客户端为可信的客户端。2.根据权利要求1所述的方法,其特征在于,所述直播平台服务器根据所述预置算法和所述用户信息生成所述加密KEY包括:所述直播平台服务器通过以下方式计算所述加密KEY:KEY=SA512.Creat(Timestamp1+UserID+DeviceID+RoomID);其中,所述SHA512.Create是哈希HASH算法SHA512的计算接口,所述Timestamp1用于表示所述直播平台服务器的当前时间戳,所述UserID用于表示所述用户标识信息,所述DeviceID用于表示所述设备标识信息,所述RoomID用于表示所述房间标识信息。3.根据权利要求1所述的方法,其特征在于,所述直播平台服务器根据所述加密KEY加密所述验证数据,得到验证值包括:所述直播平台服务器通过以下加密算法得到所述验证值:Blowfish_Encrypt(&ctx,input);Charinput[M]=randdata+Timestamp2;其中,所述Blowfish_Encrypt()为Blowfish加密算法的加密接口,所述加密接口的输出值为所述验证值,所述&ctx为所述Blowfish加密算法的上下文环境变量,所述input为所述验证数据,所述randdata为所述随机数据,所述Timestamp2为所述计算时间戳。4.一种验证客户端可信的方法,其特征在于,包括:客户端接收直播平台服务器发送的验证指令,所述验证指令用于指示所述客户端生成的长度为M的计算结果需满足的验证要求,所述验证指令包括长度为N的随机数据,长度为(M-N)的所述直播平台服务器的当前时间戳,锚点的位置信息,锚点的数值P,漂点的数值Q,所述锚点为在所述计算结果的指定位置处的值为所述P,所述指定位置为所述锚点的位置信息,所述漂点为在所述计算结果中包括所述Q;基于预置算法,所述客户端根据用户信息生成加密KEY,所述预置算法为所述客户端与所述直播平台服务器协商确定,所述用户信息包括用户标识信息,设备标识信息和房间标识信息,所述客户端的当前时间戳的长度为M-N;所述客户端将所述随机数据和所述客户端的当前时间戳进行拼接,得到长度为M的加密数据;所述客户端根据所述加密数据和所述加密KEY生成满足所述验证要求的所述计算结果,并发送响应于所述验证指令的验证响应至所述直播平台服务器,所述验证响应至少包括以下信息:所述计算结果,所述客户端生成所述计算结果的加密次数,所述客户端计算时使用的计算时间戳,所述客户端生成所述计算结果的计算时长和所述客户端的标识信息,以使得所述直播平台服务器根据所述验证响应验证所述客户端是否可信。5.根据权利要求4所述的方法,其特征在于,所述客户端根据所述加密数据和所述加密KEY生成满足所述验证要求的所述计算结果包括:所述客户端通过以下加密算法对所述加密数据进行加密,得到加密结果:Blowfish_Encr...

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

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

1