一种可信平台模块TPM部署方法、装置及系统与流程

文档序号:12916068阅读:396来源:国知局
一种可信平台模块TPM部署方法、装置及系统与流程

本发明实施例涉及通信技术领域,尤其涉及一种可信平台模块(trustedplatformmodule,简称tpm)部署方法、装置及系统。



背景技术:

分布式系统是由多个互连的,具有独立的数据处理能力的处理单元,组成的网络系统,这些处理单元在地理上可以是相邻的也可以是分散的,以全局方式管理各处理单元中的资源,并动态分配任务,控制各处理单元协同工作,可以增强网络系统的可扩展性、稳定性以及执行效率。

为了保证分布式系统的安全性,现有技术通过在分布式系统中的每个处理单元上分别部署tpm安全芯片,即硬件tpm,以通过硬件tpm所具有的密钥、计算能力等资源,来保证每个处理单元的安全性。其中,在分布式系统中,一些老的处理单元无法再部署硬件tpm,未部署硬件tpm的处理单元难以通过硬件tpm的资源进行安全保护,因而降低了安全性。若分布式系统中每个处理单元中内置一个硬件tpm,将大大提高硬件成本,且各处理单元中硬件tpm的资源相互隔离,容易造成硬件tpm的资源利用不均衡。换言之,一些硬件tpm的资源不能合理、充分地利用,出现闲置或浪费的情况;而其他一些硬件tpm出现过载等情况。



技术实现要素:

本发明实施例提供一种可信平台模块tpm部署方法、装置及系统,能够解决现有技术中,当分布式系统中的所有处理单元未全部部署硬件tpm时,由于其中未部署硬件tpm的处理单元难以使用硬件tpm的资源进行安全保护,从而导致其安全性低的问题。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,提供一种tpm部署方法,应用于分布式系统,该分布式系统包括n个主处理单元和第一子处理单元,每个主处理单元中包括硬件tpm,其中,n为大于或者等于1的整数,n个主处理单元中包括第一主处理单元,该方法包括:第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识,并向第一主处理单元发送硬件tpm资源获取消息,硬件tpm资源获取消息中包括资源引用标识,以根据资源引用标识获取第一主处理单元的硬件tpm的资源,其中,硬件tpm的资源包括硬件tpm具有的密钥以及硬件tpm的计算能力,硬件tpm的计算能力包括加密和解密;第一主处理单元接收第一子处理单元发送的硬件tpm资源获取消息,并根据硬件tpm资源获取消息向第一子处理单元提供硬件tpm的资源;第一子处理单元利用第一主处理单元的硬件tpm的资源,执行可信功能。

这样,分布式系统中未部署硬件tpm的第一子处理单元,通过获取并利用第一主处理单元的硬件tpm的资源执行可信功能,从而可以提高自身的安全性。

当分布式系统中包括多个子处理单元和多个主处理单元时,每个子处理单元均可以像第一子处理单元那样,通过向分布式系统中的一个主处理单元获取硬件tpm的资源,并利用获取到的硬件tpm的资源执行可信功能,从而提高自身的安全性,进而提高整个分布式系统的安全性。

结合第一方面,在第一方面的第一种可能的实现方式中,n大于或者等于2。

当分布式系统中包括多个主处理单元和多个子处理单元时,分布式系统中也包括多个硬件tpm,从而可以通过多个硬件tpm为分布式系统中的所有子处理单元提供硬件tpm的资源,因而,从整体上来说,可以避免分布式系统由于只具有单个主处理单元和单个硬件tpm的计算能力不足导致的性能瓶颈。

结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,在第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识之前,该方法还包括:第一子处理单元向n个主处理单元分别发送负载参数请求消息;n个主处理单元分别向第一子处理单元返回负载 参数;第一子处理单元接收n个主处理单元返回的负载参数,并根据n个主处理单元返回的负载参数确定所有n个主处理单元中负载最低的主处理单元为第一主处理单元。

结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,在第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识之前,该方法还包括:第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;n个主处理单元中的m个主处理单元分别向第一子处理单元发送关联响应消息,m为小于或者等于n的正整数,每个关联响应消息中包括负载参数;第一子处理单元接收m个主处理单元分别发送的关联响应消息,并根据m个主处理单元返回的负载参数,确定m个主处理单元中负载最低的主处理单元为第一主处理单元。

这样,当分布式系统中包括多个主处理单元和多个子处理单元时,每个子处理单元均可以像第一子处理单元那样,根据负载参数确定当前分布式系统中负载最低的主处理单元,从而向当前负载最低的主处理单元获取硬件tpm的资源,因而可以实现多个主处理单元中硬件tpm的负载均衡,合理、充分地利用每个主处理单元的硬件tpm的资源,避免某一主处理单元及其硬件tpm过载,而其它主处理单元及其硬件tpm负载较低或闲置。

结合第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,在第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识之前,该方法还包括:第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;n个主处理单元中的m个主处理单元分别接收第一子处理单元发送的关联指示消息;n个主处理单元中的m个主处理单元分别向第一子处理单元返回关联响应消息,m为小于或者等于n的正整数;第一子处理单元确定最先返回关联响应消息的主处理单元为第一主处理单元。

这样,第一子处理单元可以在接收到第一个关联响应消息后,即可以确定发送该关联响应消息的主处理单元为第一主处理单元,从而获取并利用该主处理单元的硬件tpm的资源,因而可以尽快确定第一主处理单元, 提高处理效率。

结合第一方面的第一种可能的实现方式,在第一方面的第五种可能的实现方式中,在第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识之前,该方法还包括:第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;n个主处理单元分别接收第一子处理单元发送的关联指示消息,n个主处理单元中的m个主处理单元分别向第一子处理单元发送关联响应消息,m为小于或者等于n的正整数,每个关联响应消息中包括负载参数;第一子处理单元接收m个主处理单元分别发送的关联响应消息,并根据m个主处理单元发送的关联响应消息中的负载参数,确定负载低于预设阈值的一个主处理单元为第一主处理单元。

这样,第一子处理单元可以确定负载参数低于预设阈值的主处理单元中的任意一个主处理单元为第一主处理单元,从而可以向第一主处理单元获取硬件tpm的资源。当分布式系统中包括多个主处理单元时,该方式可以通过分布式系统中当前负载低于预设阈值的主处理单元,为子处理单元提供硬件tpm的资源,从而可以使得分布式系统中多个主处理单元的负载较为均衡。

结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,第一主处理单元为根据m个主处理单元发送的关联响应消息中的负载参数,确定的负载低于预设阈值的主处理单元中,第一子处理单元最先接收到关联响应消息的主处理单元。

这样,第一子处理单元可以在首次接收到负载低于预设阈值的主处理单元发送的关联响应消息后,即可确定该主处理单元为第一主处理单元,从而可以向该主处理单元获取硬件tpm的资源。当分布式系统中包括多个主处理单元时,该方式可以在保持主处理单元的负载较为均衡的同时,尽快确定为子处理单元提供硬件tpm的资源的主处理单元。

