1.一种信息验证方法,用于在设备向服务器发送信息时进行信息的验证,包括以下步骤:
获取设备的计算能力等级L;
在不同时刻分M批次通知多个所述设备,对应每个设备的通知信息包括对应的计算能力等级L、检验字段以及该通知信息相对于最早的第一批次的批次排序D;
设备和服务器建立通信并生成共享密钥;
所述设备接收对应的所述通知信息,并将所述检验字段输入到预设的算法中计算得到计算结果,当计算结果中的预定值的个数N满足N=L+M‑D时进入下一步;
将计算结果使用共享密钥加密并发送到服务器,并由服务器验证该计算结果与预先存储的结果是否匹配,如果匹配则验证通过;
其中,分批次通知的具体步骤包括:将选定的时间T平均分成M份;
将服务器对应的所有的设备也平均分成M份;
在第一个T/M时间内,将所述通知信息发送给第一份第一批次的设备,然后按照批次顺序发送给其他设备直至发送完毕;
其中,所述预设的算法为检验字段的hash值计算,对应的预定值的个数为hash值计算得到开头为0的个数。
2.根据权利要求1所述的信息验证方法,其特征在于:其中,获取计算能力等级L的过程为:
采集设备的设备信息,根据采集到的设备信息对照预先存储的设备与计算能力等级对应信息来确定该设备的计算能力等级L。
3.根据权利要求1所述的信息验证方法,其特征在于:其中,建立通信并生成共享密钥的过程包括以下子步骤:当设备登录到服务器时,服务器根据该设备的用户信息生成一对公钥和私钥;
当设备登录到服务器时,设备根据检验字段和登录时间的时间戳来生成一对公钥和私钥;
服务器和各个设备互相交换公钥实现密钥共享并建立通信。
4.根据权利要求1所述的信息验证方法,其特征在于:其中,所述服务器为直播平台服务器,所述设备为直播平台的供观众用户使用的设备,所述通知信息为弹幕抽奖的通知信息,所述检验字段为随机数据。
5.根据权利要求1所述的信息验证方法,其特征在于:当进行特定计算得到的预定值的个数N不满足N=L+M‑D时,设备会在检验字段前添加一个多位的数据然后再次进行计算直到满足条件为止。
6.根据权利要求1所述的信息验证方法,其特征在于:其中,服务器验证该计算结果是否匹配的过程包括以下子步骤:对从设备接收到的通知信息使用公共密钥进行解密;
从解密得到的数据中检查是否有检验字段和计算结果,如果没有则判定该数据是无效的,不能通过验证,如果有的话,就进入下一步;
进一步判断该检验字段和计算结果是否与服务器对应发给该设备的检验字段、计算结果相匹配,若匹配,则验证通过,否则不能通过验证。
7.一种信息验证系统,用于在设备向服务器发送信息时进行信息的验证,其特征在于,包括:
计算能力获取模块,用于获取设备的计算能力等级L;
分批次通知模块,用于在不同时刻分M批次通知多个所述设备,对应每个设备的通知信息包括对应的计算能力等级L、检验字段以及该通知信息相对于最早的第一批次的批次排序D;
共享密钥生成模块,用于设备和服务器建立通信并生成共享密钥;
预定值计算判断模块,用于将所述检验字段输入到预设的算法中计算得到计算结果,并进一步判断计算结果中的预定值的个数N是否满足N=L+M‑D;
匹配判断模块,用于将计算结果使用共享密钥加密并发送到服务器,并验证该计算结果与预先存储的结果是否匹配,如果匹配则验证通过;
其中,分批次通知的具体步骤包括:将选定的时间T平均分成M份;
将服务器对应的所有的设备也平均分成M份;
在第一个T/M时间内,将所述通知信息发送给第一份第一批次的设备,然后按照批次顺序发送给其他设备直至发送完毕;
其中,所述预设的算法为检验字段的hash值计算,对应的预定值的个数为hash值计算得到开头为0的个数。
8.一种信息验证装置,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,其特征在于:处理器执行计算机程序时实现权利要求1至7任一项所述的方法。