基于KMIP协议的密钥管理客户端服务端方法和系统及介质技术方案

技术编号:20224557 阅读:26 留言:0更新日期:2019-01-28 22:35
本发明专利技术提供了一种基于KMIP协议的密钥管理客户端服务端方法和系统及介质,包括Libvirt密钥分发模块、客户端、服务端、KMIP协议通信模块;Libvirt密钥分发模块驱动客户端连接到服务端,客户端访问服务端获取密钥,服务端管理密钥、分发密钥,KMIP协议通信模块基于KMIP协议实现客户端与服务端之间的通讯信息交换。实现密钥与被保护对象之间的分离存储,确保密钥和对象不被同时窃取;用高强度密钥生成算法,避免原生Libvirt使用简单的口令作为密钥;使用KMIP协议作为通信协议,实现对密钥生命周期的统一操作,有效解决开源Libvirt不能满足国家保密要求的密钥管理问题。

【技术实现步骤摘要】
基于KMIP协议的密钥管理客户端服务端方法和系统及介质
本专利技术涉及数据中心的数据安全领域,具体地,涉及一种基于KMIP协议的密钥管理客户端、服务端方法和系统及介质。
技术介绍
Libvirt是用于管理虚拟化平台的开源的API,后台程序和管理工具。它可以用于管理KVM、Xen、VMwareESX,QEMU和其他虚拟化技术。这些API在云计算的解决方案中广泛使用。开源的Libvirt实现提供了一个简单的虚拟机密钥管理机制。这套机制使用宿主系统提供的开源的加解密算法对用户输入的口令进行计算,然后生成密钥;并以文本方式保存在本地。这种机制造成密钥的强度不高且密钥的安全性低,不满足国家的保密要求。KMIP(KeyManagementInteroperabilityProtocol)是一种通信协议,该协议定义了在秘钥管理服务器上操作加密秘钥的消息格式。秘钥可能在服务器上被创建、和检索,可能被其他秘钥封装,KMIP定义了用于在服务器上执行加密、解密操作的消息格式。通过KIMP通讯协议对Libvirt产生的虚拟机密钥进行二次封装,形成强度高且安全性高的密钥研究具有很大现实意义。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种基于KMIP协议的密钥管理客户端服务端方法和系统及介质。根据本专利技术提供的一种基于KMIP协议的密钥管理客户端方法,包括:与服务端建立连接步骤:接收由QEMU创建的镜像标识,接收由Libvirt发送的密钥请求,通过终端证书、配置服务端IP地址和端口,与服务端建立连接;向服务端发起密钥协商请求步骤:接收到服务端发送对的身份认证成功消息之后,向服务端发起密钥协商请求;接收服务端保护密钥步骤:接收服务端生成的会话秘钥、第二保护密钥;向服务端发送镜像标识步骤:使用会话秘钥解密第二保护密钥,获得第一保护密钥,使用会话秘钥加密第一镜像标识,获得第二镜像标识,向服务端发送第二镜像标识;接收服务端密钥步骤:接收服务端发送的镜像加密密钥,将所述镜像加密密钥发送给Libvirt进行密钥分发。根据本专利技术提供的一种基于KMIP协议的密钥管理服务端方法,包括:验证客户端身份步骤:对客户端发起的连接请求,进行身份验证,将身份验证结果发送给客户端;密钥协商步骤:接收客户端发起的密钥协商请求,对密钥协商生成会话密钥,将密钥协商结果发送给客户端;保护密钥检索步骤:在服务端数据库中进行检索客户端的保护密钥,获得第一保护密钥,使用会话密钥对第一保护密钥进行加密,获得第二保护密钥,将第二保护密钥发送给客户端;检索镜像标识步骤:接收客户端发送的第二镜像标识,使用会话密钥对第二镜像标识进行解密,获得第一镜像标识,在数据库中检索第一镜像标识,并检索与第一镜像标识对应的镜像密钥,获得第一镜像加密密钥,将所述第一镜像加密密钥发送给客户端。优选地,所述身份验证结果为验证通过或验证不通过,当所述身份验证结果为验证通过时,将身份验证成功消息发送给客户端,当所述身份验证结果为验证不通过时,将身份验证结果记录到系统日志文件,终止连接;优选地,所述密钥协商结果为协商成功或协商不成功,当所述密钥协商结果为协商成功时,将密钥协商成功消息发送给客户端,当所述密钥协商结果为协商不成功时,将密钥协商结果记录到系统日志文件,终止连接。优选地,所述保护密钥检索步骤中,当未获得第一保护密钥时,终止连接,销毁会话密钥,将检索结果记录到系统日志文件。优选地,所述检索镜像标识步骤中,当未检索到第一镜像标识时,判定客户端请求是否为启动过程,当客户端请求为启动过程时,则发送启动过程无需镜像密钥消息给客户端;当客户端请求不是启动过程时,则生成第二镜像加密密钥,保存第一镜像标识与第二镜像加密密钥的对应关系,将所述镜像加密密钥发送给客户端。优选地,所述检索镜像标识步骤中,当未检索到第一镜像加密密钥时,判定客户端请求是否为启动过程,当客户端请求为启动过程时,则发送启动过程无需镜像密钥消息给客户端;当客户端请求不是启动过程时,则生成第二镜像加密密钥,更新第一镜像标识与第二镜像加密密钥的对应关系,将所述镜像加密密钥发送给客户端;优选地,基于KMIP协议的密钥管理服务端方法还包括镜像加密密钥生成步骤:生成新的密钥,记为第一密钥;使用保护密钥加密第一密钥,将加密后的密钥记为第二密钥;使用会话密钥加密第二密钥,将加密后的密钥记为第三密钥;保存第三密钥与第一镜像标识的对应关系,将第三密钥作为新生成的镜像加密密钥;根据本专利技术提供的一种基于KMIP协议的密钥管理系统,包括Libvirt密钥分发模块、客户端、服务端、KMIP协议通信模块;Libvirt密钥分发模块驱动客户端连接到服务端;客户端访问服务端获取密钥;服务端管理密钥、分发密钥;KMIP协议通信模块基于KMIP协议实现客户端与服务端之间的通讯信息交换。根据本专利技术提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现以上任一项所述的方法的步骤。与现有技术相比,本专利技术具有如下的有益效果:1、实现密钥与被保护对象之间的分离存储,确保密钥和对象不被同时窃取;2、使用高强度密钥生成算法,避免原生Libvirt使用简单的口令作为密钥;3、使用KMIP协议作为通信协议,实现对密钥生命周期的统一操作。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1为基于KMIP协议的密钥管理系统的原理框架图;图2为基于KMIP协议的密钥管理系统的业务流程图。具体实施方式下面结合具体实施例对本专利技术进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本专利技术,但不以任何形式限制本专利技术。应当指出的是,对本领域的普通技术人员来说,在不脱离本专利技术构思的前提下,还可以做出若干变化和改进。这些都属于本专利技术的保护范围。针对目前开源Libvirt不能满足国家保密要求的密钥管理部分,基于KMIP协议对密钥管理模块的功能进行必要的重新开发和实现。本专利技术使用具备国家保密资质的硬件加密算法产生高强度的密钥;使用保护密钥对产生密钥进行保护存放;对密钥与被保护对象进行隔离,并单独存放,以避免两者同时被泄漏。如图1所示,本专利技术公开了一种基于KMIP协议的密钥管理系统,包括Libvirt密钥分发模块、客户端、服务端、KMIP协议通信模块;Libvirt密钥分发模块驱动客户端连接到服务端,Libvirt密钥分发模块是一个驱动程序,是Libvirt的一个组成部分,使用KMIP协议与客户端交互;客户端访问服务端获取密钥;服务端管理密钥、分发密钥,服务端主要包括密钥管理、虚拟机管理、密钥与虚拟机对管理,服务端基于KMIP协议实现对密钥的全生命周期进行管理以及密钥的分发;KMIP协议通信模块基于KMIP协议实现客户端与服务端之间的通讯信息交换,提供一套处理KMIP协议的共享库,客户端和服务端使用它来完成彼此之间的信息交换。所述系统中的客户端是通过基于KMIP协议的密钥管理客户端方法实现,所述方法包括:与服务端建立连接步骤:接收由QEMU创建的镜像标识,接收由Libvirt发送的密钥请求,通过终端证书、配置服务端IP地址和端口,与服务端建立连接;向服务端发起密钥协商请求步骤:接收到服务端发送对的身份认证成功消息之后,向本文档来自技高网...