结合第一方面的第一种可能的实现方式,在第一方面的第七种可能的实现方式中,在第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识之前,第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;第一子处理单元仅接收到一个主处理单元 发送的关联响应消息,并确定该主处理单元即为第一主处理单元。

结合第一方面的第三至第七种可能的实现方式中的任意一种,在第一方面的第八种可能的实现方式中,关联响应消息中包括主处理单元的硬件tpm的资源引用标识,第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识包括:第一子处理单元从第一主处理单元发送的关联响应消息中,获取第一主处理单元的硬件tpm的资源引用标识。

结合第一方面至第一方面的第七种可能的实现方式中的任意一种,在第一方面的第九种可能的实现方式中,第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识包括:第一子处理单元向第一主处理单元发送资源引用标识请求消息;第一子处理单元接收第一主处理单元发送的资源引用标识响应消息,资源引用标识响应消息中包括第一主处理单元的硬件tpm的资源引用标识,并从资源引用标识响应消息中获取资源引用标识。

结合第一方面至第一方面的第七种可能的实现方式中的任意一种,在第一方面的第十种可能的实现方式中,第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识包括:第一子处理单元接收第一主处理单元发送的资源引用标识指示消息,资源引用标识指示消息中包括第一主处理单元的硬件tpm的资源引用标识,并从资源引用标识指示消息中获取该资源引用标识。

结合第一方面的第一种可能的实现方式,在第一方面的第十一种可能的实现方式中,第一子处理单元与第一主处理单元存在预设的映射关系,第一子处理单元的存储器中保存有第一主处理单元的硬件tpm的资源引用标识,第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识包括:第一子处理单元从存储器中获取第一主处理单元的硬件tpm的资源引用标识。

结合第一方面,在第一方面的第十二种可能的实现方式中,分布式系统中仅包括一个主处理单元,换言之,n为1,该主处理单元为第一主处理单元。

结合第一方面及第一方面的任一种可能的实现方式,在第一方面的第十三种可能的实现方式中,资源引用标识为句柄。

结合第一方面及第一方面的任一种可能的实现方式,在第一方面的第十四种可能的实现方式中,可信功能包括完整性度量,该方法还包括:第一主处理单元生成度量日志,获取所有处理单元的存储参数,处理单元包括主处理单元和子处理单元,存储参数用于描述处理单元的空间存储状态,并根据存储参数,将度量日志存储在至少一个处理单元中。

这样,当分布式系统中包括多个主处理单元和多个子处理单元时,分布式系统中的每个主处理单元均可以向第一主处理单元那样,在为子处理单元提供硬件tpm的资源,以使得子处理单元进行完成性度量时,根据分布式系统中各主处理单元和各子处理单元的空闲存储空间情况,对信息量较大的度量日志进行分布式存储,能够解决某些处理单元存储空间有限的问题,从而充分利用分布式系统的存储资源。

结合第一方面及第一方面的任一种可能的实现方式,在第一方面的第十五种可能的实现方式中,在上述方法之前还包括:

第一主处理单元利用硬件tpm对第一主处理单元和各子处理单元进行可信验证。

结合第一方面的第十五种可能的实现方式,在第一方面的第十六种可能的实现方式中,进行可信验证包括:

对基本输入输出系统bios文件或内置的完整性度量核心根crtm进行完整性度量。

第二方面,提供一种第一子处理单元,应用于分布式系统,分布式系统包括n个主处理单元和第一子处理单元,每个主处理单元中包括硬件tpm,其中,n为大于或者等于1的整数,n个主处理单元中包括第一主处理单元,所述第一子处理单元可以通过硬件实现,也可以通过硬件执行相应的软件实现,所述硬件或软件可以包括一个或多个与上述功能相对应的模块。

第二方面的一种可能的实现中,所述第一子处理单元包括:获取单元,用于获取第一主处理单元的硬件tpm的资源引用标识;发送单元,用于向第一主处理单元发送硬件tpm资源获取消息,硬件tpm资源获取消息中包括资源引用标识,以根据资源引用标识获取第一主处理单元的硬件tpm的资源,其中,硬件tpm的资源包括硬件tpm具有的密钥以及硬 件tpm的计算能力,硬件tpm的计算能力包括加密和解密;执行单元,用于利用第一主处理单元的硬件tpm的资源,执行可信功能。

第二方面的另一种可能的实现中,所述第一子处理单元包括:处理器和存储器;所述第一子处理单元还包括通信接口;所述处理器,所述存储器和所述通信接口通过总线相互连接;所述处理器可以执行上述第一方面或其可能的实现方式,使得所述第一子处理单元实现上述tpm部署方法。

第三方面,提供一种第一主处理单元,分布式系统包括n个主处理单元和第一子处理单元,每个主处理单元中包括硬件tpm,其中,n为大于或者等于1的整数,n个主处理单元中包括第一主处理单元,所述第一子处理单元可以通过硬件实现,也可以通过硬件执行相应的软件实现,所述硬件或软件可以包括一个或多个与上述功能相对应的模块。

第三方面的一种可能实现中,所述第一主处理单元包括:接收单元,用于接收第一子处理单元发送的硬件tpm资源获取消息,硬件tpm资源获取消息中包括第一主处理单元的硬件tpm的资源引用标识,其中,硬件tpm的资源包括硬件tpm具有的密钥以及硬件tpm的计算能力,硬件tpm的计算能力包括加密和解密;执行单元,用于根据硬件tpm资源获取消息向第一子处理单元提供硬件tpm的资源,以使得第一子处理单元利用硬件tpm的资源执行可信功能。

第三方面的另一种可能实现中,所述第一主处理单元包括:处理器和存储器;所述第一主处理单元还包括通信接口;所述处理器,所述存储器和所述通信接口通过总线相互连接;所述处理器可以执行上述第一方面或其可能的实现方式,使得所述第一主处理单元实现上述tpm部署方法。

第四方面,提供一种分布式系统,包括上述任一种可能的实现方式所描述的第一子处理单元和上述任一种可能的实现方式所描述的第一主处理单元。

结合第四方面,在第四方面的第一种可能的实现方式中,分布式系统中还包括其它子处理单元和其它主处理单元。

为了便于理解,示例的给出了部分与本发明相关概念的说明以供参 考。如下所示:

tpm安全芯片:符合可信赖平台模块tpm标准的安全芯片,它能有效地保护pc、防止非法用户访问,是一种包含密码运算和存储部件的小型芯片系统,通常由中央处理器(centralprocessingunit,简称cpu)、存储器、输入/输出(input/output,简称i/o)接口、密码运算器、随机数产生器和嵌入式操作系统等部件组成。

可信功能:可信计算中可实现的完整性度量、安全加密存储、安全身份认证、内部资源授权访问和安全加密传输等功能。

硬件tpm的计算能力:硬件tpm执行可信功能所需要的能力,例如加密和解密。

资源引用标识,用于标识主处理单元中硬件tpm的资源,根据资源引用标识可以访问、获取或引用主处理单元中硬件tpm的资源。

句柄:即一个4字节长的数值,可以用于标识应用程序中的不同对象和同类中的不同实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等,应用程序能够通过句柄访问相应的对象的信息。

