一种可信度量方法、服务器以及芯片与流程
未命名
09-09
阅读:89
评论:0

1.本技术涉及计算机领域,尤其涉及一种可信度量方法、服务器以及芯片。
背景技术:
2.自上个世纪80年代起,微软和英特尔为推动个人电脑(personal computer,pc)产业的发展组成wintel联盟。两家公司在pc产业内密切合作,以驱动计算产业的更快发展,并逐步影响到服务器等其他计算设备。而服务器等计算设备的应用场景多、配置类型多、对可靠性要求也比较高。同时,服务器具有巨大的商业体量,是开放产业生态建设的焦点。
3.以传统服务器为例,当前传统服务器的产业生态存在以下特点:
4.标准化程度不高:传统服务器已经有一定的组件标准化基础,例如,内存条、固态硬盘(solid state drive,ssd)、快捷外围部件互连标准(peripheral component interconnect express,pcie)卡等组件已有各自标准。组件标准化对产业生态和资源共享做出了很大贡献,减少了一部分服务器整机厂商的开发工作。但是,标准化组件在整个服务器中的占比较少,这就使得服务器主板的开发还需要投入较多人力完成标准化组件和非标准化组件的适配。
5.算力多样化不足:在海量数据、大数据分析、机器学习、人工智能大发展的背景下,图像处理器(graphics processing unit,gpu)、处理器分散处理单元(data processing unit,dpu)、神经网络处理器(neural-network processing unit,npu)等专用处理器的应用十分广泛,传统服务器的设备单系统已经无法满足当前需要,服务器的硬件设备的复杂性显著提升,服务器内部不仅包括业务处理系统,还包括gpu、io组件、存储组件、管理系统,并且多个系统可能存在多种架构混合,例如x86架构和arm架构混合。
6.进一步地,可信度量是一项确保服务器运行在期望的可信状态下的一项技术手段,通过对服务器进行可信度量,可以有效避免第三方在服务器运行阶段通过更换部件或升级、镜像非法软件的方式,获取服务器的控制权限,其中,度量指的是采集服务器在首次启动和运行过程中的度量报告,并根据度量规则或模型分析判断系统是否在运行过程中被非法篡改。
7.在对服务器进行可信度量时,通常会由中央处理器(central processing unit,cpu)对自身进行度量获得cpu的度量报告,根据cpu的度量报告来确定整个服务器是否处于可信状态。但是,在算力多样化场景中,服务器不仅包括业务处理器,还包括gpu、存储组件、io组件、散热组件等等其他组件,只对业务处理系统进行可信度量很容易使第三方通过其他组件系统作为跳板来获取服务器的控制权限,导致当前的传统服务器的可信度量存在漏洞,服务器的安全性低。
技术实现要素:
8.本技术提供了一种可信度量方法、服务器和芯片,用于解决当前服务器的可信度量存在漏洞,服务器的安全性能低的问题。
9.第一方面,提供了一种可信度量方法,该方法应用于服务器,该服务器包括管理芯片和组件,该管理芯片和组件通过总线建立通信连接,该方法包括以下步骤:管理芯片对管理系统进行可信度量,获取管理系统的第一度量报告,该第一度量报告用于标识管理系统的完整性,管理芯片从组件获取第二度量报告,该第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性,管理芯片根据第一度量报告和第二度量报告对服务器进行可信度量。
10.实施第一方面描述的方法,通过管理芯片来对管理系统进行度量获得第一度量报告,通过组件来对组件系统进行度量获得第二度量报告,并通过管理芯片来收集组件的第二度量报告,结合第一度量报告和第二度量报告对服务器进行可信度量,可以使得服务器内的全部系统包括组件系统和管理系统都可以进行可信度量,从而避免第三方通过组件系统作为跳板来获取服务器的控制权限,提高服务器的安全性。
11.在一可能的实现方式中,管理芯片是服务器中的主板管理控制器bmc芯片,io组件包括网卡或者高速串行计算机扩展总线标准pcie扩展卡riser;存储组件包括硬盘背板、扩展板(expander)、pcie交换机(switch)中的一种或者多种;计算组件包括中央处理器cpu、双倍速率同步动态随机存储器(double data rate,ddr)和电源;加速组件包括载板和加速卡互连交换机(switch),其中,加速卡包括图像处理器(graphics processing unit,gpu)、处理器分散处理单元(data processing unit,dpu)、神经网络处理器(neural-network processing unit,npu)中的一种或者多种;内存扩展组件包括载板,还包括内存扩展芯片、双列直插内存模块(dual in-line memory module,dimm)、内存级存储介质(storage class memory,scm)介质中的一种或者多种;散热组件包括风冷散热、液冷散热中的一种或者多种。
12.上述实现方式,通过bmc芯片实现第一度量报告和第二度量报告的收集以及服务器的可信度量,由于bmc芯片与cpu本身有计算资源隔离的优势,使得可信度量无需再考虑如何进行资源隔离,降低设计门槛,实现独立硬件保护的双体系安全架构。同时,bmc芯片做完一个面向服务器全生命周期的嵌入式管理系统,与外部网络进行交互的接口很少,网络暴露面比业务处理器少很多,由bmc芯片来实现可信度量可以减少被第三方通过网络进行攻击的可能。并且,bmc芯片作为管理系统的核心,天然具有与每个组件建立通信连接的优势,使得一些无法向外部暴露接口的组件也能将其生成的第二度量报告发送给bmc芯片,实现服务器全部组件的可信度量,提高服务器的安全性。
13.在一可能的实现方式中,管理芯片在服务首次启动的情况下对管理系统进行可信度量,或者,管理芯片在服务器运行过程中周期性对管理系统进行可信度量。
14.实施上述实现方式,组件可以在管理芯片进行可信度量时,接收到管理芯片的通知,并响应于该通知对组件系统进行可信度量,使得管理芯片可以在服务器首次启动以及运行过程中实现对服务器的完整可信度量,实现对服务器全生命周期的可信度量防护。
15.在一可能的实现方式中,第一度量报告是管理芯片对管理系统的代码进行度量后获得的,第二度量报告是组件对组件系统的代码进行度量后获得的。
16.具体地,第一度量报告可包括管理芯片的身份信息和管理芯片的度量值,管理芯片的身份信息包括管理芯片的软件标识、软件版本、固件标识和固件版本,还可包括其他用于描述管理芯片的软件和/或固件身份的信息。管理芯片的度量值用于指示管理芯片的完
整性。同理,组件的第二度量报告也包括组件的身份信息和组件的度量值,组件的度量值用于指示组件的完整性。
17.可选地,管理芯片可以通过对管理系统的软件代码段进行哈希(hash)或散列后获得管理芯的度量值,或者,通过杂凑算法计算度量管理系统静态文件的摘要值的方式获得管理芯片的度量值,或者通过对管理系统运行时使用的进程、内核模块的内存代码进行哈希后获得管理芯片的度量值,还可以伪随机的方式对管理系统内存进行遍历和度量获得管理芯片的度量值,应理解,上述获得度量值的方式用于举例说明,管理芯片还可使用其他方式来获得与管理系统完整性相关的度量值的方法,本技术不做具体限定。
18.上述实现方式,管理芯片对管理系统的代码进行度量获得第一度量报告,组件对组件系统的代码进行度量获得第二度量报告,使得第一度量报告包括管理系统的完整性信息,第二度量报告包括组件系统的完整性信息,从而保证管理芯片可以根据第一度量报告和第二度量报告验证服务器中软件和固件的完整性,实现服务器的可信度量。
19.在一可能的实现方式中,管理芯片可以获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告,根据第三度量报告对服务器进行可信度量。
20.上述实现方式,由于不同厂家、架构的服务器,其组件启动时固件软件的启动顺序并没有统一的标准格式,本技术通过管理芯片收集管理系统的第一度量报告和各个组件的第二度量报告后,可以对第一度量报告和第二度量报告进行格式转化,使其适配认证节点的度量格式,避免出现度量格式不同导致度量失败的问题。
21.在一可能的实现方式中,第三度量报告包括服务器的身份信息和服务器的度量值,服务器的度量值用于指示服务器的完整性,管理芯片对第三度量报告进行认证时,可以根据服务器的身份信息从本地或远程获取服务器的标准度量值,根据服务器的度量值和服务器的标准度量值对服务器进行可信度量。
22.具体实现中,服务器的身份信息可以是根据第一度量报告中管理芯片的身份信息以及第二度量报告中组件的身份信息获得的,服务器的度量值可以是根据第一度量报告中管理芯片的度量值以及第二度量报告中组件的度量值获得的。
23.可选地,管理芯片可以按照组件系统各个软件和固件的启动顺序,逐级对管理系统进行度量,获得管理芯片的第一度量报告。简单来说,先启动的软件或固件度量可信后,可以对后一级启动的软件或固件进行度量。
24.需要说明的,由于管理芯片对管理系统以逐级度量的方式获得第一度量报告,因此第一度量报告中可包括管理系统内的一个或者多个固件或软件的身份信息以及对应的度量值,具体可根据业务处理逻辑来确定,本技术不作具体限定,其中,第一度量报告中的度量值以及对应的软件固件身份信息可以是按逐级度量顺序记录的。
25.可选地,上述第三度量报告中的服务器的度量值,可以是一系列的组件和管理芯片的度量值组成的,也可以是根据组件的度量值和管理芯片的度量值整合成的一个值,还可以是包括部分组件的度量值和管理芯片的度量值,还包括另一部分组件的度量值和管理芯片的度量值整合而成的整合值。管理芯片可以将第一度量报告和第二度量报告中记录的度量值的顺序进行调换,也可以是对度量值进行整合,具体可根据认证节点的可信度量格式来决定,本技术不对此进行具体限定。其中,上述可信度量格式可以是管理芯片与认证节
点建立通信连接后获得的。
26.上述实现方式,通过管理芯片获取服务器进行可信认证时所需的可信度量格式,并将第一度量报告和第二度量报告进行转换,获得该可信度量格式对应的第三度量报告,可以避免由于服务器架构、厂家等不同导致服务器的可信度量不兼容的问题。
27.在一可能的实现方式中,管理芯片可以向认证节点发送第三度量报告,认证节点也可以将标准度量值和第三度量报告中的服务器的度量值进行比对,实现对服务器的可信度量。
28.可选地,管理芯片也可以对第三度量报告进行服务器的可信度量,不通过认证节点对服务器进行可信度量。具体地,管理芯片可以根据第三度量报告中的服务器的身份信息获取服务器对应的标准度量值,根据标准度量值和第三度量报告中的度量值来对服务器进行可信度量,其中,服务器的标准度量值可以是管理芯片提前下载的,也可以是远程向认证节点获取的,本技术不作具体限定。
29.上述实现方式,管理芯片可以对第三度量报告进行可信度量,也可以将第三度量报告发送给认证节点进行可信度量,使得本技术提供的可信度量方法的灵活性更高,可以按照实际业务场景选择用户所需的方式,方案适用性更加广泛。
30.可选地,上述服务器的标准度量值可以是预设的标准度量值,也可以是根据服务器首次进行可信度量时获得的首次度量值确定的,首次度量值可包括服务器启动时组件的度量值以及管理芯片的度量值。
31.上述实现方式,通过将首次度量值作为标准度量值,如果服务器在运行过程中被第三方篡改了软件或固件,那么服务器的度量值将会发生变化,因此将首次度量值作为标准度量值可判断服务器在运行过程中是否发生改变,实现服务器的可信度量。具体实现中,标准度量值可以是单个数值也可以是多个数值组成的系列值,标准度量值与可信度量格式所需的标准值是对应的,具体可个根据实际处理情况确定,本技术不作具体限定。
32.在一种可能的实现方式中,管理芯片生成第三度量报告后,可以通过预置的密钥对第三度量报告进行加密,然后将加密后的第三度量报告发送给认证节点,认证节点可通过预置的密钥对上述加密后的第三度量报告进行解密,获得第三度量报告,对其进行可信度量。
33.具体实现中,远程公钥和远程证明私钥可以是加密算法中的密钥,上述加密算法可以是非对称加密算法(rsa),md5、对称加密算法等等,本技术不对加密算法的具体实现方式进行限定。
34.上述实现方式,管理芯片对第三度量报告进行加密后再传输给认证节点进行可信度量,可以避免度量过程中被第三方通过网络拦截的方式获取第三度量报告,确保度量结果的真实准确。
35.第二方面,提供了一种服务器,包括管理芯片和组件,管理芯片和组件通过总线建立通信连接,其中,管理芯片,用于对管理系统进行可信度量,获取管理系统的第一度量报告,第一度量报告用于表示管理系统的完整性,组件,用于对组件系统进行可信度量,获取组件系统的第二度量报告,第二度量报告用于表示组件系统的完整性,管理芯片,用于从组件获取第二度量报告,根据第一度量报告和第二度量报告对服务器进行可信度量。
36.实施第二方面描述的服务器,通过管理芯片来对管理系统进行度量获得第一度量
报告,通过组件来对组件系统进行度量获得第二度量报告,并通过管理芯片来收集组件的第二度量报告,结合第一度量报告和第二度量报告对服务器进行可信度量,可以使得服务器内的全部系统包括组件系统和管理系统都可以进行可信度量,从而避免第三方通过组件系统作为跳板来获取服务器的控制权限,提高服务器的安全性。
37.在一可能的实现方式中,组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。
38.在一可能的实现方式中,管理芯片,用于在服务器首次启动的情况下对管理系统进行可信度量;或者,管理芯片,用于在服务器运行过程中,周期性对管理系统进行可信度量。
39.在一可能的实现方式中,第二度量报告是组件对组件系统的代码进行度量后获得的,第一度量报告是管理芯片对管理系统的代码进行度量后获得的。
40.在一可能的实现方式中,管理芯片,用于获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告;管理芯片,用于根据第三度量报告对服务器进行可信度量。
41.在一可能的实现方式中,第三度量报告包括服务器的身份信息和服务器的度量值,服务器的度量值用于指示服务器的完整性,管理芯片,用于根据服务器的身份信息从本地或远程获取服务器的标准度量值,根据服务器的度量值和服务器的标准度量值对服务器进行可信度量。
42.在一可能的实现方式中,管理芯片,用于向认证节点发送第三度量报告,以供认证节点根据第三度量报告对服务器进行可信度量。
43.在一可能的实现方式中,io组件包括网卡或者riser;存储组件包括硬盘背板、expander、pcie switch中的一种或者多种;计算组件包括cpu、ddr和电源;加速组件包括载板和加速卡互连switch,其中,加速卡包括图像处理器gpu、dpu、npu中的一种或者多种;内存扩展组件包括载板,还包括内存扩展芯片、dimm、scm介质中的一种或者多种;散热组件包括风冷散热、液冷散热中的一种或者多种。
44.在一可能的实现方式中,管理芯片是服务器中的主板管理控制器bmc芯片。
45.第三方面,提供了一种芯片,该芯片所在的服务器包括组件,芯片和组件通过总线建立通信连接,该芯片包括:管理系统度量单元,用于对管理系统进行可信度量,获取管理系统的第一度量报告,第一度量报告用于表示管理系统的完整性,获取单元,用于从组件获取第二度量报告,第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性,服务器度量单元,用于根据第一度量报告和第二度量报告对服务器进行可信度量。
46.实施第三方面描述的芯片,该芯片对管理系统进行度量获得第一度量报告,通过组件来对组件系统进行度量获得第二度量报告,并通过芯片来收集组件的第二度量报告,结合第一度量报告和第二度量报告对服务器进行可信度量,可以使得服务器内的全部系统包括组件系统和管理系统都可以进行可信度量,从而避免第三方通过组件系统作为跳板来获取服务器的控制权限,提高服务器的安全性。
47.在一可能的实现方式中,组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。
48.在一可能的实现方式中,管理系统度量单元,用于在服务器首次启动的情况下对管理系统进行可信度量,或者,管理系统度量单元,用于在服务器运行过程中,周期性对管理系统进行可信度量。
49.在一可能的实现方式中,第二度量报告是组件对组件系统的代码进行度量后获得的,第一度量报告是芯片对管理系统的代码进行度量后获得的。
50.在一可能的实现方式中,服务器度量单元,用于获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告;服务器度量单元,用于根据第三度量报告对服务器进行可信度量。
51.在一可能的实现方式中,第三度量报告包括服务器的身份信息和服务器的度量值,服务器度量单元,用于根据服务器的身份信息从本地或远程获取服务器的标准度量值,根据服务器的度量值和服务器的标准度量值对服务器进行可信度量。
52.在一可能的实现方式中,服务器度量单元,用于向认证节点发送第三度量报告,以供认证节点根据第三度量报告对服务器进行可信度量。
53.在一可能的实现方式中,io组件包括网卡或者riser;存储组件包括硬盘背板、expander、pcie switch中的一种或者多种;计算组件包括cpu、ddr和电源;加速组件包括载板和加速卡互连switch,其中,加速卡包括图像处理器gpu、dpu、npu中的一种或者多种;内存扩展组件包括载板,还包括内存扩展芯片、dimm、scm介质中的一种或者多种;散热组件包括风冷散热、液冷散热中的一种或者多种。
54.在一可能的实现方式中,芯片是服务器中的主板管理控制器bmc芯片。
55.第四方面,提供了一种芯片,该芯片包括业务核和安全核,安全核用于运行指令实现如第一方面或第一方面任一种可能实现方式中所描述的方法,管理核用于运行指令实现管理功能。
56.第五方面,提供了一种芯片,该芯片包括计算单元和存储器,存储器存储有代码,计算单元包括用于执行第一方面或第一方面任一种可能实现方式中系统实现的各个模块的功能。
57.第六方面,提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
58.第七方面,提供了一种包含指令的计算机程序产品,包括计算机程序或指令,当该计算机程序或指令在计算机上运行时,使得该计算机执行上述方法实施例所述的方法。
59.本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
60.图1是本技术提供的一种可信度量系统的一种结构示意图;
61.图2是本技术提供的一种可信度量系统的另一种结构示意图;
62.图3是本技术提供的一种可信度量系统的交互流程示意图;
63.图4是本技术提供的一种可信度量方法的步骤流程示意图;
64.图5是本技术提供的一种芯片的结构示意图;
65.图6是本技术提供的一种芯片的另一种结构示意图。
具体实施方式
66.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
67.首先,对本技术提供的一种服务器新架构进行解释说明。
68.传统服务器主板开发的技术门槛高,除中央处理器(central processing unit,cpu)外,还包括总线扇出、电源扇出、维护管理等功能,这些主板上cpu相关的电路都来自cpu厂家给出的参考设计,而不同的cpu厂家提供的参考设计完全不同,这就使得主板的开发和设计需要投入大量资源和时间。为了满足服务器等计算产品的快速更新换代的需求,整机厂商需要在差异化创新上投入较多精力,但往往只能聚焦在低级的硬件规格比拼方面。这样既不能满足客户的多样场景和算力的需求,也迫使整机厂家陷入低效的同质化竞争内卷中。而随着算力多样性趋势的呈现,更多的处理器厂家涌现,并推出更多不同架构的处理器产品,各类处理器的迭代速度也随之快速提升。与此同时,处理器的功耗也持续增加,传统服务器的散热技术无法满足需求。此外,为了提升系统性能,业界还推出了新介质类型(例如,intel推出3d xpoint新型非易失介质等)和形态,上述新介质类型和形态也需要新架构支持和适配。为了开发适配上述技术趋势的服务器,整机厂商则需要投入巨大的开发工作量,但由于不同产品的差异性导致同一主板或整机的设计方案又无法复用。所以,整个产业对服务器的跨架构共用部件、跨代演进、缩短上市时间(time to market,ttm)、减少总体运营成本(total cost of operation,tco)等方面提出更高的要求,产业的进一步发展需要构建更为开放、标准化的服务器架构,提高开发效率,提升部件重用度,提供更多灵活性和差异化。
69.本技术提出一种创新的对等互联架构(也可以称为服务器新架构或新架构)。在该架构中,首先将传统的主板拆分为基础板(basic computing unit,bcu)、扩展板(extension unit,exu),以基础板配合扩展板的方式实现对不同场景所需的主板的规格和形态的支持。此外,同一计算设备中可以包括一个基础板和一个扩展板,同一计算设备也可以包括多个基础板和一个扩展板,同一计算设备还可以包括一个基础板和多个扩展板。基础板包括cpu、双倍数据速率(double data rate,ddr)以及相关电源,提供通用计算能力及外围存储、输入输出(input/output,io)、加速等扩展接口。基础板支持等不同系列的cpu。可选地,基础板支持异构处理器,即基础板可以支持不同类型的处理器,例如,基础板支持cpu,以及专用集成电路(application-specific integrated circuit,asic)、可编程逻辑器件(programmable logic device,pld)、复杂程序逻辑器件(complex programmable logical device,cpld)、现场可编程门阵列(field-programmable gate array,fpga)、通用阵列逻辑(generic array logic,gal)、片上系统(system on chip,soc)、软件定义架构(software-defined infrastructure,sdi)芯片、人工智能(artificial intelligence,ai)芯片等任意一种处理器或其任意组合。
70.进一步地,根据业务需求和硬件属性本技术实施例提供了至少6种不同形态的基础板,分别针对不同的计算性能和内存配置。为了方便描述,姑且将这6种基础板分别称为a1、a2、b1、b2、c1、和c2。并且,在本实施例中利用“p”表示处理器的个数,p为大于0的整数,
memory module,dimm)、scm介质等,提供系统扩展内存带宽、内容容量的功能。
78.散热组件,用于对计算设备或计算设备中硬件进行散热,包括风冷散热、液冷散热或二者结合等几种散热方式的组合。应理解的是,散热组件的结构、类型和数量不构成对本技术所要保护技术方案的限定。
79.计算组件,中央处理器(central processing unit,cpu)、内存等提供通用计算能力的器件。
80.管理组件,基板管理控制器等提供设备管理的器件。
81.另一方面,在传统的服务器架构中,由于供电、内存通道数、io数、速率等演进原因,处理器(例如,中央处理器(central processing unit,cpu))的插槽(socket)一般只能做到每代(tick/tock两个小升级)兼容,很难跨代兼容。本技术提供的主板可以采用标准化方式设置对外接口,并以线缆等软连接方式进行各种外部扩展,可屏蔽处理器相关供电、不同处理器与组件以及组件之间互连所带来的差异。使得内存等组件的变化仅包含在了主板内部,实现主板跨代兼容的功能。这样对于各厂商来说,当处理器更新换代时,配套的整机、组件等可以不更换,因此配套的组件具备了更长的生命周期。对于客户来说,在不需要更换机箱、不增加硬件开发工作量的前提下,能够随时更换最新的组件,最快用上业界最新的算力。对整机厂家来说,服务器新架构跨代升级、跨系列演进实现之后,处理器的升级、或者更换不同处理器厂家,只需要简单更换基础板即可,颠覆了原有的开发模式,衍生了新的产业模式。
82.本实施例除了提供一种服务器新架构,为了支持多样性算力和多样性设备,该服务器新架构还实现硬件标准化,包括基础板的标准化和组件接口的标准化。
83.基础板的标准化包括尺寸、安装孔位、接口电气特性、管理接口协议和参数等标准化。其中,表1为本技术提供的一种基础板接口描述表的示例。
84.表1为本技术提供的一种基础板接口描述的示例
[0085][0086][0087]
其中,供电采用统一的12v输入,基础板内部通过dc/dc转换成所需要的各类电源。考虑到未来i/o的演进以及不同cpu的差异化,本实施例基于ubc和ubcdd连接器,定义一种flexible i/o接口,用于替代原有的pcie接口。所述flexible i/o接口可以根据需求灵活配置成pcie/hccs/sas/sata/以太等接口。bcu管理接口主要包括常见的低速维护接口,例如i2c、uart、jtag等接口,兼容常见处理器平台的管理。
[0088]
计算系统内部组件接口的标准化:组件包括扩展板、供电组件、散热组件、存储组件、io组件、加速组件、内存组件等,对组件的电气接口、管理接口和参数进行标准化,而不定义和约束组件的物理尺寸、安装、位置等,这些将提供广大的创新空间,支持差异化和灵
活扩展。组件对外接口除了电源和高速信号,其余低速管理接口定义如下表2所示:
[0089]
表2为本技术提供的一种组件低速管理接口定义表的示例
[0090][0091]
除了exu与bcu的接口外,其它接口通过exu与各个组件相连。值得注意的是,本实施例只定义这些接口的功能,不限定具体针布局(pinmap)方式,任何能够实现该功能的实现方式都在本实施例的保护范围以内。
[0092]
值得说明的是,上述表1和表2的内容仅为辅助解释本技术的技术方案提供的一种示例,具体实施中,服务器新架构、基础板的接口和功能组件的低速接口均可以分别包括更多或更少的内容。
[0093]
此外,本技术还提供一种实现了智能化管理软件,根据服务器新架构的标准化要求实现管理对象模板,服务器在上电后,管理软件通过标准管理总线自动探测组件并获取组件的自描述信息,再根据管理对象模板创建管理对象实例,从而实现管理软件自适应管理实现管理软件智能化,支持组件自动发现和自动适配。
[0094]
其次,对本技术涉及的“可信度量”应用场景进行说明。
[0095]
可信度量是一项确保服务器运行在期望的可信状态下的一项技术手段,通过对服务器进行可信度量,可以有效避免第三方在服务器运行阶段通过更换部件或升级、镜像非法软件的方式,获取服务器的控制权限,其中,度量指的是采集服务器在运行过程中的度量报告,根据规则或模型分析判断系统是否在运行过程中被非法篡改。
[0096]
通常情况下,服务器的可信度量方案以业务处理器为核心,以业务处理器所在的主以业务系统为粒度对服务器进行可信度量,具体地,服务器可配置安全芯片(trusted platform module,tpm)与业务处理器中,tpm可按照主业务系统中各个部件的启动顺序开展逐级度量,将度量结果逐级写入tpm的平台配置寄存器(platform configuration register,pcr)中,外部认证节点可以向tpm获取上述pcr寄存器中的度量结果,基于此对服务器进行可信度量。
[0097]
但是,随着服务器不断地向算力多样化方向发展,服务器不仅包括主业务系统,还可包括其他算力系统、管理系统等等,tpm按照主业务系统中各个部件的启动顺序开展逐级度量,相当于只对主业务系统进行了可信度量,很容易使第三方通过其他系统作为跳板来获取服务器的控制权限,同时,出于安全风险的考虑,当服务内部存在多个系统时,为了减少设备暴露面,并不是每个系统都会对外暴露接口,可能多个系统串联后才会向客户暴露接口,未暴露对外接口的系统无法向tpm发送度量报告,也就是说,tpm无法对未暴露接口的系统进行可信度量。
[0098]
并且,由于不同服务器架构下的业务处理系统中各个部件的启动顺序也不同,比
如arm架构是一个开放架构,并没有明确的pcr寄存器分配规则,也没有统一的可信度量方案,架构差异会使得服务器出现可信度量不兼容的问题。
[0099]
综上可知,当前的传统服务器的可信度量存在漏洞,难以对主业务处理系统以外的其他系统进行可信度量,导致服务器的安全性低。
[0100]
本技术在上述服务器新架构基础上提出一种可信度量方案,用于解决上述服务器的可信度量存在漏洞,难以对主业务处理系统以外的其他系统进行可信度量,导致服务器安全性能低的问题,接下来结合附图详细介绍本技术所提供的技术方案。
[0101]
如图1所示,图1是本技术提供的一种可信度量系统的结构示意图,该可信度量系统可部署于前述内容中的服务器新架构。如图1所示,从系统的维度出发,前述的服务器新架构可包括系统可信中心、节点可信中心和可信组件。不同层组件分别构建相应可信特性,节点可信中心作为服务器的中心组件,同时作为节点的可信根,负责整个节点的可信管理,按照cc eal4+/国密二级能力构建。组件的可信能力协同节点可信中心构建。
[0102]
为了使本技术能够被更好地理解,图1实施例中组件按业务特点抽象成了可信io组件、可信计算组件、可信存储组件以及可信加速组件,应理解,上述组件划分方式与前文内容中的组件划分方式略有不同,本技术提供的方案中,服务器的组件可按照业务特定进行多种方式划分,本技术不作具体限定。各类组件可分别对应如下的实体组件:
[0103]
可信io组件:包括riser等部件,实现对系统io的扩展,支持pcie标卡、ocp卡;
[0104]
可信计算组件:内部包括cpu、ddr以及相关电源,提供通用计算能力及外围存储、io、加速等扩展接口;
[0105]
可信存储组件:包括硬盘背板、expander、pcie switch等,为系统存储扩展,支持hdd/ssd/nvme/scm等多种介质、形态;
[0106]
可信加速组件:包括载板以及加速卡互连switch等,提供系统加速部件扩展和互连功能。
[0107]
上述各个组件的可信设计要求可以如下表3所示。其中,表3中组件的“规则”特性将作为组件安全可信设计的基础功能要求,另外的“建议”特性将作为组件安全可信设计的差异化功能要求,不强制要求,由各组件根据实际业务需要来选择。
[0108]
表3本技术提供的可信度量系统中各个组件的可信设计要求实例
[0109]
[0110][0111]
如表3所示,系统可信中心用于对服务器进行可信度量,是一个系统可信管理软件。系统可信中心可包括系统证明中心、系统密管中心、系统可信根、系统任性策略控制以及接入认证服务端。其中,系统证明中心用于实现服务器的可信度量、可信认证等功能,系统密管中心用于对节点可信中心发送的信息进行解密,系统韧性策略控制用于实现策略分发和控制,提高系统韧性,接入认证服务端用于对服务器进行接入可信认证,其中,系统可信根用于支撑上述各种功能的实现。其中,表3中的节点即为前述内容中的新架构服务器。
[0112]
节点可信中心可以是前述内容中的管理芯片,其中,节点可信中心至少包括节点可信根、可信启动、安全启动、组件接入认证、节点可信根、可信启动、固件加密、可信平台控制模块(trusted platform control module,tpcm)等功能,还可根据实际业务需求,增加组件一键敏感数据清除、组件集中安全升级、节点韧性策略、机箱安全等功能,本技术不对此进行具体限定。
[0113]
可信组件可包括可信io组件、可信计算组件、可信存储组件和可信加速组件,其中,可信计算组件用于进行计算运行环境和数据的可信保护,可信io组件用于进行高性能可信业务传输,可信存储组件用于进行高新能持久化可信保护,可信加速组件用于进行高性能可信业务协处理加速,可信系统总线用于实现可信总线标准生态。
[0114]
可以理解的,上述组件可基于组件的特性、结合实际业务需要为组件安全可信设计相应的功能要求,组件可按需组合安全可信功能,并在设计安全可信功能时尽量降低功能之间的耦合,并且,组件的接入可信认证以及度量可信交由节点可信中心实现,从而降低组件可信复杂度。
[0115]
需要说明的,表3中的可信根是实现计算机系统完整性的保护机制,是构建可信度量环境的基础。从可信度量理论来说,信任链是逐级传递不可断裂的,对于构建安全启动链,上电时的硬件状态就是该可信链的可信基,也叫可信根(root of trust),严格意义的可信根往往是基于硬件提供的机制来实现的,因此更完整的说法应该是硬件可信根。根据作用的不同,硬件可信根的用途也有多种,如报告、启动、度量、存储等。
[0116]
具体实现中,组件主芯片(即指板卡的主控芯片,也就是板卡上电最先启动的芯片)集成安全子系统或者外置安全芯片(主芯片未集成安全子系统场景)通过mux(切换开关)连接组件flash,实现组件固件的安全启动的固件校验和度量报告的收集,支持将度量报告发送到节点可信中心进行可信度量。
[0117]
需要说明的,对于计算组件,可额外支持节点可信中心直接访问组件的flash,实现cpu bios的安全启动校验和可信启动的身份度量,同时负责bios安全升级的固件校验。
[0118]
可选地,组件与节点可信中心有可信管理通道连接,实现度量报告的收集和安全升级功能。其中,节点可信中心可以为bmc芯片,bmc芯片可以运行节点可信管理软件。
[0119]
在本技术实施例中,节点可信中心通过中心可信根对bmc系统进行可信度量,生成bmc系统的第一度量报告,可信计算组件上的硬件可信根可以对本地的组件系统进行度量,生成组件的第二度量报告,节点可信中心可根据服务器的度量格式,将第一度量报告和第二度量报告转化为与上述度量格式对应的第三度量报告,然后将其发送给系统可信中心,以供系统可信中心根据第三度量报告对服务器的进行可信度量。
[0120]
综上可知,本技术在上述服务器新架构基础上提出一种可信度量方案,该方案通过节点可信中心来获取服务器中各个组件的度量报告,不仅可以对未暴露接口的系统进行可信度量,实现对整个服务器所有系统甚至组件的可信度量,而且可以在获得各个组件的度量报告后,对其进行格式转换,使其符合可信度量的统一规则,从而解决架构差异导致服务器出现可信度量不兼容的问题。
[0121]
图2是本技术提供的一种可信度量系统的另一种结构示意图,应理解,图1所示的可信度量系统是以系统维度出发描述的,图2是以硬件维度出发描述的,如图1所示,从硬件的维度出发,该可信度量系统包括服务器100和认证节点200,其中,服务器100和认证节点200之间通过网络建立通信连接,具体可以是有线网络也可以是无线网络,比如以太网或ubus-n总线,本技术不作具体限定。
[0122]
认证节点200可以是物理服务器比如x86、arm服务器等等;还可以是基于通用的物理服务器结合网络功能虚拟化(network functions virtualization,nfv)技术实现的虚拟机(virtual machine,vm),虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,本技术不作具体限定。其中,认证节点200可部署有图1实施例中的系统可信中心,作为一个度量中心对服务器100发送的度量报告进行可信度量。
[0123]
服务器100可以是物理服务器,该服务器的架构为前述内容中的新架构,该架构中,服务器的主板拆分为基础板、扩展板和组件,其中,新架构、基础板、扩展板和组件的描述可参考前述内容,这里不重复赘述。具体实现中,该服务器100可以是单个服务器,也可以是服务器集群中的节点,本技术不作具体限定。可选地,服务器100还可以是存储服务器或者边缘计算设备,其中,上述存储服务器和边缘计算设备的架构为前述内容中的新架构。
[0124]
进一步地,上述服务器100可划分为多个单元、模块或期间,示例性地,如图2所示,该服务器100包括管理芯片110和组件120,其中,组件120的数量可以是一个或者多个,本技术不作具体限定。管理芯片110和组件120之间可以通过总线130建立连接。
[0125]
管理芯片110可包括接口和处理器,其中,处理器可包括集成电路和/或器件,上述集成电路可以编程逻辑器件(programmable logic device,pld)或其组合。上述pld是复杂
编程逻辑器件(complex programmable logic device,cpld)、现场编程逻辑门阵列(field-programmable gate array,fpga)、通用阵列逻辑(generic array logic,gal)或其任意组合。管理芯片110还可包括用于印制处理器的主板,该主板又称为印刷电路板(printed circuit boards,pcb)。可选地,该管理芯片110可以是精简指令集机器(advanced rsic machine,arm)架构的处理器。其中,管理芯片110可部署有图1所述的节点可信中心。
[0126]
管理芯片110可部署有管理系统,该管理系统可以是前述内容中的智能化系统,管理系统用于根据服务器新架构的标准化要求实现对服务器内各个系统进行管理,具体可通过标准管理总线自动探测组件并获取组件的自描述信息,再根据管理对象模板创建管理对象实例,从而实现管理软件自适应管理实现管理软件智能化,支持组件自动发现和自动适配,作为整个服务器100的管理中心,提供设备、安全、能效、可靠性等管理功能。
[0127]
可选地,管理芯片110可以是前述内容中的bmc芯片,也可称为服务器智能管理系统(intelligent baseboard management controller,ibmc)或者基板管理控制器,参考前述内容可知,bmc芯片位于新架构服务器的扩展板上,是对基础板的管理扩展,作为整个系统的管理中心,是面向服务器全生命周期的服务器嵌入式管理系统,提供硬件状态监控、部署、节能、安全等系列管理工具。
[0128]
可以理解的,参考前述内容可知,bmc芯片与各个组件可通过表3所示的各种接口实现通信连接,因此,本技术提供的可信度量系统通过管理芯片110来获取服务器中各个组件的度量报告,可以对未暴露接口的系统进行可信度量,实现对整个服务器所有系统甚至组件的可信度量。
[0129]
组件120可包括存储组件、io组件、加速组件、计算组件、内存扩展组件以及散热组件,io组件包括网卡或者riser;存储组件包括硬盘背板、expander、pcie switch中的一种或者多种;计算组件包括cpu、ddr和电源;加速组件包括载板和加速卡互连switch,其中,加速卡包括图像处理器gpu、dpu、npu中的一种或者多种;内存扩展组件包括载板,还包括内存扩展芯片、dimm、scm介质中的一种或者多种;散热组件包括风冷散热、液冷散热中的一种或者多种。
[0130]
其中,存储组件、io组件、加速组件、内存扩展组件以及散热组件可参考前述实施例中的相关描述,这里不重复赘述,需要说明的,计算组件是前述服务器新架构描述中的基础板,可包括cpu、ddr以及电源。应理解,本技术为了便于理解,将基础板作为一个计算组件划分至组件120中,组件还可以有更多种类的划分方式,具体可以根据实际业务处理场景进行划分,这里不作具体限定。组件120上部署有组件系统,比如计算组件(cpu)对应的业务处理系统,加速组件(比如gpu)对应的图像处理系统,存储组件(比如固态硬盘)对应的存储系统等等,这里不一一举例说明。
[0131]
总线130可包括带外总线和高速总线,高速总线可包括pcie、cxl、或ub等高速总线,带外总线可以是串行外设接口(serial peripheral interface,spi)总线、系统管理总线(systemmanagement bus,smbus)、rs202c、rs422c、usb总线等等,本技术不作具体限定。
[0132]
管理芯片110可通过带外总线与io组件、存储组件和加速组件进行通信连接,比如spi总线、smbus总线等,管理芯片110也可以部署有相应的带外总线控制器,用以实现与io组件、存储组件和加速组件进行通信连接。管理芯片110通过高速总线与计算组件进行通信
连接,比如pcie总线、ub总线等等,管理芯片110也可以部署有相应的高速总线控制器,比如pcie的端点(end point,ep)控制器、ub的ep控制器等等,本技术不作具体限定。cpu与管理芯片110之间的总线130可包括管理接口,其中,管理接口类型可包括ge、vga、usb、uart、pwr btn、uid btn等等,管理接口的具体描述可参考前述内容中的表3,这里不重复赘述。
[0133]
管理芯片110也可以外挂于前述内容中的bmc芯片,该种情况下,管理芯片110通过带外总线与bmc芯片、存储组件、io组件、加速组件建立通信连接,比如spi总线、smbus总线等,管理芯片部署有相应的带外总线控制器实现上述通信连接。管理芯片110通过高速总线与计算组件(比如cpu)建立通信连接,比如pcie总线、ub总线等等,本技术不作具体限定。
[0134]
可以理解的,本技术通过bmc芯片对服务器中各个组件以及bmc芯片本身进行可信度量,由于bmc芯片与cpu本身有计算资源隔离的优势,使得可信度量无需再考虑如何进行资源隔离,降低设计门槛,实现独立硬件保护的双体系安全架构。同时,bmc芯片做完一个面向服务器全生命周期的嵌入式管理系统,与外部网络进行交互的接口很少,网络暴露面比业务处理器少很多,由bmc芯片来实现可信度量可以减少被第三方通过网络进行攻击的可能。
[0135]
在本技术实施例中,管理芯片110可以在服务器上电启动时,采用安全可信的启动方式校验bmc管理系统的软硬件状态,确保自身软硬件的完整性,避免第三方在仓储、运输时通过替换固件的方式获取服务器的控制权限。具体实现中,可通过bsbc软件实现上电启动保护,管理芯片110可设置为出厂不可改,并支持自定义安全启动策略,根据业务需求进行代码安全保护的设置,本技术不对固件检验的具体实现方式进行限定。校验固件完整性成功后,管理芯片110可启动,否则进行警告通知固件不完整或服务器下电等处理。
[0136]
在本技术实施例中,管理芯片110可以在服务器首次上电时对服务器进行可信度量,还可以在服务器运行过程中,以一定频率对服务器进行可信度量。其中,管理芯片110对服务器进行可信度量的步骤流程可以如下:管理芯片110可对管理系统进行可信度量,获取管理系统的第一度量报告,第一度量报告用于表示管理系统的完整性,管理芯片110从组件120获取第二度量报告,第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性,管理芯片根据第一度量报告和第二度量报告对服务器进行可信度量。需要说明的,系统的完整性是指系统本身没有被非授权修改、删除或添加。
[0137]
具体实现中,组件120可包括组件主芯片(即指板卡的主控芯片,也就是板卡上电最先启动的芯片),通过在组件主芯片中集成安全子系统或者外置安全芯片,实现对组件系统进行度量,获得该组件120的第二度量报告。同理,组件主芯片也可以采用安全可信的启动方式校验组件系统的软硬件状态,确保自身软硬件的完整性,避免第三方在仓储、运输时通过替换固件的方式获取组件的控制权限,具体可通过mux(切换开关)连接组件flash,实现组件固件的安全启动的固件校验和可信启动的身份度量。
[0138]
可选地,第一度量报告可包括管理芯片110的身份信息和管理芯片110的度量值,管理芯片110的身份信息包括管理芯片110的软件标识、软件版本、固件标识和固件版本,还可包括其他用于描述管理芯片110的软件和/或固件身份的信息。管理芯片110的度量值用于指示管理芯片110的完整性。同理,第二度量报告可包括组件120的身份信息和组件120的度量值,其中,组件120的身份信息和组件120的度量值可以参考上述管理芯片110的身份信息和管理芯片110的度量值的相关描述,这里不重复展开赘述。
[0139]
具体实现中,上述管理芯片110的度量值可以是管理芯片110对管理系统的代码进行度量后获得的,组件120的度量值可以是组件120对组件系统的代码进行度量后获得的,其中,度量值用于指示系统软件的状态,度量值可以良好的体现出系统软件固件是否发生变化,是否被第三方篡改,若系统被第三方篡改后,系统的度量值将发生改变。
[0140]
可选地,组件120可以通过对组件系统的软件代码段进行哈希(hash)或散列后获得组件系统的度量值,或者,通过杂凑算法计算度量组件系统静态文件的摘要值的方式获得组件系统的度量值,或者通过对组件系统运行时使用的进程、内核模块的内存代码进行哈希后获得组件的度量值,还可以伪随机的方式对设备内存进行遍历和度量获得组件的度量值,应理解,上述获得度量值的方式用于举例说明,组件120还可使用其他方式来获得与组件系统完整性相关的度量值的方法,本技术不做具体限定,同理,管理芯片110获得度量值的方式与组件120类似,这里不重复再开赘述。
[0141]
具体实现中,组件120可以按照组件系统各个软件和固件的启动顺序,逐级对组件系统进行度量,获得组件系统的第二度量报告。简单来说,先启动的软件或固件度量可信后,可以对后一级启动的软件或固件进行度量。举例来说,计算组件(cpu)的业务处理系统的软件固件启动顺序为cpu芯片、固件a、操作系统a和应用a,那么cpu芯片启动后,对固件a进行度量获得固件a的度量值,并将其发送给管理芯片110,管理芯片110向其返回固件a度量结果为可信后,cpu芯片和/或固件a可以对操作系统a的代码段进行度量,获得操作系统a的度量值,并将其发送给管理芯片110,管理芯片想其返回操作系统a的度量结果为可信后,cpu芯片、固件a和操作系统a中可以对应用a进行可信度量,以此类推,这里不一一展开说明。
[0142]
需要说明的,管理芯片110可部署有图1实施例中描述的节点可信根,组件120可部署有图1实施两种描述的组件可信根。具体实现中,可信根包括身份信息和度量代码。其中,身份信息是一个能够标识管理芯片110的身份编码信息,比如设备唯一识别码(unique device secret,uds)或者管理芯片110中部分软件或固件的固件签名。度量代码用于后一级启动的固件进行度量。当然,硬件可信根还可包括更多内容,本技术不对此进行具体限定。
[0143]
举例来说,加速组件的启动顺序为加速组件可信根、固件a、固件b和固件c,加速组件可信根启动后可以使用度量代码对下一个启动的固件a进行度量,生成包含加速组件uds的第二度量报告,将其返回至管理芯片110,管理芯片110通过外部认证节点200对第一度量报告和第二度量报告进行可信度量后,加速组件可信根可以接收到上述固件a度量可信的信息,加速组件可信根可以再对下一个启动的固件b进行度量,以此类推。需要说明的,固件b可以由组件可信根来进行度量,也可以由固件a来进行度量,具体可根据实际业务情况来决定,本技术不对此进行限定。
[0144]
应理解,管理芯片110也可以按照上述逐级度量的方式获得第一度量报告,这里不重复赘述。
[0145]
需要说明的,由于组件120对组件系统以逐级度量的方式获得第二度量报告,因此组件120向管理芯片110发送的第二度量报告中可包括组件系统一个或者多个固件或软件的身份信息以及对应的度量值,具体可根据业务处理逻辑来确定,本技术不作具体限定,其中,第二度量报告中的度量值以及对应的软件固件身份信息可以是按逐级度量顺序记录
的。举例来说,加速组件的启动顺序为固件a、固件b和固件c,那么管理芯片110接收到的第二度量报告可包括固件a的身份信息以及固件a的度量值,也可包括固件a、固件b和固件c的身份信息以及各自的度量值,本技术不对此进行具体限定,且写入顺序为固件a的度量值、固件b的度量值以及固件c的度量值。同理,管理芯片110对管理系统以逐级度量的方式获得的第一度量报告也可包括一个或者多个固件或软件的身份信息以及对应的度量值,第一度量报告和第二度量报告中所包含的软件或固件度量值数量的多少可根据实际情况确定,本技术不作具体限定。
[0146]
在一实施例中,管理芯片110可获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告,然后根据第三度量报告对服务器进行可信度量。具体实现中,管理芯片110可以向认证节点200发送第三度量报告,以供认证节点200根据第三度量报告对服务器进行可信度量。
[0147]
可以理解的,参考前述内容可知,不同厂家、架构的服务器,其组件启动时固件软件的启动顺序并没有统一的标准格式,本技术通过管理芯片110收集管理系统的第一度量报告和各个组件的第二度量报告后,可以对第一度量报告和第二度量报告进行格式转化,使其适配认证节点200的度量格式,避免出现度量格式不同导致度量失败的问题。
[0148]
具体实现中,第三度量报告可包括服务器的身份信息和服务器的度量值,该服务器的度量值用于指示服务器的完整性,服务器的身份信息可以是根据第一度量报告中管理芯片110的身份信息以及第二度量报告中组件120的身份信息获得的,服务器的度量值可以是根据第一度量报告中管理芯片110的度量值以及第二度量报告中组件120的度量值获得的。其中,服务器的身份信息用于供认证节点200获取该服务器对应的标准度量值,通过比较标准度量值和管理芯片110发送的度量值来对服务器进行可信度量。
[0149]
可选地,上述第三度量报告中的服务器的度量值,可以是一系列的组件和管理芯片的度量值组成的,也可以是根据组件的度量值和管理芯片的度量值整合成的一个值,还可以是包括部分组件的度量值和管理芯片的度量值,还包括另一部分组件的度量值和管理芯片的度量值整合而成的整合值。管理芯片110可以将第一度量报告和第二度量报告中记录的度量值的顺序进行调换,也可以是对度量值进行整合,具体可根据认证节点200的可信度量格式来决定,本技术不对此进行具体限定。其中,上述可信度量格式可以是管理芯片110与认证节点200建立通信连接后获得的。
[0150]
举例来说,假设认证节点200对组件x进行可行认证的可信度量格式为,先对组件x的a固件进行度量,然后对b固件进行度量,a固件和b固件的度量结果为可信后,再将b固件的度量值与c固件的度量值叠加获得叠加度量值,根据该叠加度量值对c固件进行可信度量,简单来说,认证节点200的可信度量格式中的度量顺序为:固件a、固件b以及叠加度量值bc,假设组件x的启动顺序为固件b、固件a和固件c,那么管理芯片110接收到的第二度量报告中各个固件的度量顺序为:固件b的度量值、a的度量值以及固件c的度量值,管理芯片可以将固件第二度量报告中的顺序调整为可信度量格式对应的度量顺序,使得认证节点200可以按照可信度量格式对该服务器进行可信度量。应理解,上述举例用于说明,本技术不作具体限定。
[0151]
可选地,管理芯片110也可以对第三度量报告进行服务器的可信度量,不通过认证节点200对服务器进行可信度量。具体地,管理芯片110可以根据第三度量报告中的服务器
的身份信息获取服务器对应的标准度量值,根据标准度量值和第三度量报告中的度量值来对服务器进行可信度量,其中,服务器的标准度量值可以是管理芯片110提前下载的,也可以是远程向认证节点200获取的,本技术不作具体限定。
[0152]
举例来说,用户购买服务器之前,可以向服务器提供商获取标准度量值和可信度量格式,管理芯片110对管理系统进行度量获得第一度量报告,组件120对组件系统进行度量获得第二度量报告后,管理芯片110可以根据提前获取的可信度量格式将第一度量报告和第二度量报告转化为第三度量报告,并根据第三度量报告和标准度量值进行服务的可信度量,应理解,上述举例用于说明,本技术不作具体限定。
[0153]
可选地,上述服务器的标准度量值可以是预设的标准度量值,也可以是根据服务器首次进行可信度量时获得的首次度量值确定的,首次度量值可包括服务器启动时组件120的度量值以及管理芯片110的度量值,可以理解的,如果服务器在运行过程中被第三方篡改了软件或固件,那么服务器的度量值将会发生变化,因此将首次度量值作为标准度量值可判断服务器在运行过程中是否发生改变,实现服务器的可信度量。具体实现中,标准度量值可以是单个数值也可以是多个数值组成的系列值,标准度量值与可信度量格式所需的标准值是对应的,具体可个根据实际处理情况确定,本技术不作具体限定。
[0154]
下面结合图3,对本技术提供的可信度量系统的度量过程进行说明,图3是本技术提供的一种可信度量系统的交互流程示意图,其中,图3所描述的交互流程包括组件侧流程、管理芯片侧流程和认证节点侧流程,其中,组件侧描述的是前述内容中组件120实现的内容,管理芯片侧描述的是管理芯片110实现的内容,认证节点侧描述的是认证节点200实现的内容,下面分别对此进行解释说明。
[0155]
组件侧:组件120上的硬件可信根、固件签名以及应用内存通过哈希散列算法生成组件融合身份证书。其中,组件融合身份证书可以是前述内容中的第二度量报告,硬件可信根可参考前述内容的描述,这里不重复赘述,固件签名可以是前述内容中的软件固件的身份信息,具体还可以是uds等等,应用内存是组件系统应用运行的代码所在的内存,对该代码进行哈希可获得的前述内容中的度量值。同理,管理芯片110也可按照组件侧描述的步骤流程,对管理系统进行度量获得第一度量报告,也可称为管理系统融合身份证书。
[0156]
管理芯片侧:管理芯片110上的bmc硬件可信根各个组件的融合身份证书以及管理系统融合身份证书进行融合,获得节点融合身份证书,这里的节点融合身份证书可以是前述内容中的第三度量报告,也就是说,管理芯片110根据认证节点200的可信度量格式,将多个融合身份证书进行格式转换等操作,获得节点融合身份证书。
[0157]
可选地,管理芯片110还可以对节点融合身份证书(也就是第三度量报告)进行加密,例如图3所示的签名计算操作,根据远程证明私钥对节点融合身份证书进行签名计算,获得节点融合身份证书签名,可以理解的,对节点融合身份证书进行加密,可以确保度量过程中不会被第三方通过网络拦截的方式获取度量报告,确保度量结果的真实准确。
[0158]
认证节点侧:认证节点200可以将接收到的节点融合身份证书、节点融合身份证书签名通过远程证明公钥进行签名验证,验证通过后,将节点融合身份证书和标准度量值进行比对,确定服务器的可信度量结果。
[0159]
其中,远程证明公钥和远程证明私钥可以是加密算法中的密钥,上述加密算法可以是非对称加密算法(rsa),md5、对称加密算法等等,本技术不对加密算法的具体实现方式
进行限定。
[0160]
综上可知,本技术提供的可信度量系统中,通过管理芯片来获取服务器中各个组件的度量报告,不仅可以对未暴露接口的系统进行可信度量,实现对整个服务器所有系统甚至组件的可信度量,而且可以在获得各个组件的度量报告后,对其进行格式转换,使其符合可信度量的统一规则,从而解决架构差异导致服务器出现可信度量不兼容的问题。
[0161]
下面结合图4,对本技术提供的可信度量方法进行解释说明,该可信度量方法可应用于图1~图3所示的新架构服务器上,该方法可包括以下步骤:
[0162]
步骤s410:管理芯片110对管理系统进行可信度量,获取管理系统的第一度量报告,该第一度量报告用于标识管理系统的完整性。
[0163]
在一实施例中,上述管理芯片110可以是前述内容中的bmc芯片,其中,bmc芯片的描述可参考前述实施例,这里不重复赘述。
[0164]
在一实施例中,管理芯片110在服务首次启动的情况下对管理系统进行可信度量,或者,管理芯片110在服务器运行过程中周期性对管理系统进行可信度量。
[0165]
在一实施例中,第一度量报告可包括管理芯片110的身份信息和管理芯片110的度量值,管理芯片110的身份信息包括管理芯片110的软件标识、软件版本、固件标识和固件版本,还可包括其他用于描述管理芯片110的软件和/或固件身份的信息。管理芯片110的度量值用于指示管理芯片110的完整性。
[0166]
具体实现中,上述管理芯片110的度量值可以是管理芯片110对管理系统的代码进行度量后获得的,其中,度量值用于指示系统软件的状态,度量值可以良好的体现出系统软件固件是否发生变化,是否被第三方篡改,若系统被第三方篡改后,系统的度量值将发生改变。
[0167]
可选地,管理芯片110可以通过对管理系统的软件代码段进行哈希(hash)或散列后获得管理芯的度量值,或者,通过杂凑算法计算度量管理系统静态文件的摘要值的方式获得管理芯片的度量值,或者通过对管理系统运行时使用的进程、内核模块的内存代码进行哈希后获得管理芯片的度量值,还可以伪随机的方式对管理系统内存进行遍历和度量获得管理芯片的度量值,应理解,上述获得度量值的方式用于举例说明,管理芯片110还可使用其他方式来获得与管理系统完整性相关的度量值的方法,本技术不做具体限定。
[0168]
具体实现中,管理芯片110可以按照组件系统各个软件和固件的启动顺序,逐级对管理系统进行度量,获得管理芯片110的第一度量报告。简单来说,先启动的软件或固件度量可信后,可以对后一级启动的软件或固件进行度量。
[0169]
需要说明的,由于管理芯片110对管理系统以逐级度量的方式获得第一度量报告,因此第一度量报告中可包括管理系统内的一个或者多个固件或软件的身份信息以及对应的度量值,具体可根据业务处理逻辑来确定,本技术不作具体限定,其中,第一度量报告中的度量值以及对应的软件固件身份信息可以是按逐级度量顺序记录的。
[0170]
步骤s420:管理芯片110从组件120获取第二度量报告,该第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性。
[0171]
在一实施例中,上述组件包括以下至少一种:计算组件、存储组件、io组件和加速组件。其中,计算组件、存储组件、io组件和加速组件的描述可参考前述实施例的相关描述,这里不重复赘述。
[0172]
在一实施例中,第二度量报告是组件对组件系统的代码进行度量后获得的,第一度量报告是管理芯片对管理系统的代码进行度量后获得的。其中,组件120获得第二度量报告的方式可参考步骤s410中关于管理芯片110获得第一度量报告的方式,这里不重复赘述。
[0173]
步骤s430:管理芯片110根据第一度量报告和第二度量报告对服务器进行可信度量。
[0174]
在一可能的实现方式中,管理芯片110可以获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告,根据第三度量报告对服务器进行可信度量。
[0175]
可以理解的,参考前述内容可知,不同厂家、架构的服务器,其组件启动时固件软件的启动顺序并没有统一的标准格式,本技术通过管理芯片110收集管理系统的第一度量报告和各个组件的第二度量报告后,可以对第一度量报告和第二度量报告进行格式转化,使其适配认证节点200的度量格式,避免出现度量格式不同导致度量失败的问题。
[0176]
在一可能的实现方式中,第三度量报告包括服务器的身份信息和服务器的度量值,服务器的度量值用于指示服务器的完整性,管理芯片对第三度量报告进行认证时,可以根据服务器的身份信息从本地或远程获取服务器的标准度量值,根据服务器的度量值和服务器的标准度量值对服务器进行可信度量。具体实现中,服务器的身份信息可以是根据第一度量报告中管理芯片110的身份信息以及第二度量报告中组件120的身份信息获得的,服务器的度量值可以是根据第一度量报告中管理芯片110的度量值以及第二度量报告中组件120的度量值获得的。
[0177]
可选地,上述第三度量报告中的服务器的度量值,可以是一系列的组件和管理芯片的度量值组成的,也可以是根据组件的度量值和管理芯片的度量值整合成的一个值,还可以是包括部分组件的度量值和管理芯片的度量值,还包括另一部分组件的度量值和管理芯片的度量值整合而成的整合值。管理芯片110可以将第一度量报告和第二度量报告中记录的度量值的顺序进行调换,也可以是对度量值进行整合,具体可根据认证节点200的可信度量格式来决定,本技术不对此进行具体限定。其中,上述可信度量格式可以是管理芯片110与认证节点200建立通信连接后获得的。
[0178]
在一可能的实现方式中,管理芯片110也可以向认证节点200发送第三度量报告,认证节点200也可以将标准度量值和第三度量报告中的服务器的度量值进行比对,实现对服务器的可信度量。
[0179]
可选地,管理芯片110也可以对第三度量报告进行服务器的可信度量,不通过认证节点200对服务器进行可信度量。具体地,管理芯片110可以根据第三度量报告中的服务器的身份信息获取服务器对应的标准度量值,根据标准度量值和第三度量报告中的度量值来对服务器进行可信度量,其中,服务器的标准度量值可以是管理芯片110提前下载的,也可以是远程向认证节点200获取的,本技术不作具体限定。
[0180]
可选地,上述服务器的标准度量值可以是预设的标准度量值,也可以是根据服务器首次进行可信度量时获得的首次度量值确定的,首次度量值可包括服务器启动时组件120的度量值以及管理芯片110的度量值,可以理解的,如果服务器在运行过程中被第三方篡改了软件或固件,那么服务器的度量值将会发生变化,因此将首次度量值作为标准度量值可判断服务器在运行过程中是否发生改变,实现服务器的可信度量。具体实现中,标准度
量值可以是单个数值也可以是多个数值组成的系列值,标准度量值与可信度量格式所需的标准值是对应的,具体可个根据实际处理情况确定,本技术不作具体限定。
[0181]
在一种可能的实现方式中,管理芯片110生成第三度量报告后,可以通过预置的密钥对第三度量报告进行加密,然后将加密后的第三度量报告发送给认证节点200,认证节点200可通过预置的密钥对上述加密后的第三度量报告进行解密,获得第三度量报告,对其进行可信度量。具体实现中,上述过程可参考图3实施例中的详细描述,这里不重复再开赘述。远程公钥和远程证明私钥可以是加密算法中的密钥,上述加密算法可以是非对称加密算法(rsa),md5、对称加密算法等等,本技术不对加密算法的具体实现方式进行限定。
[0182]
综上可知,本技术提供的可信度量方法,通过管理芯片来获取服务器中各个组件的度量报告,不仅可以对未暴露接口的系统进行可信度量,实现对整个服务器所有系统甚至组件的可信度量,而且可以在获得各个组件的度量报告后,对其进行格式转换,使其符合可信度量的统一规则,从而解决架构差异导致服务器出现可信度量不兼容的问题。
[0183]
图5是本技术提供的一种芯片的结构示意图,该芯片500可以是前述内容中的管理芯片110,如图5所示,该芯片可包括管理系统度量单元510、获取单元520和服务器度量单元530。
[0184]
管理系统度量单元510,用于对管理系统进行可信度量,获取管理系统的第一度量报告,第一度量报告用于表示管理系统的完整性;
[0185]
获取单元520,用于从组件获取第二度量报告,第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性;
[0186]
服务器度量单元530,用于根据第一度量报告和第二度量报告对服务器进行可信度量。
[0187]
在一可能的实现方式中,组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。
[0188]
在一可能的实现方式中,管理系统度量单元510,用于在服务器首次启动的情况下对管理系统进行可信度量,或者,管理系统度量单元510,用于在服务器运行过程中,周期性对管理系统进行可信度量。
[0189]
在一可能的实现方式中,第二度量报告是组件对组件系统的代码进行度量后获得的,第一度量报告是芯片对管理系统的代码进行度量后获得的。
[0190]
在一可能的实现方式中,服务器度量单元530,用于获取服务器的可信度量格式,将第一度量报告和第二度量报告转化为可信度量格式对应的第三度量报告;服务器度量单元530,用于根据第三度量报告对服务器进行可信度量。
[0191]
在一可能的实现方式中,第三度量报告包括服务器的身份信息和服务器的度量值,服务器度量单元530,用于根据服务器的身份信息从本地或远程获取服务器的标准度量值,根据服务器的度量值和服务器的标准度量值对服务器进行可信度量。
[0192]
在一可能的实现方式中,服务器度量单元530,用于向认证节点发送第三度量报告,以供认证节点根据第三度量报告对服务器进行可信度量。
[0193]
在一可能的实现方式中,io组件包括网卡或者riser;存储组件包括硬盘背板、expander、pcie switch中的一种或者多种;计算组件包括cpu、ddr和电源;加速组件包括载板和加速卡互连switch,其中,加速卡包括图像处理器gpu、dpu、npu中的一种或者多种;内
存扩展组件包括载板,还包括内存扩展芯片、dimm、scm介质中的一种或者多种;散热组件包括风冷散热、液冷散热中的一种或者多种。
[0194]
在一可能的实现方式中,芯片500是服务器中的主板管理控制器bmc芯片。
[0195]
综上可知,本技术提供芯片可获取服务器中各个组件的度量报告,不仅可以对未暴露接口的系统进行可信度量,实现对整个服务器所有系统甚至组件的可信度量,而且可以在获得各个组件的度量报告后,对其进行格式转换,使其符合可信度量的统一规则,从而解决架构差异导致服务器出现可信度量不兼容的问题。
[0196]
图6是本技术提供的一种芯片的另一种结构示意图,该芯片600是图1至图5实施例中的管理芯片。进一步地,芯片600包括计算单元601、存储器602和通信接口603,其中,计算单元601、存储器602和通信接口603通过总线604进行通信,也通过无线传输等其他手段实现通信。
[0197]
计算单元601是编程逻辑器件(programmable logic device,pld)。比如复杂编程逻辑器件(complex programmable logic device,cpld)、现场编程逻辑门阵列(field-programmable gate array,fpga)、通用阵列逻辑(generic array logic,gal)或其任意组合。计算单元601执行各种类型的数字存储指令,例如存储在存储器602中的软件或者固件程序,它能使芯片600提供较宽的多种服务。
[0198]
存储器602用于存储程序代码,并由计算单元601来控制执行,以执行上述图1-图5中任一实施例中管理芯片110的处理步骤。程序代码中包括一个或多个软件单元,上述一个或多个软件单元是图5实施例中的管理系统度量单元、获取单元和服务度量单元,其中,管理系统度量单元用于对管理系统进行可信度量,获取管理系统的第一度量报告,获取单元用于从组件获取第二度量报告,服务器度量单元用于根据第一度量报告和第二度量报告对服务器进行可信度量,具体实现方式参考图1~图5实施例的描述,此处不再赘述。
[0199]
存储器602包括只读存储器和随机存取存储器,并向计算单元601提供指令和数据。存储器602还包括非易失性随机存取存储器。例如,存储器602可用于存储第一度量报告、第二度量报告以及第三度量报告,还可用于存储用于对第三度量报告进行加密的密钥。
[0200]
存储器602是易失性存储器或非易失性存储器,或包括易失性和非易失性存储器两者。其中,非易失性存储器是只读存储器(read-only memory,rom)、编程只读存储器(programmable rom,prom)、擦除编程只读存储器(erasable prom,eprom)、电擦除编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data date sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。还是硬盘(hard disk)、u盘(universal serial bus,usb)、闪存(flash)、sd卡(secure digital memory card,sd card)、记忆棒等等,硬盘是硬盘驱动器(hard disk drive,hdd)、固态硬盘(solid state disk,ssd)、机械硬盘(mechanical hard disk,hdd)等,本技术不作具体限定。
[0201]
通信接口603为有线接口(例如以太网接口),为内部接口(例如高速串行计算机扩
展总线(peripheral component interconnect express,pcie)总线接口)、有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他服务器或单元进行通信,具体实现中,通信接口603用于向认证节点发送第三度量报告,向组件获取第二度量报告。具体实现中,通信接口603的具体实现方式可参考前述表2实施中关于bmc芯片的接口描述,这里不重复赘述。
[0202]
总线604是快捷外围部件互联标准(peripheral component interconnect express,pcie)总线,或扩展工业标准结构(extended industry standard architecture,eisa)总线、统一总线(unified bus,ubus或ub)、计算机快速链接(compute express link,cxl)、缓存一致互联协议(cache coherent interconnect for accelerators,ccix)等。总线604包括带外总线和高速总线等,上述带外总线和高速总线的描述可参考图1~图5实施例,这里不重复赘述。为了清楚说明起见,在图中将各种总线都标为总线604。
[0203]
需要说明的,图6仅仅是本技术实施例的一种能的实现方式,实际应用中,芯片600还包括更多或更少的部件,这里不作限制。关于本技术实施例中未示出或未描述的内容,参见前述图1-图5实施例中的相关阐述,这里不再赘述。
[0204]
本技术实施例提供一种计算机读存储介质,包括:该计算机读存储介质中存储有计算机指令;当该计算机指令在计算机上运行时,使得该计算机执行上述方法实施例所述的可信度量方法。
[0205]
本技术实施例提供了一种包含指令的计算机程序产品,包括计算机程序或指令,当该计算机程序或指令在计算机上运行时,使得该计算机执行上述方法实施例所述的可信度量方法。
[0206]
本技术实施例提供了一种芯片,包括业务核和安全核,其中,安全核用于实现前述内容中的bmc芯片的管理功能,安全核用于实现上述的方法实施例所述的可信度量方法。
[0207]
上述实施例,全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例全部或部分地以计算机程序产品的形式实现。计算机程序产品包括至少一个计算机指令。在计算机上加载或执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机为通用计算机、专用计算机、计算机网络、或者其他编程装置。计算机指令存储在计算机读存储介质中,或者从一个计算机读存储介质向另一个计算机读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机读存储介质是计算机能够存取的任何用介质或者是包含至少一个用介质集合的服务器、数据中心等数据存储节点。用介质是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,dvd)、或者半导体介质。半导体介质是ssd。
[0208]
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,轻易想到各种等效的修复或替换,这些修复或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:
1.一种可信度量方法,其特征在于,所述方法应用于服务器,所述服务器包括管理芯片和组件,所述管理芯片和所述组件通过总线建立通信连接,所述方法包括:所述管理芯片对管理系统进行可信度量,获取所述管理系统的第一度量报告,所述第一度量报告用于表示管理系统的完整性;所述管理芯片从所述组件获取第二度量报告,所述第二度量报告为所述组件系统的可信度量报告,所述第二度量报告用于指示所述组件的完整性;所述管理芯片根据所述第一度量报告和所述第二度量报告对所述服务器进行可信度量。2.根据权利要求1所述的方法,其特征在于,所述组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。3.根据权利要求1或2所述的方法,其特征在于,所述管理芯片在所述服务器首次启动的情况下对所述管理系统进行可信度量,或者,所述管理芯片在所述服务器运行过程中,周期性对所述管理系统进行可信度量。4.根据权利要求1至3任一权利要求所述的方法,其特征在于,所述第二度量报告是所述组件对所述组件系统的代码进行度量后获得的,所述第一度量报告是所述管理芯片对所述管理系统的代码进行度量后获得的。5.根据权利要求1至4中任一权利要求所述的方法,其特征在于,所述管理芯片根据所述第一度量报告和所述第二度量报告对所述服务器进行可信度量包括:所述管理芯片获取所述服务器的可信度量格式,将所述第一度量报告和所述第二度量报告转化为所述可信度量格式对应的第三度量报告;所述管理芯片根据所述第三度量报告对所述服务器进行可信度量。6.根据权利要求5所述的方法,其特征在于,所述第三度量报告包括所述服务器的身份信息和所述服务器的度量值,所述服务器的度量值用于指示所述服务器的完整性,所述管理芯片对所述第三度量报告进行认证包括:所述管理芯片根据所述服务器的身份信息从本地或远程获取所述服务器的标准度量值,根据所述服务器的度量值和所述服务器的标准度量值对所述服务器进行可信度量。7.根据权利要求5或6所述的方法,其特征在于,所述管理芯片根据所述第三度量报告对所述服务器进行可信度量包括:所述管理芯片向认证节点发送所述第三度量报告,以供所述认证节点根据所述第三度量报告对所述服务器进行可信度量。8.根据权利要求1至7任一权利要求所述的方法,其特征在于,所述io组件包括网卡或高速串行计算机扩展总线标准pcie扩展卡riser;所述存储组件包括硬盘背板、扩展板expander、pcie交换机switch中的一种或者多种;所述计算组件包括中央处理器cpu、双倍数据速率ddr和电源;所述加速组件包括载板和加速卡互连交换机switch,其中,所述加速卡包括图像处理器gpu、处理器分散处理单元dpu、神经网络处理器npu中的一种或者多种;所述内存扩展组件包括载板,还包括内存扩展芯片、双列直插内存模块dimm、内存级存储介质scm介质中的一种或者多种;所述散热组件包括风冷散热、液冷散热中的一种或者多种。
9.根据权利要求1至8任一权利要求所述的方法,其特征在于,所述管理芯片是服务器中的主板管理控制器bmc芯片。10.一种服务器,其特征在于,包括管理芯片和组件,所述管理芯片和所述组件通过总线建立通信连接,所述管理芯片,用于对管理系统进行可信度量,获取所述管理系统的第一度量报告,所述第一度量报告用于表示管理系统的完整性;所述组件,用于对组件系统进行可信度量,获取组件系统的第二度量报告,所述第二度量报告用于表示组件系统的完整性;所述管理芯片,用于从所述组件获取第二度量报告,根据所述第一度量报告和所述第二度量报告对所述服务器进行可信度量。11.根据权利要求10所述的服务器,其特征在于,所述组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。12.根据权利要求10或11所述的服务器,其特征在于,所述管理芯片,用于在所述服务器首次启动的情况下对所述管理系统进行可信度量;或者,所述管理芯片,用于在所述服务器运行过程中,周期性对所述管理系统进行可信度量。13.根据权利要求10至12任一权利要求所述的服务器,其特征在于,所述第二度量报告是所述组件对所述组件系统的代码进行度量后获得的,所述第一度量报告是所述管理芯片对所述管理系统的代码进行度量后获得的。14.根据权利要求10至13中任一权利要求所述的服务器,其特征在于,所述管理芯片,用于获取所述服务器的可信度量格式,将所述第一度量报告和所述第二度量报告转化为所述可信度量格式对应的第三度量报告;所述管理芯片,用于根据所述第三度量报告对所述服务器进行可信度量。15.根据权利要求14所述的服务器,其特征在于,所述第三度量报告包括所述服务器的身份信息和所述服务器的度量值,所述服务器的度量值用于指示所述服务器的完整性,所述管理芯片,用于根据所述服务器的身份信息从本地或远程获取所述服务器的标准度量值,根据所述服务器的度量值和所述服务器的标准度量值对所述服务器进行可信度量。16.根据权利要求14或15所述的服务器,其特征在于,所述管理芯片,用于向认证节点发送所述第三度量报告,以供所述认证节点根据所述第三度量报告对所述服务器进行可信度量。17.根据权利要求10至16任一权利要求所述的服务器,其特征在于,所述io组件包括网卡或高速串行计算机扩展总线标准pcie扩展卡riser;所述存储组件包括硬盘背板、扩展板expander、pcie交换机switch中的一种或者多种;所述计算组件包括中央处理器cpu、双倍数据速率ddr和电源;所述加速组件包括载板和加速卡互连交换机switch,其中,所述加速卡包括图像处理器gpu、处理器分散处理单元dpu、神经网络处理器npu中的一种或者多种;所述内存扩展组件包括载板,还包括内存扩展芯片、双列直插内存模块dimm、内存级存储介质scm介质中的一种或者多种;所述散热组件包括风冷散热、液冷散热中的一种或者多种。
18.根据权利要求10至17任一权利要求所述的服务器,其特征在于,所述管理芯片是服务器中的主板管理控制器bmc芯片。19.一种芯片,其特征在于,所述芯片所在的服务器包括组件,所述芯片和所述组件通过总线建立通信连接,所述芯片包括:管理系统度量单元,用于对管理系统进行可信度量,获取所述管理系统的第一度量报告,所述第一度量报告用于表示管理系统的完整性;获取单元,用于从所述组件获取第二度量报告,所述第二度量报告为所述组件系统的可信度量报告,所述第二度量报告用于指示所述组件的完整性;服务器度量单元,用于根据所述第一度量报告和所述第二度量报告对所述服务器进行可信度量。20.根据权利要求19所述的芯片,其特征在于,所述组件包括以下至少一种:计算组件、存储组件、io组件、加速组件、内存扩展组件和散热组件。21.根据权利要求19或20所述的芯片,其特征在于,所述管理系统度量单元,用于在所述服务器首次启动的情况下对所述管理系统进行可信度量,或者,所述管理系统度量单元,用于在所述服务器运行过程中,周期性对所述管理系统进行可信度量。22.根据权利要求19至21任一权利要求所述的芯片,其特征在于,所述第二度量报告是所述组件对所述组件系统的代码进行度量后获得的,所述第一度量报告是所述芯片对所述管理系统的代码进行度量后获得的。23.根据权利要求19至22中任一权利要求所述的芯片,其特征在于,所述服务器度量单元,用于获取所述服务器的可信度量格式,将所述第一度量报告和所述第二度量报告转化为所述可信度量格式对应的第三度量报告;服务器度量单元,用于根据所述第三度量报告对所述服务器进行可信度量。24.根据权利要求23所述的芯片,其特征在于,所述第三度量报告包括所述服务器的身份信息和所述服务器的度量值,所述服务器度量单元,用于根据所述服务器的身份信息从本地或远程获取所述服务器的标准度量值,根据所述服务器的度量值和所述服务器的标准度量值对所述服务器进行可信度量。25.根据权利要求23或24所述的芯片,其特征在于,所述服务器度量单元,用于向认证节点发送所述第三度量报告,以供所述认证节点根据所述第三度量报告对所述服务器进行可信度量。26.根据权利要求19至25任一权利要求所述的芯片,其特征在于,所述io组件包括网卡或高速串行计算机扩展总线标准pcie扩展卡riser;所述存储组件包括硬盘背板、扩展板expander、pcie交换机switch中的一种或者多种;所述计算组件包括中央处理器cpu、双倍数据速率ddr和电源;所述加速组件包括载板和加速卡互连交换机switch,其中,所述加速卡包括图像处理器gpu、处理器分散处理单元dpu、神经网络处理器npu中的一种或者多种;所述内存扩展组件包括载板,还包括内存扩展芯片、双列直插内存模块dimm、内存级存储介质scm介质中的一种或者多种;所述散热组件包括风冷散热、液冷散热中的一种或者多种。27.根据权利要求19至26任一权利要求所述的芯片,其特征在于,所述芯片是服务器中
的主板管理控制器bmc芯片。28.一种芯片,其特征在于,所述芯片包括业务核和安全核,所述安全核用于运行指令实现如权利要求1至9任一权利要求所述的方法,所述管理核用于运行指令实现管理功能。29.一种芯片,其特征在于,所述芯片包括计算单元和存储器,所述存储器用于存储代码,所述计算单元用于执行所述代码实现如权利要求1至9任一权利要求所述的方法。
技术总结
本申请提供了一种可信度量方法、服务器以及芯片,该方法应用于服务器,该服务器包括管理芯片和组件,管理芯片和组件通过总线建立通信连接,该方法包括以下步骤:管理芯片对管理系统进行可信度量,获取管理系统的第一度量报告,第一度量报告用于表示管理系统的完整性,管理芯片从组件获取第二度量报告,第二度量报告为组件系统的可信度量报告,第二度量报告用于指示组件的完整性,管理芯片根据第一度量报告和第二度量报告对服务器进行可信度量,从而实现服务器对组件的可信度量,提高服务器的安全性。全性。全性。
技术研发人员:张超 李小川 吴玲玲 邓威威 李宏
受保护的技术使用者:华为技术有限公司
技术研发日:2022.02.28
技术公布日:2023/9/7
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种协程管理方法以及相关装置与流程 下一篇:一种通信装置的制作方法