【技术保护点】
1.一种基于KMIP协议的密钥管理客户端方法,其特征在于,包括:与服务端建立连接步骤:接收由QEMU创建的镜像标识,接收由Libvirt发送的密钥请求,通过终端证书、配置服务端IP地址和端口,与服务端建立连接;向服务端发起密钥协商请求步骤:接收到服务端发送对的身份认证成功消息之后,向服务端发起密钥协商请求;接收服务端保护密钥步骤:接收服务端生成的会话秘钥、第二保护密钥;向服务端发送镜像标识步骤:使用会话秘钥解密第二保护密钥,获得第一保护密钥,使用会话秘钥加密第一镜像标识,获得第二镜像标识,向服务端发送第二镜像标识;接收服务端密钥步骤:接收服务端发送的镜像加密密钥,将所述镜像加密密钥发送给Libvirt进行密钥分发。

【技术特征摘要】
1.一种基于KMIP协议的密钥管理客户端方法,其特征在于,包括:与服务端建立连接步骤:接收由QEMU创建的镜像标识,接收由Libvirt发送的密钥请求,通过终端证书、配置服务端IP地址和端口,与服务端建立连接;向服务端发起密钥协商请求步骤:接收到服务端发送对的身份认证成功消息之后,向服务端发起密钥协商请求;接收服务端保护密钥步骤:接收服务端生成的会话秘钥、第二保护密钥;向服务端发送镜像标识步骤:使用会话秘钥解密第二保护密钥,获得第一保护密钥,使用会话秘钥加密第一镜像标识,获得第二镜像标识,向服务端发送第二镜像标识;接收服务端密钥步骤:接收服务端发送的镜像加密密钥,将所述镜像加密密钥发送给Libvirt进行密钥分发。2.一种基于KMIP协议的密钥管理服务端方法,其特征在于,包括:验证客户端身份步骤:对客户端发起的连接请求,进行身份验证,将身份验证结果发送给客户端;密钥协商步骤:接收客户端发起的密钥协商请求,对密钥协商生成会话密钥,将密钥协商结果发送给客户端;保护密钥检索步骤:在服务端数据库中进行检索客户端的保护密钥,获得第一保护密钥,使用会话密钥对第一保护密钥进行加密,获得第二保护密钥,将第二保护密钥发送给客户端;检索镜像标识步骤:接收客户端发送的第二镜像标识,使用会话密钥对第二镜像标识进行解密,获得第一镜像标识,在数据库中检索第一镜像标识,并检索与第一镜像标识对应的镜像密钥,获得第一镜像加密密钥,将所述第一镜像加密密钥发送给客户端。3.根据权利要求2所述的基于KMIP协议的密钥管理服务端方法,其特征在于,所述身份验证结果为验证通过或验证不通过,当所述身份验证结果为验证通过时,将身份验证成功消息发送给客户端,当所述身份验证结果为验证不通过时,将身份验证结果记录到系统日志文件,终止连接。4.根据权利要求2所述的基于KMIP协议的密钥管理服务端方法,其特征在于,所述密钥协商结果为协商成功或协商不成功,当所述密钥协商结果为协商成功时,将密钥协商成功消息发送给客户端,当所述...

【专利技术属性】
技术研发人员:刘光前余秦勇
申请(专利权)人:华东计算技术研究所中国电子科技集团公司第三十二研究所
类型:发明
国别省市:上海,31

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

1