背书密钥(endorsementkey,简称ek):与tpm唯一对应,用于表明tpm属主身份。

存储根密钥(storagerootkey,简称srk):存储在安全区域的一级密钥,可以用于对二级密钥信息加密生成二级密钥。依次类推,父节点加密保护子节点,构成整个分层密钥树结构。在密钥分层树中,叶子节点都是各种数据加密密钥和实现数据签名密钥。

存储密钥(storagekey,简称sk):用于提供数据和其它密钥的安全存储,其根密钥为srk。

证言身份密钥(attestationidentitykey,简称aik):对应一组公、私密钥对,对来源于tpm的数据进行签名,实现对运行环境测量信息进行签名,从而提供计算平台环境的证言。

处理单元:可以是分布式系统中的一台设备中具有独立处理能力的线卡,也可以是分布式系统中的一台设备,具有独立的数据处理能力。

主处理单元:分布式系统中内置有硬件tpm的处理单元。

子处理单元,分布式系统中未部署有硬件tpm,且利用主处理单元内置的硬件tpm的资源执行可信功能的处理单元。

附图说明

图1为本发明实施例提供的一种分布式系统结构示意图;

图2为本发明实施例提供的另一种分布式系统结构示意图;

图3为本发明实施例提供的另一种分布式系统结构示意图;

图4为本发明实施例提供的一种分布式系统的tpm部署方法流程图;

图5为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图6为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图7为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图8为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图9为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图10为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图11为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图12为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图13为本发明实施例提供的另一种分布式系统的tpm部署方法流程图;

图14为本发明实施例提供的一种第一子处理单元的结构示意图;

图15为本发明实施例提供的另一种第一子处理单元的结构示意图;

图16为本发明实施例提供的一种第一主处理单元的结构示意图;

图17为本发明实施例提供的另一种第一主处理单元的结构示意图;

图18为本发明实施例提供的另一种第一子处理单元的结构示意图;

图19为本发明实施例提供的另一种第一主处理单元的结构示意图;

图20为本发明实施例提供的一种分布式系统的结构示意图;

图21为本发明实施例提供的另一种分布式系统的结构示意图。

具体实施方式

本申请实施例中涉及的分布式系统主要可以包括以下两种情况:

(1)、单个物理设备本身为分布式结构,参见图1,该物理设备可以包括主控板和至少一个线卡。此外,该物理设备还可以包括至少一个备用主控板。主控板和备用主控板可以用于管理和控制线卡进行数据处理。

(2)、多个物理设备构成一个分布式系统,参见图2,该系统可以包括至少一个主控设备和至少一个被控设备,主控设备用于管理和控制被控设备。

本发明实施例中的分布式系统可以包括多个处理单元,每个处理单元可以具有独立的基本输入输出系统(basicinputoutputsystem,简称bios)文件和独立的操作系统,不同处理单元可以对应不同的物理环境,例如不同的操作系统,不同的物理硬件等。分布式系统中的处理单元具体可以包括至少一个主处理单元和至少一个子处理单元,其中,主处理单元中包括硬件tpm(即tpm安全芯片),子处理单元未部署硬件tpm。分布式系统中主处理单元和子处理单元的数量和分布情况,具体可以根据实际需要进行设定。

本发明实施例提供一种分布式系统的tpm部署方法,子处理单元可以通过共享主处理单元中部署的硬件tpm的资源进行可信计算、执行可信功能,从而提高了未部署硬件tpm的子处理单元的安全性。其中,硬件tpm的资源主要可以包括硬件tpm所具有的密钥以及硬件 tpm的计算能力。

在本发明实施例中,分布式系统中的tpm的部署情况可以参见图3。其中,主处理单元中的硬件tpm可以用于为该主处理单元和与该主处理单元对应的子处理单元提供硬件tpm的资源;主处理单元中的tpm管理模块用于对硬件tpm的功能进行管理。子处理单元中的tpm代理模块用于与主处理单元中的tpm管理模块进行信息交互,以通过使用主处理单元中硬件tpm的资源,执行可信功能。

示例性的,在图1所示分布式系统中,主控板和备用主控板可以管理和控制线卡,因而可以将主控板和备用主控板作为图3中的主处理单元,以便于主处理单元与图3中各子处理单元(线卡)进行交互,从而为各子处理单元提供硬件tpm的资源,提高各子处理单元的安全性。同样,在图2所示分布式系统中,主控设备可以管理和控制被控设备,因而可以将主控设备作为图3中的主处理单元,以便于主处理单元与图2中各子处理单元(被控设备)交互,从而为各子处理单元提供硬件tpm的资源,提高各子处理单元的安全性。

本发明以下实施例中的分布式系统可以参考图3所示架构,该系统具体可以包括主处理单元和子处理单元,每个主处理单元中内置有硬件tpm。其中,主处理单元可以有一个或多个,子处理单元也可以有一个或多个。

本发明以下实施例中所描述的方法是以图3所示系统中的第一子处理单元为例进行说明的,该系统中其它子处理单元的处理方法可以参照对第一子处理单元的描述。

本发明实施例提供一种应用于分布式系统的tpm部署方法,参见图4,该方法可以包括:

101、第一子处理单元获取第一主处理单元的硬件tpm的资源引用标识。

第一子处理单元可以获取第一主处理单元的硬件tpm的资源引用标识,以便于在获取该资源引用标识后,第一子处理单元可以利用该资源引用标识获取第一主处理单元中的硬件tpm的资源。

示例性的,这里的资源引用标识具体可以为第一主处理单元的硬件 tpm的资源的句柄。

102、第一子处理单元向第一主处理单元发送硬件tpm资源获取消息,硬件tpm资源获取消息中包括资源引用标识,以根据资源引用标识获取第一主处理单元的硬件tpm的资源。

其中,硬件tpm的资源可以包括硬件tpm具有的密钥以及硬件tpm的计算能力,硬件tpm的计算能力可以包括加密和解密。需要说明的是,这里对硬件tpm的资源和硬件tpm的计算能力包括的内容,仅是举例说明,还可以包括其它内容,本发明实施例不做具体限定。

第一子处理单元在获取到第一主处理单元的硬件tpm的资源引用标识后,可以将该资源引用标识携带于硬件tpm资源获取消息中,并通过tpm代理模块将硬件tpm资源获取消息发送给第一主处理单元,以便于根据该资源引用标识向第一主处理单元获取硬件tpm的资源。

103、第一主处理单元接收第一子处理单元发送的硬件tpm资源获取消息。

第一主处理单元可以通过tpm管理模块接收第一子处理单元发送的硬件tpm资源获取消息,该消息中包括第一主处理单元的硬件tpm的资源引用标识,该消息用于根据资源引用标识获取第一主处理单元的硬件tpm的资源。

104、第一主处理单元根据硬件tpm资源获取消息向第一子处理单元提供硬件tpm的资源。

在接收到第一子处理单元发送的硬件tpm资源获取消息后,第一主处理单元可以根据硬件tpm资源获取消息及其中包括的资源引用标识,向第一子处理单元提供硬件tpm的资源,以使得第一子处理单元可以利用第一主处理单元提供的硬件tpm的资源执行可信功能。

