会话秘钥生成方法、控制设备和设备集群系统与流程

文档序号:35376215发布日期:2023-09-08 17:39阅读:41来源:国知局
会话秘钥生成方法、控制设备和设备集群系统与流程

本技术涉及通信,尤其涉及一种会话秘钥生成方法、控制设备和设备集群系统。


背景技术:

1、在分布式存储系统、微服务系统或云计算系统等设备集群系统中,通常包括多个控制设备,该控制设备可以理解为计算机、服务器、虚拟计算机或控制器等可以运行软件程序的设备。

2、每个控制设备上可以部署一个或多个服务组件,服务组件可以理解为软件程序,服务组件可以为用户终端或其他服务组件提供服务。例如,部署在控制设备b上的第二服务组件可以为部署在控制设备a上的第一服务组件提供服务,如数据存取服务等。为了保证数据传输的安全性,第二服务组件在为第一服务组件提供服务时,即第二服务组件在与第一服务组件建立会话时,要对第一服务组件进行身份认证。

3、目前,每个服务组件具有唯一对应的数字证书,服务组件之间可以通过数字证书进行认证。然而,数字证书的认证速度较低,无法满足大规模高效能的业务需求。


技术实现思路

1、本技术实施例提供一种会话秘钥生成方法、控制设备和设备集群系统,可以提高认证效率,提高系统性能。

2、第一方面,本技术实施例提供一种控制设备,为方便理解,下文中将该控制设备称为第一控制设备,第一控制设备应用于设备集群系统中。设备集群系统中可以包括多个控制设备,其中,第一控制设备可以包括秘钥分发中心kdc和第一服务组件,第一服务组件中部署有第一秘钥分发实体kde。

3、kdc可以用于:响应于第一kde的秘钥申请请求,为第一kde提供秘钥生成信息。第一kde用于根据kdc提供的秘钥生成信息生成第一实体秘钥。

4、第一kde可以用于在与另一控制设备的服务组件的第二kde建立会话的过程中,向第二kde发送第一kde的标识信息和kdc的标识信息,以使第二kde根据第二kde的实体秘钥、第一kde的标识信息和kdc的标识信息,生成用于第一kde和第二kde之间进行认证的会话密钥;第一kde接收第二kde发送的第二kde的标识信息和kdc的标识信息,根据第一实体秘钥、第二kde的标识信息和kdc的标识信息,生成用于第一kde和第二kde之间进行认证的会话密钥。

5、本技术实施例中,控制设备内的服务组件中均部署有kde,不同控制设备中的两个服务组件之间可以通过服务组件内部署的kde进行认证和建立会话。在会话建立过程中,两个kde协商生成会话秘钥,并基于确定的会话秘钥进行认证,而无需通过数字证书进行认证,降低了管理复杂度;同时,也无需使用复杂的数字证书认证算法,可以提高认证效率,提高系统性能。

6、并且,由两个kde协商生成会话秘钥,而无需在两个kde建立会话时,由其中一个kde向kdc申请此次会话的会话秘钥,即无需kde在每次建立会话之前均访问kdc,从而可以大量减少kde与kdc的通信次数,减少kdc被访问的次数,避免因大量访问kdc造成阻塞带来的性能瓶颈,且可以降低kdc的数据处理压力,提高kdc的性能和可靠性。同时,可以避免由kdc保存所有会话的会话秘钥,导致kdc被入侵带来整个系统失去安全性的问题。

7、本技术实施例中,第一kde和第二kde在协商生成会话秘钥的过程中,所使用的第一kde的标识信息、第二kde的标识信息均是唯一的,因此协商生成的会话秘钥也具有唯一性,可以防止外部的恶意攻击,提高会话安全性。

8、在一种可能的实现方式中,第一控制设备中可以包括多个服务组件,每个服务组件中均部署有kde,第一kde可以是多个服务组件的kde中的任意一个,或者说,第一kde可以是第一控制设备的任意一个服务组件中的kde。第二控制设备中也可以包括多个服务组件,每个服务组件中均部署有kde,第二kde也可以是多个服务组件的kde中的任意一个,或者说,第二kde可以是第二控制设备的任意一个服务组件中的kde。第一控制设备和第二控制设备均为上述设备集群系统中的设备。

