System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,尤其涉及一种密钥分配方法、装置、电子设备及存储介质。
技术介绍
1、针对物联网设备密钥分配领域,目前存在一些同类技术和产品。目前针对物联网设备的密钥分发的技术和方法,主流使用的是被动发送机制。当设备的某些访问密钥即将过期时或者过期后需要访问服务器,设备则对服务器发送密钥申请请求,通过某种事先约好的方法,服务器再把更新的密钥发送给设备。
2、此类方法的好处是实现简单,机制容易理解,对技术要求不高。通用性强,设备无需改造。但缺点也非常明显设备会出现密钥过期的真空期。对于时效性不敏感的物联网设备而言,可以承受真空期的断联。而对于时效性,连续性的要求较高的物联网设备,则无法接受。同时,该方法过于依赖终端对平台进行请求和访问,没有统一调度,容易出现大批量设备在同一时间内请求密钥更新,平台需要并发海量的终端认证,容易导致平台报错,不得不采取冷却、熔断、限流等措施。
技术实现思路
1、本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术提出一种密钥分配方法、装置、电子设备及存储介质,能够高效进行密钥分配。
2、一方面,本专利技术实施例提供了一种密钥分配方法,包括:
3、获取初始化数据和密钥分发接口的核定承载量;初始化数据包括密钥更新周期和时间窗口大小;基于时间窗口大小将自然日切割为若干时间窗口,并确定各时间窗口对应的时间段;
4、响应于目标终端的接入请求,获取目标终端的密钥申请时间;并向目标终端发送签
5、根据本次更新时间和密钥更新周期确定密钥更新时间段;
6、基于核定承载量获得各时间窗口的密钥分发承载余量;进而基于密钥分发承载余量,通过逆向滑动时间窗口从密钥更新时间段中确定目标终端的目标更新时间段;
7、响应于目标终端在目标更新时间段的密钥更新成功报文,获取目标终端的密钥更新时间作为本次更新时间,然后返回根据本次更新时间和密钥更新周期确定密钥更新时间段这一步骤,持续对目标终端进行密钥更新。
8、可选地,方法还包括:
9、当目标终端的连接中断;
10、响应于目标终端的重新接入请求,重新获取目标终端的密钥申请时间,然后返回向目标终端发送签发的密钥这一步骤,进行目标终端的主动式密钥更新。
11、可选地,基于时间窗口大小将自然日切割为若干时间窗口,并确定各时间窗口对应的时间段,包括:
12、通过自然日的总时间除以时间窗口大小,获得时间窗口数量;
13、根据时间窗口数量将自然日切割为若干时间窗口,并确定各时间窗口在自然日中对应的时间段。
14、可选地,根据本次更新时间和密钥更新周期确定密钥更新时间段,包括:
15、将本次更新时间与密钥更新周期相加,获得密钥更新截止时间;
16、根据本次更新时间和密钥更新截止时间确定密钥更新时间段。
17、可选地,初始化数据还包括上限阈值默认比例;基于核定承载量获得各时间窗口的密钥分发承载余量,包括:
18、基于核定承载量,结合上限阈值默认比例和时间窗口大小,获得时间窗口的密钥分发承载量值;
19、获取各时间窗口的已有负载量,根据密钥分发承载量值与已有负载量的差,对应获得各时间窗口的密钥分发承载余量。
20、可选地,基于密钥分发承载余量,通过逆向滑动时间窗口从密钥更新时间段中确定目标终端的目标更新时间段,包括:
21、基于各时间窗口对应的时间段,确定密钥更新时间段对应的时间窗口序列;时间窗口序列包括密钥更新时间段的时间范围对应的多个连续的时间窗口;
22、将时间窗口序列中倒数第二个时间窗口作为目标时间窗口;
23、对目标时间窗口的密钥分发承载余量进行余量判定;
24、当目标时间窗口的密钥分发承载余量小于1,以目标时间窗口为起点,在时间窗口序列上进行逆向滑动,进而将目标时间窗口的前一个时间窗口作为目标时间窗口,然后返回对目标时间窗口的密钥分发承载余量进行余量判定这一步骤,直至目标时间窗口的密钥分发承载余量大于或等于1,将目标时间窗口对应的时间段作为目标终端的目标更新时间段。
25、可选地,初始化数据还包括步进值,方法还包括:
26、当逆向滑动将目标时间窗口定位到时间窗口序列中第一个时间窗口,基于核定承载量,引入步进值重新确定各时间窗口的密钥分发承载余量,然后返回对目标时间窗口的密钥分发承载余量进行余量判定这一步骤,直至目标时间窗口的密钥分发承载余量大于或等于1,将目标时间窗口对应的时间段作为目标终端的目标更新时间段。
27、另一方面,本专利技术实施例提供了一种密钥分配装置,包括:
28、第一模块,用于获取初始化数据和密钥分发接口的核定承载量;初始化数据包括密钥更新周期和时间窗口大小;基于时间窗口大小将自然日切割为若干时间窗口,并确定各时间窗口对应的时间段;
29、第二模块,用于响应于目标终端的接入请求,获取目标终端的密钥申请时间;并向目标终端发送签发的密钥;以密钥申请时间作为本次更新时间;
30、第三模块,用于根据本次更新时间和密钥更新周期确定密钥更新时间段;
31、第四模块,用于基于核定承载量获得各时间窗口的密钥分发承载余量;进而基于密钥分发承载余量,通过逆向滑动时间窗口从密钥更新时间段中确定目标终端的目标更新时间段;
32、第五模块,用于响应于目标终端在目标更新时间段的密钥更新成功报文,获取目标终端的密钥更新时间作为本次更新时间,然后返回根据本次更新时间和密钥更新周期确定密钥更新时间段这一步骤,持续对目标终端进行密钥更新。
33、可选地,装置还包括:
34、第六模块,用于当目标终端的连接中断;
35、第七模块,用于响应于目标终端的重新接入请求,重新获取目标终端的密钥申请时间,然后返回向目标终端发送签发的密钥这一步骤,进行目标终端的主动式密钥更新。
36、可选地,装置还包括:
37、第八模块,用于当逆向滑动将目标时间窗口定位到时间窗口序列中第一个时间窗口,基于核定承载量,引入步进值重新确定各时间窗口的密钥分发承载余量,然后返回对目标时间窗口的密钥分发承载余量进行余量判定这一步骤,直至目标时间窗口的密钥分发承载余量大于或等于1,将目标时间窗口对应的时间段作为目标终端的目标更新时间段。
38、另一方面,本专利技术实施例提供了一种电子设备,包括:处理器以及存储器;存储器用于存储程序;处理器执行程序实现上述密钥分配方法。
39、另一方面,本专利技术实施例提供了一种计算机存储介质,其中存储有处理器可执行的程序,处理器可执行的程序在由处理器执行时用于实现上述密钥分配方法。
40、本专利技术实施例获取初始化数据和密钥分发接口的核定承载量;初始化数据包括密钥更新周期和时间窗口大小;基于时本文档来自技高网...
【技术保护点】
1.一种密钥分配方法,其特征在于,包括:
2.根据权利要求1所述的密钥分配方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的密钥分配方法,其特征在于,所述基于所述时间窗口大小将自然日切割为若干时间窗口,并确定各所述时间窗口对应的时间段,包括:
4.根据权利要求1所述的密钥分配方法,其特征在于,所述根据所述本次更新时间和所述密钥更新周期确定密钥更新时间段,包括:
5.根据权利要求1所述的密钥分配方法,其特征在于,所述初始化数据还包括上限阈值默认比例;所述基于所述核定承载量获得各所述时间窗口的密钥分发承载余量,包括:
6.根据权利要求1所述的密钥分配方法,其特征在于,所述基于所述密钥分发承载余量,通过逆向滑动时间窗口从所述密钥更新时间段中确定所述目标终端的目标更新时间段,包括:
7.根据权利要求6所述的密钥分配方法,其特征在于,所述初始化数据还包括步进值,所述方法还包括:
8.一种密钥分配装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括处理器以及存储器;
...
【技术特征摘要】
1.一种密钥分配方法,其特征在于,包括:
2.根据权利要求1所述的密钥分配方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的密钥分配方法,其特征在于,所述基于所述时间窗口大小将自然日切割为若干时间窗口,并确定各所述时间窗口对应的时间段,包括:
4.根据权利要求1所述的密钥分配方法,其特征在于,所述根据所述本次更新时间和所述密钥更新周期确定密钥更新时间段,包括:
5.根据权利要求1所述的密钥分配方法,其特征在于,所述初始化数据还包括上限阈值默认比例;所述基于所述核定承载量获得各所述时间窗口的密钥分发承载余量,包括...
【专利技术属性】
技术研发人员:雷景皓,
申请(专利权)人:天翼物联科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。