105、第一子处理单元利用第一主处理单元的硬件tpm的资源,执行可信功能。

第一子处理单元在根据资源引用标识获取到第一主处理单元的硬件tpm的资源后,可以利用硬件tpm的资源中的密钥,或利用硬件tpm的资源中的密钥生成的子密钥,进行加密或解密,从而可以执行的可信功能包括:完整性度量、安全加密存储、安全身份认证、内部资源授权 访问和安全加密传输等。

可选地,本发明实施例中的资源引用标识具体可以是与第一子处理单元相对应的资源引用标识,当分布式系统中包括多个子处理单元时,不同子处理单元对应的第一主处理单元的资源引用标识可以不同。具体的,第一主处理单元可以根据硬件tpm的资源生成与第一子处理单元对应的软件tpm参数,该软件tpm参数可以包括与第一子处理单元对应的背书密钥ek、身份证明密钥aik、存储密钥sk以及平台配置寄存器pcr等,并且该软件tpm参数可以与资源引用标识相对应。第一子处理单元可以利用资源引用标识获取到第一主处理单元为第一子处理单元生成的ek、aik、sk以及pcr等软件tpm参数,从而执行可信功能。

示例性的,这里将以第一子处理单元执行的可信功能为完整性度量为例进行说明。当第一子处理单元对某个应用程序进行完整性度量时,可以从该应用程序中抽取部分原始数据,并生成一个度量事件,与运算句柄一起,通过第一子处理单元的tpm代理模块远程发送给第一主处理单元的tpm管理模块,从而请求通过第一主处理单元硬件tpm计算哈希值,并根据该第一子处理单元对应的sk或sk生成的子密钥,将哈希值进行加密,并通过扩展方式将加密后的哈希值作为度量结果写入与该应用程序对应的第一子处理单元的pcr,该pcr是第一主处理单元生成的与第一子处理单元对应的pcr中的一个,该pcr具体可以是硬件pcr,也可以是虚拟的软件pcr。第一子处理单元可以通过tpm代理模块向第一主处理单元的tpm管理模块获取度量结果,从而完成该应用程序的可信度量。

结合上述步骤101-105可知,未部署硬件tpm的第一子处理单元可以通过获取并利用第一主处理单元提供的硬件tpm的资源,执行可信功能,从而提高第一子处理单元自身的安全性。

当分布式系统中包括多个子处理单元和多个主处理单元时,每个未部署硬件tpm的子处理单元均可以像第一子处理单元那样,通过向分布式系统中的一个已部署硬件tpm的主处理单元获取硬件tpm的资源,并利用获取到的硬件tpm的资源执行可信功能,从而提高自身的安全 性,进而提高整个分布式系统的安全性。

另外,对于分布式系统中部署有硬件tpm的主处理单元,可以根据自身具有的硬件tpm的资源执行可信功能,从而提高自身的安全性。

因此,在本发明实施例提供的一种分布式系统的tpm部署方法中,未部署硬件tpm的子处理单元,可以利用部署有硬件tpm的主处理单元的硬件tpm的资源执行可信功能,从而使得每个未部署硬件tpm的子处理单元,也可以通过硬件tpm提高自身的安全性,而主处理单元可以利用自身内置的硬件tpm的资源保证自身的安全性,从而可以提高整个分布式系统的安全性。并且,由于不用像现有技术那样需要在每个处理单元中均部署硬件tpm,因而可以节省硬件成本。

也就是说,本发明实施例提供的tpm部署方法,可以用于在分布式系统中部署tpm,使得分布式系统中未部署硬件tpm的处理单元能够使用已部署的硬件tpm的资源进行安全保护,从而提高分布式系统的安全性。

值得说明的是,在本发明实施例提供的分布式系统中,子处理单元对外呈现具有完整的tpm模块,可以独立执行可信功能,例如对外呈现可以独立执行完整性度量、安全加密存储、安全身份认证等可信功能。因而,从外部看,子处理单元好像也部署了硬件tpm;事实上,本发明实施例中的子处理单元并未实际部署硬件tpm,而是具有半虚拟化软件tpm,在执行可信功能时,子处理单元需要通过tpm代理模块,与主处理单元中的tpm管理模块进行通信,从而获取并利用主处理单元中硬件tpm的资源进行加、解密计算,以执行可信功能。

此外,在现有分布式系统中,一些老的处理单元由于软、硬件配置版本较低、功能较少等自身条件的限制,难以通过在本身部署一个硬件tpm来执行可信功能;而在本发明实施例中,未部署硬件tpm的子处理单元均可以通过共享主处理单元中的硬件tpm的资源执行可信功能,从而提高自身的安全性,而不论子处理单元是否为老的处理单元。

在本发明实施例中,分布式系统可以包括n个主处理单元,n为大于或者等于1的整数。并且,分布式系统中也可以包括一个或多个子处 理单元。

具体的,当n为1时,分布式系统中仅包括一个主处理单元,该主处理单元为第一主处理单元,第一子处理单元利用该主处理单元的硬件tpm的资源执行可信功能。在此种情况下,若分布式系统中包括多个子处理单元,则每个子处理单元均可以通过共享该主处理单元的硬件tpm的资源,执行可信功能。

当n大于或者等于2时,分布式系统中包括至少两个主处理单元,该至少两个主处理单元包括第一主处理单元,第一主处理单元是分布式系统的多个主处理单元中,与第一子处理单元对应的一个主处理单元。第一子处理单元利用与其对应的第一主处理单元的硬件tpm的资源执行可信功能。在此种情况下,若分布式系统中包括多个子处理单元,则每个子处理单元可以从多个主处理单元中选择一个主处理单元进行对应,从而利用与其对应的主处理单元的硬件tpm的资源执行可信功能。

需要说明的是,与分布式系统中仅包括一个主处理单元相比,当分布式系统中包括多个主处理单元时,从整体上来说,分布式系统可以通过多个主处理单元向子处理单元提供硬件tpm的资源,从而可以避免分布式系统由于仅具有单个主处理单元和单个硬件tpm,因计算能力不足导致的性能瓶颈。

其中,当n大于或者等于2时,第一子处理单元选择与其对应的第一主处理单元的具体实现方式,可以包括但不限于以下几种:

参见图5,一种可选的实施方式为,在上述步骤101之前,还可以包括:

201、第一子处理单元向n个主处理单元分别发送负载参数请求消息。

其中,第一子处理单元通过负载请求消息分别请求n个主处理单元各自的负载参数。其中的负载参数可以反映当前各主处理单元各自的负载状况。

202、n个主处理单元中的每个主处理单元分别接收第一子处理单元发送的负载参数请求消息,并向第一子处理单元返回负载参数。

在接收到第一子处理单元发送的负载参数请求消息后,n个主处理单元可以分别将自身的负载参数发送给第一子处理单元,以便于第一子处理单元根据负载参数确定要关联的主处理单元。