9、在一种可能的实现方式中,第一控制设备中还可以包括秘钥分发代理kda,kda用于保存第一控制设备内的各个服务组件中包括的kde的实体秘钥,其中包括第一实体秘钥;相对应地,第一kde还用于在生成第一实体秘钥之后,可以将第一实体秘钥保存在第一控制设备的kda中,并在每次启动时,从第一控制设备的kda中获取第一实体秘钥。

10、上述实施例中,第一控制设备中部署有kda,用于保存第一控制设备内的各个服务组件中包括的kde的实体秘钥。各个kde可以仅在首次启动或实体秘钥丢失时,才获取主kdc提供的秘钥生成信息,并生成实体秘钥,保存在kda中。在每次启动时,可以从kda中获取实体秘钥,而无需再从kdc获取秘钥生成信息,可以进一步降低kdc的数据处理压力。同时,kde无需每次启动时生成实体秘钥,也可以减少kde所占用的计算资源。另外,由kda保存第一控制设备内的各个kde的实体秘钥,避免了多个kde分别保存自身的实体秘钥,无法在每个kde中分别部署安全存储机制带来的秘钥安全存储难题,可以提高实体秘钥的安全性,减少秘钥泄漏的风险。

11、在一种可能的实现方式中,第一控制设备的kda还可以用于:接收第一kde发送的秘钥申请请求,并向kdc转发第一kde的秘钥申请请求;以及接收kdc发送的秘钥生成信息,并向第一kde转发该秘钥生成信息。

12、上述设备集群系统中,与kda部署在同一控制设备内的各个kde均可以通过该kda进行数据通信与kdc进行数据通信。由于一个控制设备内具有多个服务组件,每个服务组件中均部署有一个kde,多个服务组件中的kde通过一个kda与kdc连接,与kdc连接的kda的数量远小于kde的数量,因此可以减少所占用的kdc对外通信接口的数量,减轻kdc的对外通信压力。

13、在一种可能的实现方式中,kdc还可以用于:接收并保存设备集群系统中包含的各个kde的注册信息;以及在接收到第一kde的秘钥申请请求时,将秘钥申请请求中携带的秘钥申请信息与保存的第一kde的注册信息进行一致性验证,且在验证通过后为第一kde提供秘钥生成信息。

14、上述实施例中,kdc无论作为主kdc或备kdc时,均可以保存各个kde的注册信息,以备在作为主kdc时,对kde发送的秘钥申请请求中携带的秘钥申请信息进行验证,因此,在进行主备倒换时,无需各kdc之间进行数据同步,避免出现主备倒换时kdc之间数据同步的难题。

15、在一种可能的实现方式中,第一kde还可以用于:获取并保存所述kdc的标识信息和中心秘钥,在与第二kde协商生成会话秘钥时,第一kde可以根据kdc的标识信息,获取kdc的中心秘钥,并根据第一实体秘钥、第二kde的标识信息和kdc的中心秘钥生成会话秘钥。

16、示例性地,设备集群系统中可以部署多个kdc,不同的kdc部署于设备集群系统中的不同控制设备内;多个kdc中可以包括主kdc和备kdc。第一kde可以用于:获取并保存设备集群系统中包含的各个kdc的标识信息和中心秘钥。主kdc可以用于响应于第一kde的秘钥申请请求,为第一kde提供秘钥生成信息。例如,kda接收第一kde发送的秘钥申请请求后,可以向主kdc转发第一kde的秘钥申请请求;以及接收主kdc发送的秘钥生成信息,并向第一kde转发秘钥生成信息,第一kde根据主kdc提供的秘钥生成信息生成第一实体秘钥。在与第二kde协商生成会话秘钥时,第一kde可以根据主kdc的标识信息,获取主kdc的中心秘钥,并根据第一实体秘钥、第二kde的标识信息和主kdc的中心秘钥生成会话秘钥。

