虚拟环境下的加密解密方法和物理服务器的制造方法_2

文档序号:8945553阅读:来源:国知局
物理服务器上,在同一物理服务器上可以运行多台虚拟机。客户端运行在终端上。在其中一个实施例中,在通过虚拟机接收客户端的加密或解密请求的步骤之前,还包括:分别在客户端与虚拟机之间建立连接以及代理与加密解密装置之间建立连接;在虚拟环境中运行代理。具体的,在虚拟环境中分别在客户端与虚拟机之间建立SSL连接,代理与加密解密装置之间建立SSL连接,并在虚拟环境中运行代理。客户端通过SSL连接将加密或解密请求发送至虚拟机。加密或解密请求包括非对称加密或解密请求,加密或解密请求中携带了待操作数据。待操作数据包括待加密数据和待解密数据。具体的,加密请求中携带了待加密数据,解密请求中携带了待解密数据。
[0036]步骤204,通过虚拟机将所非对称加密或解密请求发送至代理。
[0037]代理是指运行在物理服务器上的一个程序,例如网关代理等。在其中一个实施例中,在虚拟环境中运行所述代理的步骤包括:在Hypervisor中运行代理;或在虚拟机的操作系统中运行代理;或在SSL卸载应用中运行代理。
[0038]代理可以运行在Hypervisor中,此时该代理会对虚拟机模拟一个真实的硬件加密解密设备,同时该代理会要求虚拟机中加载该模拟的硬件加密解密设备的驱动程序。具体的,Hypervisor可以对虚拟机虚拟出基本的l/0(input/output,输入输出端口)设备,代理通过调用Hypervisor提供的I/O设备的接口即可对虚拟机模拟出一个真实的硬件加密解密设备。虚拟机发现该模拟的硬件加密解密设备后,会自动加载相应的驱动程序。通过模拟的硬件加密解密设备与加密解密装置协作完成加密解密操作。代理可以运行在虚拟机的操作系统中,此时该代理对虚拟机上的SSL卸载应用模拟加密解密卡,通过该模拟的加密解密卡与加密解密装置协作完成加密解密操作。代理对虚拟机模拟一个真实的硬件加密解密设备或者模拟加密解密卡时,虚拟机无需任何修改。代理还可以直接运行在SSL卸载应用中,由SSL卸载应用的SSL协议栈与加密解密装置协作完成加密解密操作。
[0039]步骤206,通过代理将非对称加密或解密请求发送至加密解密装置,以使得加密解密装置对待操作数据进行操作得到操作结果。
[0040]代理通过加密的通信链接(即安全通道)与加密解密装置进行通信,使得加密解密装置进行加密解密操作。加密解密装置可以是物理服务器(可以包括加密解密密卡,也可以不包括加密解密密卡),也可以是专用的硬件设备,也可以是虚拟环境中运行在某个Hypervisor上的虚拟机。当加密解密装置是物理服务器或专用的硬件设备时,代理通过TCP (Transmiss1n Control Protocol,传输控制协议)连接等方式与加密解密装置进行通信。加密解密装置的主要职责是完成非对称加密解密操作,并得到操作结果。具体的,加密解密装置根据非对称加密请求对待操作加密数据进行非对称加密得到非对称加密数据。加密解密装置根据非对称解密请求对待操作解密数据进行解密得到非对称解密数据。
[0041]步骤208,通过虚拟机接收加密解密装置返回的操作结果,并根据操作结果得到已加密或已解密数据。
[0042]加密解密装置通过安全通道将操作结果返回至虚拟机。虚拟机对加密解密装置进行身份认证,并根据SSL协议对操作结果完成非对称密钥的协商操作。具体的,虚拟机对加密解密装置进行身份认证后,根据SSL协议对非对称加密数据进行协商操作得到已加密数据。或者虚拟机对加密解密装置进行身份认证后,根据SSL协议对非对称解密数据进行协商操作得到已解密数据。
[0043]步骤210,通过虚拟机根据非对称加密请求将已加密数据返回至客户端或者通过虚拟机根据非对称解密请求对已解密数据进行处理。
[0044]对于客户端发送非对称加密请求的情形,虚拟机根据非对称加密请求会将已加密数据返回至客户端。对于客户端发送非对称解密请求的情形,虚拟机根据非对称解密请求对已解密数据留作己用进行相应的数据处理。
[0045]本实施例中,通过虚拟机接收客户端的加密或解密请求,加密或解密请求包括非对称加密或解密请求,加密或解密请求中携带了待操作数据;通过虚拟机将所非对称加密或解密请求发送代理;通过代理将非对称加密或解密请求发送至加密解密装置,以使得加密解密装置对待操作数据进行操作得到操作结果;通过虚拟机接收加密解密装置返回的操作结果,并根据操作结果得到已加密或已解密数据;通过虚拟机根据非对称加密请求将已加密数据返回至客户端或者通过虚拟机根据非对称解密请求对已解密数据进行处理。由于非对称加密解密运算会消耗大量的物理服务器资源,通过代理来接收非对称加密解密请求,并将非对称加密解密请求发送至加密解密装置进行操作得到操作结果。因此,在SSL卸载应用往虚拟机迀移时,不需要修改SSL卸载应用的配置,也不需要在物理服务器上增加额外的加密解密卡,从而既能有效提升虚拟机加密解密的操作性能又能有效控制成本。
[0046]在一个实施例中,加密或解密请求还包括对称加密或解密请求,通过虚拟机接收客户端的加密或解密请求的步骤之后还包括:根据对称加密或解密请求通过虚拟机的本地处理器对待操作数据进行操作,得到已加密或已解密数据;通过虚拟机根据对称加密请求将将已加密数据返回至客户端或者利用虚拟机根据对称解密请教对已解密数据进行处理。
[0047]本实施例中,客户端还可以向虚拟机发送对称加密或解密请求。由于对称加密解密运算相对比较简单,耗费的物理服务器资源较少。因此可通过物理服务器的本地处理器来执行加密解密操作,得到已加密数据或者已解密数据。对于客户端发送对称加密请求的情形,虚拟机根据对称加密请求会将已加密数据返回至客户端。对于客户端发送对称解密请求的情形,虚拟机根据对称解密请求对已解密数据留作己用进行相应的数据处理。
[0048]本实施例中,对于非对称加密或解密请求,通过代理进行接收并发送至加密解密装置进行非对称加密解密操作得到操作结果。虚拟机在接收到加密解密装置返回的操作结果后,进行协商操作得到已加密数据或已解密数据。对于对称加密或解密请求,通过本地处理器进行对称加密解密操作,得到已加密数据或已解密数据。因此,在SSL卸载应用往虚拟机迀移时,不论虚拟机接收到的是非对称加密或解密请求还是对称加密或解密请求,都不需要修改SSL卸载应用的配置,也不需要在物理服务器上增加额外的加密解密卡,从而既能有效提升虚拟机加密解密的操作性能又能有效控制成本。
[0049]在一个实施例中,在通过代理将非对称加密或解密请求发送至加密解密装置的步骤之后,还包括:通过代理检测加密解密装置是否发生故障;若是,则通过代理选择其他正常的加密解密装置继续进行工作。
[0050]在解决加密解密操作导致巨大成本的问题上,目前可以通过采用专用硬件设备(TCP代理设备)来进行加密解密操作。在云计算和大型数据中心中,所有与加密解密相关的应用程序的连接和流程都要通过TCP代理设备处理。该TCP代理设备容易成为提高加密解密性能的瓶颈。所有的应用程序的流量都要经过该该TCP代理设备,容易导致单点故障,并且限制了网络部署方式。该TCP代理设备大量的计算资源并不是消耗在加密解密操作上,而是消耗在维持连接和流量的收发上,使得加密解密性能未能得到充分发挥。
[0051]本实施例中,在代理与加密解密装置进行通信的过程中,对加密解密装置实时执行健康检查。健康检查包括PING (Packet Internet Groper,因特网包探索器),TCP连接等。通过执行健康检查来检测加密解密装置能正常工作。如果检测到加密解密装置健康状况异常,也就是检测到加密解密装置发生故障,则代理选择其他正常的(即健康的)加密解密装置来继续进行工作。如果当前存在多个正常的加密解密装置,代理可以随机选择其中一个正常的加密解密装置继续进行工作。由此在虚拟机接收到非对称加密或解密请求时,在有效提高虚拟机加密解密操作性能的同时还能够有效避免单点故障,充分发挥加密解密装置的性能。在虚拟机接收到对称加密或解密操作时,可以由本地处理器完成对称加密或解密操作,进而能够有效避免单点故障。
[0052]进一步的,如果原来是采用SSL卸载应用直接来完成加密解密操作,在采用TCP代理设备后,需要修改SSL卸载应用的配置以及TCP代理设备的配置,从而将加密解密操作迀移到TCP代理设备上来。由此会增加用户使用和维护的复杂性。本实施例中,只需在虚拟环境中运行代理,利用代理来接收非对称加密或解密请求,并将非对称加密或解密请求发送至加密解密装置进行加密解密操作,或者利用虚拟机的本地处理器根据对称加密或解密请求进行加密解密操作。无需更改SSL卸载应用和虚拟机的配置,即可实现加密解密操作。因此,在有效提高虚拟机加密解密操作性能避免单点故障的同时还能够有效降低用户操作和维护的复杂性。<
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1