这里的n个主处理单元中包括第一主处理单元,即第一主处理单元在步骤202中执行的步骤可以包括:接收第一子处理单元发送的负载参数请求消息,并将第一主处理单元的负载参数发送给第一子处理单元,以便于第一子处理单元根据负载参数确定要关联的主处理单元。

203、第一子处理单元接收n个主处理单元返回的负载参数,并根据n个主处理单元返回的负载参数,确定所有n个主处理单元中负载最低的主处理单元为第一主处理单元。

其中,负载参数具体可以包括与该主处理单元绑定的子处理单元的数量,该主处理单元的内存占用率,以及该主处理单元的cpu使用率等。在接收到主处理单元发送的负载参数后,子处理单元可以对每种负载参数对应的权重值进行加权计算,从而获得加权后的负载指数,根据负载指数的大小确定主处理单元的负载大小。其中,主处理单元的硬件tpm绑定的子处理单元的数量对应的权重值可以较大。

或者,负载参数具体也可以为上述负载指数。主处理单元可以根据该主处理单元的硬件tpm绑定的子处理单元的数量,该主处理单元的内存占用率,以及该主处理单元的cpu使用率等参数,以及各参数分别对应的权重值进行加权计算,从而获得加权后的负载指数,并将负载指数发送给子处理单元。

需要说明的是,当分布式系统具体为图1所示的结构时,由于与主控板相比,备用主控板的cpu负荷原本就相对较低,因而该种情况下可以将cpu使用率对应的权重设置得较小,或者设置为0,以尽量减小主处理单元是主控板还是备用主控板所产生的影响。

在步骤201-203对应的该种可能的实现方式中,第一子处理单元可以向分布式系统中的每个主处理单元发送负载参数请求消息,以获取每个主处理单元对应的负载参数,从而获知各主处理单元及其硬件tpm的负载状态,并根据n个主处理单元对应的负载参数,确定负载最低的第一主处理单元即为与第一子处理单元对应的第一主处理单元,而后可以获 取并利用第一主处理单元的硬件tpm执行可信功能。

需要说明的是,当分布式系统中包括多个子处理单元时,与第一子处理单元类似,每个子处理单元均可以向分布式系统中的n个主处理单元发送负载参数请求消息,以获取每个主处理单元对应的负载参数,并根据每个主处理单元对应的负载参数确定负载最低的主处理单元,从而利用该主处理单元的硬件tpm执行可信功能。

并且,当分布式系统中包括多个子处理单元时,第一主处理单元除了可以向第一子处理单元提供硬件tpm的资源外,还可以向其它子处理单元提供硬件tpm的资源。当分布式系统中包括多个主处理单元时,每个主处理单元均可以像第一主处理单元那样,向分布式系统中的一个或多个子处理单元提供硬件tpm的资源,从而提高子处理单元的安全性。

这样,可以实现分布式系统中多个主处理单元中硬件tpm的负载均衡,从而合理地、充分地利用每个主处理单元的硬件tpm的资源,避免了现有技术的分布式系统中各个主处理单元分别配置硬件tpm,硬件tpm的资源相互隔离使用,造成部分过载、部分闲置这样负载不均衡的情况。

参见图6,在另一种可能的实现方式中,在步骤101之前,还可以包括:

301、第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联。

302、n个主处理单元中的每个主处理单元分别接收第一子处理单元发送的关联指示消息。

303、n个主处理单元中的m个主处理单元分别向第一子处理单元发送关联响应消息,每个关联响应消息中包括负载参数,其中,m为小于或者等于n的正整数。

n个主处理单元中的每个主处理单元在接收到第一子处理单元发送的关联指示消息后,可以根据预设的与子处理单元的映射关系,或者根据主处理单元当前的负载状况,选择是否向第一子处理单元发送关联响应消 息。其中,m个主处理单元可以向第一子处理单元发送关联响应消息,m为小于或者等于n的正整数,以同意与第一子处理单元关联,且关联响应消息中包括主处理单元的负载参数,以便于第一子处理单元可以根据负载参数确定要关联的主处理单元。

304、第一子处理单元接收m个主处理单元分别发送的关联响应消息。

其中,关联响应消息中包括主处理单元当前的负载参数。

305、第一子处理单元根据m个主处理单元发送的关联响应消息中的负载参数,确定m个主处理单元中负载最低的主处理单元为第一主处理单元。

在接收到m个主处理单元分别发送的关联响应消息后,第一子处理单元可以根据关联响应消息中的负载参数,确定负载最低的主处理单元即为第一主处理单元。其中,第一子处理单元确定负载最低的主处理单元的过程可以参见上述步骤203中的具体描述,这里不再赘述。

其中,上述步骤302中的n个主处理单元包括第一主处理单元,杉树步骤303中的m个主处理单元也包括第一主处理单元,因而第一主处理单元在步骤302和步骤303中执行的步骤分别为:接收第一子处理单元发送的关联指示消息;向第一子处理单元发送关联响应消息,以便于第一子处理单元根据负载参数确定要关联的主处理单元。

第一子处理单元在步骤305中确定的负载最低的第一主处理单元,即为第一子处理单元要关联的主处理单元。第一子处理单元要关联的第一主处理单元,即为与第一子处理单元对应的主处理单元,而后第一子处理单元可以通过第一主处理单元的硬件tpm的资源引用标识,获取并利用第一主处理单元的硬件tpm的资源,从而执行可信功能。

在301-305对应的该种实现方式中,同样可以实现分布式系统中多个主处理单元中硬件tpm的负载均衡,从而合理地、充分地利用每个主处理单元的硬件tpm的资源。

参见图7,在另一种可能的实施方式中,在步骤101之前,该方法还可以包括:

401、第一子处理单元向n个主处理单元分别发送关联指示消息,请 求与主处理单元相关联。

402、n个主处理单元中的每个主处理单元分别接收第一子处理单元发送的关联指示消息。

403、n个主处理单元中的第一子处理单元首先向第一子处理单元发送关联响应消息。

404、第一子处理单元确定最先返回关联响应消息的主处理单元为第一主处理单元。

在本步骤中,第一子处理单元确定的最先返回关联响应消息的第一主处理单元,即为与第一子处理单元对应的主处理单元,而后第一子处理单元可以通过第一主处理单元的硬件tpm的资源引用标识,获取并利用第一主处理单元的硬件tpm的资源,从而执行可信功能。

在步骤401-404对应的该种可能的实现方式中,第一子处理单元可以在接收到第一个关联响应消息后,即可以确定发送该关联响应消息的主处理单元为与第一子处理单元对应的第一主处理单元,从而获取并利用该主处理单元的硬件tpm的资源,因而可以尽快确定第一主处理单元,提高处理效率。

参见图8,在另一种可能的实现方式中,在步骤101之前,还可以包括:

501、第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联。

502、n个主处理单元中的每个主处理单元分别接收第一子处理单元发送的关联指示消息。

503、n个主处理单元中的m个主处理单元分别向第一子处理单元发送关联响应消息,每个关联响应消息中包括负载参数,其中,m为小于或者等于n的正整数。

其中,关于步骤503的描述具体可以参见上述步骤303。

504、第一子处理单元接收m个主处理单元分别发送的关联响应消息。