17、上述实施例中,每个kde中均保存有各个kdc的标识信息和中心秘钥,两个kde协商生成会话秘钥时,相互发送主kdc的标识信息,即协商确定主kdc,从而可以使第一kde和第二kde基于相同的主kdc的中心秘钥生成会话秘钥,避免由于使用的主kdc的中心秘钥不一致而导致的会话秘钥不一致的情况。并且,每个kde中存储有各个kdc的中心秘钥,两个kde以协商的方式确定共同使用的kdc,可以避免在kdc主备倒换时,数据不同步的问题,以解决主备倒换时如何实现两个kde秘钥同步的难题。

18、在一种可能的实现方式中,kdc还可以用于:接收管理节点发送的秘钥吊销指令,对秘钥吊销指令中携带的吊销列表进行签名并分发至kdc的备kdc;吊销列表中包括被泄漏的实体秘钥对应的kde的标识信息和/或被泄漏的中心秘钥对应的kdc的标识信息。

19、上述实施例中,通过秘钥吊销指令将泄漏的秘钥及时吊销,可以防止外部利用泄露的秘钥进行攻击,进一步提高系统的安全性。

20、示例性地,设备集群系统中的主kdc用于接收管理节点发送的秘钥吊销指令,对秘钥吊销指令中携带的吊销列表进行签名并分发至设备集群系统中的各个备kdc。

21、第二方面,本技术实施例提供一种会话秘钥生成方法,包括:

22、第一秘钥分发实体kde获取秘钥分发中心kdc为第一kde提供的秘钥生成信息,并根据秘钥生成信息生成第一实体秘钥;第一kde部署在设备集群系统中的第一控制设备的服务组件内;

23、在与第二kde建立会话的过程中,第一kde向第二kde发送第一kde的标识信息和kdc的标识信息;第二kde部署在设备集群系统中的第二控制设备的服务组件内;

24、第一kde接收第二kde发送的第二kde的标识信息和kdc的标识信息;

25、第一kde根据第一实体秘钥、第二kde的标识信息和kdc的标识信息,生成用于第一kde和第二kde之间进行认证的会话秘钥。

26、在一种可能的实现方式中,第一kde在生成第一实体秘钥之后,可以将第一实体秘钥保存至第一控制设备内部署的秘钥分发代理kda中,并在每次启动时,从kda中获取第一实体秘钥。

27、在一种可能的实现方式中,第一kde可以通过kda向kdc发送秘钥申请请求,并接收kda转发的从kdc获取的秘钥生成信息。

28、在一种可能的实现方式中,第一kde从kdc获取秘钥生成信息之前,第一kde还可以生成注册信息,并将第一kde的注册信息发送至kdc,以使kdc保存第一kde的注册信息。

29、在一种可能的实现方式中,第一kde的秘钥生成信息是kdc在接收到第一kde的秘钥申请请求时,将秘钥申请请求中携带有的秘钥申请信息与保存的第一kde的注册信息进行一致性验证,且在验证通过后为第一kde提供的。

30、在一种可能的实现方式中,第一kde从kdc获取秘钥生成信息之前,第一kde还可以接收并保存kdc的标识信息和中心秘钥。

31、在一种可能的实现方式中,第一kde可以根据kdc的标识信息,获取kdc的中心秘钥,并根据第一实体秘钥、第二kde的标识信息和kdc的中心秘钥生成会话秘钥。

32、第三方面,本技术实施例提供一种设备集群系统,该设备集群系统中包括多个控制设备;多个控制设备中包括第一方面提供的任一种控制设备。

33、第四方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质内存储有计算机可执行指令,该计算机可执行指令用于使计算机执行上述第二方面提供的任一种方法。

34、第五方面,本技术实施例提供一种计算机程序产品,包含有计算机可执行指令,该计算机可执行指令用于使计算机执行上述第二方面提供的任一种方法。

35、上述第二方面至第五方面中任一方面可以达到的技术效果可以参照上述第一方面中有益效果的描述,此处不再重复赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1