欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2019100416946
申请人: 内蒙古惠强科技有限公司
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-02-23
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种密钥生成方法,其特征在于,包括:

通过预设的定位模块获取终端设备的地理位置信息;

向预设的服务器发送所述地理位置信息,以使所述服务器根据所述地理位置信息生成服务器端密钥;

对所述地理位置信息进行序列化处理,得到与所述地理位置信息对应的二进制序列;

根据所述二进制序列生成客户端密钥,所述客户端密钥与所述服务器端密钥相同,所述终端设备与所述服务器之间通过所述客户端密钥或所述服务器端密钥进行信息交互;

在根据所述二进制序列生成客户端密钥之前,还包括:通过预设的伪随机数生成器生成第三随机数,并向所述服务器发送所述第三随机数;

根据下式计算移位操作的位数:

ShiftBit=MOD(RandomNum3,BiStrLen)其中,MOD为求余函数,RandomNum3为所述第三随机数,BiStrLen为所述二进制序列的总位数,ShiftBit为移位操作的位数;

根据下式对所述二进制序列进行移位操作:

NewBinaryStream=BinaryStream<

NewBinaryStream=BinaryStream>>ShiftBit其中,BinaryStream为所述二进制序列,<<为左移运算符,>>为右移运算符,NewBinaryStream为移位操作后得到的二进制序列;

所述方法还包括:

根据距离对密钥进行更新;

所述根据所述二进制序列生成客户端密钥包括:

确定所述客户端密钥的长度;

根据预设的比特抽取规则从所述二进制序列中依次抽取KeyLength个比特,并使用抽取出的比特生成所述客户端密钥,KeyLength为所述客户端密钥的长度;

在根据预设的比特抽取规则从所述二进制序列中依次抽取KeyLength个比特之前,还包括:通过预设的伪随机数生成器生成第一随机数,并向所述服务器发送所述第一随机数;

根据下式从预设的抽取规则集合中选取出一个候选抽取规则作为所述比特抽取规则:RuleSeq=MOD(RandomNum1,RuleNum)+1其中,所述抽取规则集合中包括两个以上的候选抽取规则,MOD为求余函数,RandomNum1为所述第一随机数,RuleNum为所述抽取规则集合中的候选抽取规则的数目,RuleSeq为所述比特抽取规则在所述抽取规则集合中的序号。

2.根据权利要求1所述的密钥生成方法,其特征在于,所述根据所述二进制序列生成客户端密钥包括:根据下式对所述二进制序列进行处理,生成所述客户端密钥:KEY=HashFunc(BinaryStream)其中,BinaryStream为所述二进制序列,HashFunc为预设的哈希函数,KEY为所述客户端密钥。

3.根据权利要求2所述的密钥生成方法,其特征在于,在对所述二进制序列进行处理之前,还包括:通过预设的伪随机数生成器生成第二随机数,并向所述服务器发送所述第二随机数;

根据下式从预设的哈希函数集合中选取出一个候选哈希函数作为对所述二进制序列进行处理的哈希函数:FuncSeq=MOD(RandomNum2,FuncNum)+1其中,所述哈希函数集合中包括两个以上的候选哈希函数,MOD为求余函数,RandomNum2为所述第二随机数,FuncNum为所述哈希函数集合中的候选哈希函数的数目,FuncSeq为选取出的对所述二进制序列进行处理的哈希函数在所述哈希函数集合中的序号。

4.一种密钥生成装置,其特征在于,包括:

地理位置信息获取模块,用于通过预设的定位模块获取终端设备的地理位置信息;

地理位置信息发送模块,用于向预设的服务器发送所述地理位置信息,以使所述服务器根据所述地理位置信息生成服务器端密钥;

序列化处理模块,用于对所述地理位置信息进行序列化处理,得到与所述地理位置信息对应的二进制序列;

密钥生成模块,用于根据所述二进制序列生成客户端密钥,所述客户端密钥与所述服务器端密钥相同,所述终端设备与所述服务器之间通过所述客户端密钥或所述服务器端密钥进行信息交互;

第三随机数生成模块,用于通过预设的伪随机数生成器生成第三随机数,并向所述服务器发送所述第三随机数;

位数计算模块,用于根据下式计算移位操作的位数:ShiftBit=MOD(RandomNum3,BiStrLen)其中,MOD为求余函数,RandomNum3为所述第三随机数,BiStrLen为所述二进制序列的总位数,ShiftBit为移位操作的位数;

移位操作模块,用于根据下式对所述二进制序列进行移位操作:NewBinaryStream=BinaryStream<

NewBinaryStream=BinaryStream>>ShiftBit其中,BinaryStream为所述二进制序列,<<为左移运算符,>>为右移运算符,NewBinaryStream为移位操作后得到的二进制序列;

所述装置还用于:

根据距离对密钥进行更新;

所述密钥生成模块包括:

密钥长度确定单元,用于确定所述客户端密钥的长度;

比特抽取单元,用于根据预设的比特抽取规则从所述二进制序列中依次抽取KeyLength个比特,并使用抽取出的比特生成所述客户端密钥,KeyLength为所述客户端密钥的长度;

所述密钥生成模块还包括:

第一随机数生成单元,用于通过预设的伪随机数生成器生成第一随机数,并向所述服务器发送所述第一随机数;

抽取规则选取单元,用于根据下式从预设的抽取规则集合中选取出一个候选抽取规则作为所述比特抽取规则:RuleSeq=MOD(RandomNum1,RuleNum)+1其中,所述抽取规则集合中包括两个以上的候选抽取规则,MOD为求余函数,RandomNum1为所述第一随机数,RuleNum为所述抽取规则集合中的候选抽取规则的数目,RuleSeq为所述比特抽取规则在所述抽取规则集合中的序号。

5.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如权利要求1至3中任一项所述的密钥生成方法的步骤。

6.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至3中任一项所述的密钥生成方法的步骤。