其中,关联响应消息中包括主处理单元当前的负载参数。

505、第一子处理单元根据m个主处理单元发送的关联响应消息中的 负载参数,确定负载低于预设阈值的一个主处理单元为第一主处理单元。

这里的预设阈值可以根据实际需要进行设定。当第一子处理单元确定一个负载参数低于预设阈值的主处理单元为第一子处理单元后,第一子处理单元可以获取并利用第一主处理单元的硬件tpm的资源,从而执行可信功能。

在步骤501-505对应的该种可能的实现方式中,第一子处理单元可以确定负载参数低于预设阈值的主处理单元中的任意一个主处理单元,为与第一子处理单元对应的第一主处理单元,从而可以向第一主处理单元获取硬件tpm的资源。当分布式系统中包括多个主处理单元时,该方式可以通过分布式系统中当前负载低于预设阈值的主处理单元,为子处理单元提供硬件tpm的资源,从而可以使得分布式系统中多个主处理单元的负载较为均衡。

可选地,第一主处理单元可以为根据m个主处理单元发送的关联响应消息中的负载参数,确定的负载低于预设阈值的主处理单元中,第一子处理单元最先接收到关联响应消息的主处理单元。

这样,第一子处理单元可以在首次接收到负载低于预设阈值的主处理单元发送的关联响应消息后,即可确定该主处理单元为第一主处理单元,从而可以向第一主处理单元获取硬件tpm的资源。当分布式系统中包括多个主处理单元时,该方式可以在保持主处理单元的负载较为均衡的同时,尽快确定为子处理单元提供硬件tpm的资源的主处理单元。

参见图9,在另一种可能的实现方式中,在上述步骤101之前,还可以包括:

601、第一子处理单元向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联。

602、第一主处理单元接收第一子处理单元发送的关联指示消息,并向第一子处理单元发送关联响应消息。

在接收到第一子处理单元发送的关联指示消息后,第一主处理单元可以根据预设的映射关系确定与第一子处理单元相对应,从而向第一主处理单元发送关联响应消息。

603、第一子处理单元仅接收到一个主处理单元发送的关联响应消息,并确定该主处理单元为第一主处理单元。

当第一子处理单元接收到的唯一一个主处理单元发送的关联响应消息时,可以确定该主处理单元即为与第一子处理单元对应的第一主处理单元,而后第一子处理单元可以通过第一主处理单元的硬件tpm的资源引用标识,获取并利用第一主处理单元的硬件tpm的资源,从而执行可信功能。

在另一种可能的实现方式中,第一子处理单元中保存有与第一主处理单元的映射关系,第一子处理单元直接向第一主处理单元发送关联指示消息,并接收第一主处理单元发送的关联响应消息,而后利用第一主处理单元的硬件tpm的资源执行可信功能。

进一步地,参见图10,上述步骤303、403、503和602的关联响应消息中可以包括主处理单元的硬件tpm的资源引用标识。这样,在上述步骤201-203、301-305、401-404、501-505或601-603之后,步骤101具体可以包括:

701、第一子处理单元从第一主处理单元发送的关联响应消息中,获取第一主处理单元的硬件tpm的资源引用标识。

参见图11,在另一种可能的实现方式中,步骤101具体可以包括:

801、第一子处理单元向第一主处理单元发送资源引用标识请求消息。

802、第一子处理单元接收第一主处理单元发送的资源引用标识响应消息,资源引用标识响应消息中包括第一主处理单元的硬件tpm的资源引用标识,并从资源引用标识响应消息中获取第一主处理单元的硬件tpm的资源引用标识。

或者,参见图11,在另一种可能的实现方式中,步骤101具体可以包括:

901、第一子处理单元接收第一主处理单元发送的资源引用标识指示消息,资源引用标识指示消息中包括第一主处理单元的硬件tpm的资源引用标识,并从资源引用标识指示消息中获取该资源引用标识。

或者,参见图11,在另一种可能的实现方式中,第一子处理单元与第一主处理单元存在预设的映射关系,第一子处理单元的存储器中保存有第一主处理单元的硬件tpm的资源引用标识,上述步骤101具体可以包括:

1001、第一子处理单元从存储器中获取第一主处理单元的硬件tpm的资源引用标识。

其中,上述步骤801-802或901或1001可以替换图4所示方法流程中的步骤101,也可以替换图5-9中所示任一方法流程中的步骤101,这里不做限定。

进一步地,在图4-11所示方法流程之前,在分布式系统初始化时,参见图12,还可以包括:

106、第一主处理单元利用硬件tpm对第一主处理单元和各子处理单元进行可信验证。

其中,对各子处理单元进行可信验证包括对第一子处理单元进行可信验证。在第一主处理单元和第一子处理单元可信验证通过后,继续执行图4-11所示的流程。

实际上,在分布式系统初始化时,每个主处理单元均可以分别对自身和分布式系统中的所有的子处理单元进行可信验证。

可选地,第一主处理单元利用硬件tpm对第一主处理单元或各子处理单元进行可信验证可以包括:

第一主处理单元或各子处理单元的基本输入输出系统bios文件或内置的可信度量核心根(corerootoftrustformeasurement,简称crtm)进行完整性度量。其中,内置的crtm可以是内置的一段程序。

示例性的,这里以对bios文件进行完整性度量为例对可信验证进行说明。各处理单元在出厂时,由厂商从其bios文件中提取表征数据,哈希运算后生成验证码,这些表征数据和验证码可以存储在指定的外部服务器中,也可以存储在处理单元内部中。在进行可信验证时,第一主处理单元可以从其bios文件中提取表征数据,哈希运算后生成验证码, 若该验证码与出厂时预存的验证码一致,则第一主处理单元的bios文件是可信的,此时可以表明第一主处理单元的可信验证通过。

或者,进一步地,在第一主处理单元的bios文件可信时,可以依次对第一主处理单元的只读内存(read-onlymemory,简称rom)、主引导记录(masterbootrecord,简称mbr)、操作系统加载程序(operatingsystemloader,简称osloader)、操作系统os以及各应用程序进行完整性度量,并在确保各程序未被篡改时,确定第一主处理单元可信验证通过。

在第一主处理单元可信验证通过后,可以将第一主处理单元作为可信基,通过第一主处理单元与各子处理单元之间的可靠传输通道,将可信系统扩展到各子处理单元。其中,对于图1所示结构的分布式系统来说,主处理单元与子处理单元之间的可靠传输通道可以为内部总线;对于图2所示结构的分布式系统来说,主处理单元与子处理单元之间的可靠传输通道可以为隔离的以太接口,为了保证通道的安全性,该隔离的以太接口专门用于主处理单元和子处理单元之间进行可信管理信号传输,不能用于传输用户业务数据。

子处理单元在加电后启动bios文件,并与每个主处理单元建立可靠传输通道。各主处理单元通过与子处理单元之间的可靠传输通道,读取子处理单元的bios文件和硬件信息,并从bios文件中提取表征数据,哈希运算后生成哈希值,再通过子处理单元的硬件信息从指定的外部服务器或子处理单元上查询预存的验证码,并进行比较。若生成的验证码与预存的验证码一致,则可以认为子处理单元可信验证通过,并将该哈希值保存到对应的pcr中。在子处理单元可信验证通过后,主处理单元还可以将可信验证通过的结果通知给子处理单元。

更进一步地,当可信功能包括完整性度量时,在图4-12所示步骤之后,参见图13,该方法还可以包括:

107、第一主处理单元生成度量日志。

108、第一主处理单元获取所有处理单元的存储参数,处理单元包括主处理单元和子处理单元,存储参数用于描述处理单元的空间存储状 态。

109、第一主处理单元根据存储参数,将度量日志存储在至少一个处理单元中。

由于pcr中通常只能保存度量对象在上一次进行完整性度量时的度量结果,即pcr中保存的度量结果是动态变化的,因而在进行完整性度量时,还需要生成度量日志,以记录度量对象在历史度量过程中的每个度量状态。具体的,度量日志中可以记录度量对象每次进行完整性度量时抽取的原始数据和对应的度量结果,以便于用户根据度量日志获知度量对象完整的历史状态,从而判断度量对象是否被篡改等。

其中,由于度量日志包括抽取的原始数据,因而包含的信息量较大,分布式系统中一些处理单元(例如图2中的低端设备)的存储空间比较有限,不适于存储度量日志,因而第一主处理单元通过搜集分布式系统中全部的主处理单元和全部的子处理单元的空间存储情况,从而根据分布式系统中每个处理单元的具体存储情况,对度量日志进行分布式存储,并保存第一子处理单元的相关信息、第一子处理单元的pcr以及存储位置的对应关系,建立度量日志查询接口,从而统一管理度量日志。

具体的,存储参数可以包括存储介质信息、存储路径、存储空间大小、空闲空间大小等。在获取到所有处理单元的存储参数后,第一主处理单元可以根据存储参数确定各处理单元空闲空间的大小,从而将度量日志存储在空闲空间较大的一个或多个处理单元中;或者,第一主处理单元可以将度量日志存储在空闲空间大小大于或者等于度量日志大小的处理单元中。

需要说明的是,当分布式系统中的n个主处理单元均根据分布式系统中各处理单元的空闲存储空间情况,对信息量较大的度量日志进行分布式存储,可以解决某些处理单元存储空间有限的问题,并且能够充分利用分布式系统的存储资源。

因此,本发明上述实施例提供的分布式系统的tpm部署方法,通过将多个主处理单元中的硬件tpm的资源和所有处理单元中的存储资源进行池化,从而根据池化资源提供硬件tpm的密钥、计算能力及布式系统的可用存储空间,可以合理地、充分地利用分布式系统中的资源, 提高分布式系统的性能。

参见图14,本发明另一实施例提供一种第一子处理单元1100,应用于分布式系统,该分布式系统可以包括n个主处理单元和第一子处理单元,每个主处理单元中包括硬件tpm,其中,n为大于或者等于1的整数,n个主处理单元中包括第一主处理单元。该分布式系统的基本架构可以参见图3,第一子处理单元1100具体可以为图1所示分布式系统中的一个线卡,或者可以为图2所示分布式系统中的一个被控设备。该第一子处理单元1100可以包括:

获取单元1101,可以用于获取第一主处理单元的硬件tpm的资源引用标识。

具体的,当第一子处理单元1100为图1所示分布式系统中的一个线卡时,第一主处理单元可以为图1所示分布式系统中的主控板或备用主控板;当第一子处理单元1100为图2所示分布式系统中的一个被控设备时,第一主处理单元可以为图2所示分布式系统中的一个主控设备。

发送单元1102,可以用于向第一主处理单元发送硬件tpm资源获取消息,硬件tpm资源获取消息中包括资源引用标识,以根据资源引用标识获取第一主处理单元的硬件tpm的资源。

其中,硬件tpm的资源包括硬件tpm具有的密钥以及硬件tpm的计算能力,硬件tpm的计算能力包括加密和解密。

执行单元1103,可以用于利用第一主处理单元的硬件tpm的资源,执行可信功能。

可选地,n可以大于或者等于2。

进一步地,在获取单元1101获取第一主处理单元发送的硬件tpm的资源引用标识之前,发送单元1102还可以用于,向n个主处理单元分别发送负载参数请求消息;

参见图15,该第一子处理单元1100还可以包括接收单元1104,用于接收n个主处理单元返回的负载参数;

执行单元1103还可以用于,根据接收单元1104接收到的n个主处理单元返回的负载参数,确定所有n个主处理单元中负载最低的主处理单元为第一主处理单元。

或者,在获取单元1101获取第一主处理单元的硬件tpm的资源引用标识之前,发送单元1102还可以用于,向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;

接收单元1104可以用于,接收m个主处理单元分别发送的关联响应消息,m为小于或者等于n的正整数,每个关联响应消息中包括负载参数;

执行单元1103还可以用于,根据接收单元1104接收到的m个主处理单元返回的负载参数,确定m个主处理单元中负载最低的主处理单元为第一主处理单元。

或者,在获取单元1101获取第一主处理单元的硬件tpm的资源引用标识之前,发送单元1102还可以用于,向n个主处理单元分别发送关联指示消息,请求与主处理单元相关联;

执行单元1103还可以用于,确定最先返回关联响应消息的主处理单元为第一主处理单元。

本发明实施例提供的一种第一子处理单元,通过获取并利用第一主处理单元的硬件tpm的资源执行可信功能,从而使得第一子处理单元即便未部署硬件tpm,也可以通过共享第一主处理单元的硬件tpm的资源来执行可信功能,从而提高了第一子处理单元自身的安全性。

需要说明的是,第一子处理单元仅是图3所示分布式系统中的其中一个子处理单元,图3所示分布式系统中可以包括多个子处理单元,每个子处理单元均可以像第一子处理单元那样,通过获取并利用分布式系统中一个主处理单元提供的硬件tpm的资源执行可信功能,从而提高自身的安全性。

参见图16,本发明另一实施例提供一种第一主处理单元1200,应用于分布式系统,该分布式系统包括n个主处理单元和第一子处理单元,每个主处理单元中包括硬件tpm,其中,n为大于或者等于1的整数,n个主处理单元中包括第一主处理单元。该分布式系统的基本架构可以参见图3,第一主处理单元1200具体可以为图1所示分布式系统中的主控板或备用主控板,或者可以为图2所示分布式系统中的一个主控设备。该第一主处理单元1200可以包括:

接收单元1201,可以用于接收第一子处理单元发送的硬件tpm资源 获取消息,硬件tpm资源获取消息中包括第一主处理单元的硬件tpm的资源引用标识。

其中,第一主处理单元1200是与第一子处理单元对应的一个主处理单元,第一子处理单元可以从主处理单元中确定与其对应的该第一主处理单元1200。具体的,当第一主处理单元1200为图1所示分布式系统中的主控板或备用主控板时,第一子处理单元可以为图1所示分布式系统中的线卡;当第一子处理单元为图2所示分布式系统中的一个主控设备时,第一子处理单元可以为图2所示分布式系统中的一个被控设备。

这里的硬件tpm的资源可以包括硬件tpm具有的密钥以及硬件tpm的计算能力,硬件tpm的计算能力包括加密和解密。

执行单元1202,可以用于根据硬件tpm资源获取消息向第一子处理单元提供硬件tpm的资源,以使得第一子处理单元利用硬件tpm的资源执行可信功能。

进一步地,在接收第一子处理单元发送的硬件tpm资源获取消息之前,接收单元1201还可以用于,接收第一子处理单元发送的关联指示消息,关联指示消息用于请求与第一主处理单元相关联;

参见图17,第一主处理单元1200还可以包括发送单元1203,用于向第一子处理单元发送关联响应消息。

可选地,关联响应消息中还可以包括主处理单元的负载参数,以便于第一子处理单元根据负载参数确定关联到第一主处理单元。

在接收第一子处理单元发送的硬件tpm资源获取消息之前,接收单元1201还可以用于,接收第一子处理单元发送的负载参数请求消息;

发送单元1203,可以用于将第一主处理单元的负载参数发送给第一子处理单元,以便于第一子处理单元根据负载参数确定要关联的主处理单元。

本发明实施例提供的一种第一主处理单元,通过向第一子处理单元提供硬件tpm的资源,使得第一子处理单元可以利用硬件tpm的资源执行可信功能,从而使得未部署硬件tpm的第一子处理单元可以通过共享第一主处理单元的硬件tpm的资源来执行可信功能,提高第一子处理单元的安全性。

值得注意的是,当分布式系统中包括多个子处理单元时,第一主处理单元除了可以向第一子处理单元提供硬件tpm的资源外,还可以向其它子处理单元提供硬件tpm的资源。并且,第一主处理单元仅是图3所示分布式系统中的其中一个主处理单元,图3所示分布式系统中可以包括多个主处理单元,每个主处理单元均可以像第一主处理单元那样,向分布式系统中的一个或多个子处理单元提供硬件tpm的资源,从而可以提高子处理单元的安全性。

需要说明的是,上述实施例2/实施例3中的发送单元和/或接收单元可以为第一子/主处理单元的通信接口。上述实施例2/实施例3中的执行单元可以分别为单独设立的处理器,也可以集成在某一个处理器中实现,此外,也可以以程序代码的形式存储于存储器中,由第一子/主处理单元的某一个处理器调用并执行以上处理单元的功能。

参见图18,本发明另一实施例提供一种第一子处理单元1300,该第一子处理单元1300具体可以为图1所示分布式系统中的线卡,或者可以为图2所示分布式系统中的被控设备。具体的,该第一子处理单元1300可以包括处理器1301、存储器1302、通信接口1303和总线1304。

其中,处理器1301、存储器1302、通信接口1303通过总线1304相互连接。总线1304可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。总线1304可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器1302可以包括易失性存储器(volatilememory),例如随机存取存储器(random-accessmemory,简称ram);存储器也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flashmemory),硬盘(harddiskdrive,简称hdd)或固态硬盘(solid-statedrive,简称ssd);存储器1302还可以包括上述种类的存储器的组合。

处理器1301可以是中央处理器(centralprocessingunit,简称cpu),网络处理器(networkprocessor,简称np)或者cpu和np的组合。

处理器1301还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegratedcircuit,简称asic),可编程逻辑器件(programmablelogicdevice,简称pld)或其组合。上述pld可以是复杂可编程逻辑器件(complexprogrammablelogicdevice,简称cpld),现场可编程逻辑门阵列(field-programmablegatearray,简称fpga),通用阵列逻辑(genericarraylogic,简称gal)或其任意组合。

可选地,存储器1302还可以用于存储程序指令,处理器1301调用该存储器1302中存储的程序指令,可以执行图4-13所示实施例中的一个或多个步骤,或其中可选的实施方式,使得第一子处理单元1300实现上述方法中第一子处理单元行为的功能。

本发明实施例提供的一种第一子处理单元,通过获取并利用第一主处理单元的硬件tpm的资源执行可信功能,从而使得第一子处理单元即便未部署硬件tpm,也可以通过共享第一主处理单元的硬件tpm的资源来执行可信功能,从而提高了第一子处理单元自身的安全性。

参见图19,本发明另一实施例提供一种第一主处理单元1400,该第一主处理单元1400具体可以为图1所示分布式系统中的主控板或备用主控板,或者为图2所示分布式系统中的主控设备。具体的,该第一主处理单元1400可以包括处理器1401、存储器1402、通信接口1403和总线1404。其中,该处理器1401、存储器1402、通信接口1403和总线1404的具体结构和功能可以参见上述实施例中关于图17各部件的相关描述。

可选地,存储器1402还可以用于存储程序指令,处理器1401调用该存储器1402中存储的程序指令,可以执行图4-13所示实施例中的一个或多个步骤,或其中可选的实施方式,使得第一主处理单元1400实现上述方法中第一主处理单元行为的功能。

本发明实施例提供的一种第一主处理单元,通过向第一子处理单元提供硬件tpm的资源,使得第一子处理单元可以利用硬件tpm的资源执行可信功能,从而使得未部署硬件tpm的第一子处理单元可以通过共享第一主处理单元的硬件tpm的资源来执行可信功能,提高第一子处理单 元的安全性。

本发明另一实施例提供一种分布式系统,如图14、15或18所示的第一子处理单元和如图16、17或19所示的第一主处理单元,第一子处理单元和第一子处理单元根据图4-13所示的流程,执行上述实施例中提供的tpm部署方法。

其中,第一子处理单元具体可以为第一线卡,第一主处理单元具体可以为主控板,主控板与第一线卡之间通过内部总线相连,该分布式系统的结构示意图可以参见图20。

或者,第一子处理单元具体可以为第一被控设备,第一主处理单元具体可以为第一主控设备,第一主控设备与第一被控设备之间通过隔离的以太接口连接,该分布式系统的结构示意图可以参见图21。其中,为了保证通道的安全性,该隔离的以太接口专门用于主控设备以及被控设备相互之间进行可信管理信号的传输,不能用于传输用户的业务数据。

在本发明实施例提供的分布式系统中,第一子处理单元可以利用第一主处理单元的硬件tpm的资源执行可信功能,从而可以提高第一子处理单元的安全性。

本发明另一实施例提供一种分布式系统,在包括第一子处理单元和第一主处理单元的基础上,还包括其它子处理单元和其它主处理单元,该分布式系统的基本结构示意图可以参见图1或图2。其中,类似于第一子处理单元,分布式系统中的每个子处理单元均可以根据图4-13所示的方法流程执行上述实施例中提供的tpm部署方法。同样,类似于第一主处理单元,分布式系统中的每个主处理单元可以根据图4-13所示的方法流程执行上述实施例中提供的tpm部署方法。

在本发明实施例提供的分布式系统中,每个子处理单元均可以获取并利用其中一个主处理单元的硬件tpm的资源执行可信功能,从而提高子处理单元的安全性,进而可以提高整个分布式系统的安全性。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置、方法及系统,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者 可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器、随机存取存储器ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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