CN114969713A - 设备验证方法、设备及系统 - Google Patents
设备验证方法、设备及系统 Download PDFInfo
- Publication number
- CN114969713A CN114969713A CN202210576997.XA CN202210576997A CN114969713A CN 114969713 A CN114969713 A CN 114969713A CN 202210576997 A CN202210576997 A CN 202210576997A CN 114969713 A CN114969713 A CN 114969713A
- Authority
- CN
- China
- Prior art keywords
- pcie
- management module
- firmware
- processing module
- device management
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 152
- 238000000034 method Methods 0.000 title claims abstract description 105
- 238000012545 processing Methods 0.000 claims abstract description 125
- 230000002093 peripheral effect Effects 0.000 claims abstract description 18
- 230000015654 memory Effects 0.000 claims description 25
- 230000006870 function Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 10
- 238000007726 management method Methods 0.000 description 172
- 238000010586 diagram Methods 0.000 description 31
- 230000004044 response Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101150082208 DIABLO gene Proteins 0.000 description 1
- 102100033189 Diablo IAP-binding mitochondrial protein Human genes 0.000 description 1
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供一种设备验证方法、设备及系统,该方法应用于电子设备,电子设备包括处理模块和设备管理模块,该方法包括:设备管理模块获取快速外设组件互联PCIE设备的固件;设备管理模块对固件进行验证;若验证通过,设备管理模块向处理模块发送第一验证结果;第一验证结果用于指示处理模块向PCIE设备分配外设组件互联PCI资源,PCI资源为PCIE设备应用于处理模块的资源;若验证不通过,设备管理模块向处理模块发送第二验证结果,第二验证结果用于指示处理模块不向PCIE设备分配PCI资源。通过上述方法可以实现PCIE设备的安全启动,从而保证整个电子设备的安全可信。
Description
技术领域
本申请涉及计算机安全技术领域,尤其涉及一种设备验证方法、设备及系统。
背景技术
电子设备可以与快速外设组件互联(Peripheral Component InterconnectExpress,PCIE)设备连接(通信)。例如,电子设备可以为计算机、服务器;电子设备中可以包括设备管理模块、基本输入输出系统(Basic Input Output System,BIOS);PCIE设备可以为网卡、图形处理器(Graphic Processing Unit,GPU)。按照网络安全要求,在电子设备启动时,要对电子设备中的各个模块、以及与电子设备连接的PCIE设备进行安全验证,以确保电子设备安全可信。
相关技术中,主要由电子设备中的设备管理模块执行安全验证。然而,设备管理模块只能对电子设备中各模块进行安全验证,而不能对PCIE设备进行安全验证。从而不能保证PCIE设备的完整性及合法性,导致无法保证电子设备的安全可信。
因此,在电子设备启动时,如何完成PCIE设备的安全验证是一个亟待解决的问题。
发明内容
本申请提供了一种设备验证方法、设备及系统,用于对PCIE设备进行安全验证,实现PCIE设备的安全启动,确保电子设备的安全可信。
第一方面,本申请实施例提供一种设备验证方法应用于电子设备,所述电子设备包括处理模块和设备管理模块,所述方法包括:
所述设备管理模块获取快速外设组件互联PCIE设备的固件;
所述设备管理模块对所述固件进行验证;
若所述验证通过,所述设备管理模块向所述处理模块发送第一验证结果;所述第一验证结果用于指示所述处理模块向所述PCIE设备分配外设组件互联PCI资源,所述PCI资源为所述PCIE设备应用于所述处理模块的资源。
上述方法中,设备管理模块可以获取PCIE设备的固件、对固件进行验证,并向处理模块发送验证结果。验证通过时,处理模块向PCIE设备分配PCI资源;验证未通过时,处理模块不向PCIE设备分配PCI资源。通过上述方法,可以实现PCIE设备的安全启动,从而保证整个电子设备的安全可信。
在一种可能的实施方式中,若所述验证不通过,所述设备管理模块向所述处理模块发送第二验证结果,所述第二验证结果还用于指示所述处理模块控制所述PCIE设备处于下电状态或复位状态。
上述方法中,验证未通过时,处理模块还可以控制PCIE设备处于下电状态或复位状态,这样可以更彻底地排除不安全的PCIE设备对电子设置的影响。其中,下电状态也可以称为断电状态(电流为0)或休眠状态(电流低于阈值);复位状态也可称为默认状态或初始状态。
在一种可能的实施方式中,所述设备管理模块获取快速外设组件互联PCIE设备的固件,包括:
所述设备管理模块向所述处理模块发送第一指令,所述第一指令用于获取所述PCIE设备的固件;
所述设备管理模块接收到所述处理模块发送的所述PCIE设备的固件,所述固件为所述处理模块基于所述第一指令从所述PCIE设备获取的。
上述方法中,设备管理模块可以向处理模块发送获取PCIE设备固件的第一指令。处理模块可以根据第一指令从PCIE设备中获取PCIE设备的固件,并向设备管理模块转发PCIE设备的固件。通过上述方法,设备管理模块可以获取PCIE设备的固件,以便于对PCIE设备的固件进行安全验证。
在一种可能的实施方式中,所述设备管理模块获取快速外设组件互联PCIE设备的固件,包括:
所述设备管理模块向所述PCIE设备发送第二指令,所述第二指令用于获取所述PCIE设备的固件;
所述设备管理模块接收到所述PCIE设备发送的所述PCIE设备的固件。
上述方法中,设备管理模块可以直接从PCIE设备中获取PCIE设备的固件,使得设备管理模块可以快速获取PCIE设备的固件。在一种可能的实施方式中,所述设备管理模块基于预存的公钥对所述数字签名进行解密,之前还包括:
所述设备管理模块获取所述PCIE设备的公钥。
上述方法中,设备管理模块可以获取得到PCIE设备的公钥,使得设备管理模块可以对PCIE设备的固件进行安全验证。
在一种可能的实施方式中,所述设备管理模块向所述处理模块发送第一验证结果,包括:
所述设备管理模块向所述处理模块发送所述PCIE设备的设备信息;
所述设备管理模块接收所述处理模块发送的查询请求,所述查询请求用于获取所述PCIE设备的验证结果;
所述设备管理模块向所述处理模块发送第一验证结果。
上述方法中,设备管理模块可以用过请求和应答的方式向处理模块发送验证结果,实现了验证结果的安全发送。
在一种可能的实施方式中,所述PCI资源包括内存空间、总线/设备/功能BDF中的一项或多项。
上述方法中,PCI资源可以使PCIE设备在操作系统中可用。
在一种可能的实施方式中,所述设备管理模块和PCIE设备之间的通信接口为系统管理总线SMBus接口,或者网络控制器边带NC-SI接口。
上述方法中,设备管理模块和PCIE设备之间可以设有SMBus接口,或者NC-SI接口,使得设备管理模块可以和PCIE设备直接通信。
在一种可能的实施方式中,所述第一指令为平台级数据模型PLDM消息。
上述方法中,设备管理模块可以通过第一指令获取PCIE设备的固件,以便于对PCIE设备的固件进行安全验证。
第二方面,本申请实施例提供一种计算设备,包括:一个或多个处理器、一个或多个存储器、设备管理器;所述一个或多个处理器分别与所述一个或多个存储器和所述设备管理器耦合;所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述计算机指令在所述设备管理器上运行时,使得所述设备管理器执行如第一方面任一项所述的方法。
该计算设备中的设备管理器可以获取PCIE设备的固件、对固件进行验证,并向计算设备中的处理器发送验证结果。验证通过时,处理器向PCIE设备分配PCI资源;验证未通过时,处理器不向PCIE设备分配PCI资源。通过上述方法,可以实现PCIE设备的安全启动,从而保证整个计算设备的安全可信。
第三方面,本申请实施例提供一种设备管理系统,包括电子设备和PCIE设备,其中,
所述电子设备用于,执行第一方面任一项所述的方法,以确认所述PCIE设备中的固件的验证结果。
该电子设备可以获取PCIE设备的固件、对固件进行验证。验证通过时,电子设备向PCIE设备分配PCI资源;验证未通过时,电子设备不向PCIE设备分配PCI资源。通过上述方法,可以实现PCIE设备的安全启动,从而保证整个电子设备的安全可信。
第四方面,本申请实施例提供一种芯片,所述芯片用于执行:获取快速外设组件互联PCIE设备的固件;对所述固件进行验证;若所述验证通过,发送第一验证结果。
在一些实施例中,所述第一验证结果用于指示向所述PCIE设备分配外设组件互联PCI资源,可选的,所述PCI资源包括内存空间、总线/设备/功能BDF中的一项或多项。
在一些实施例中,若所述验证不通过,所述设备管理模块发送第二验证结果,所述第二验证结果还用于指示控制所述PCIE设备处于下电状态或复位状态。
其中,所述芯片可以执行第一方面任一项所述的方法。
该芯片可以获取PCIE设备的固件,并可以根据预存的PCIE设备的公钥,对PCIE设备的固件进行验证,确保了PCIE设备固件的完整性和合法性。
第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现第一方面任一项所述的设备验证方法。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种设备验证系统的架构示意图;
图2为本申请实施例提供的另一种设备验证系统的架构示意图;
图3为设备管理模块对BIOS进行安全验证的示意图;
图4A为一种PCIE设备对自身进行安全验证的示意图;
图4B为另一种PCIE设备对自身进行安全验证的示意图;
图5为UEFI BIOS对PCIE设备固件中的UEFI驱动进行安全验证的示意图;
图6为本申请实施例提供的PCIE设备安全验证的方法示意图;
图7为本申请实施例提供的一种设备验证方法的流程示意图;
图8为本申请实施例提供的设备管理模块通过请求应答的方式向处理模块发送验证结果的示意图;
图9为本申请实施例提供的设备管理模块通过处理模块获取PCIE设备固件的示意图;
图10为本申请实施例提供的设备管理模块通过设备管理模块与PCIE设备之间的接口获取PCIE设备固件的示意图;
图11为本申请实施例提供的另一种设备验证方法的流程示意图;
图12为本申请实施例提供的固件获取请求的OEM PLDM命令数据格式;
图13为本申请实施例提供的又一种设备验证方法的流程示意图;
图14为本申请实施例提供的SMBus地址解析协议;
图15为本申请实施例提供的固件获取命令时序;
图16为本申请实施例提供的固件获取请求的OEM NC-SI命令数据格式;
图17为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
为便于对本申请的理解,首先对本申请涉及的概念进行解释说明。
固件:为运行于设备芯片上的代码,固件用于实现设备功能。例如,PCIE设备的固件为运行于PCIE设备芯片上的代码,PCIE设备的固件用于实现PCIE设备的功能。例如,PCIE设备为网卡,则PCIE设备的固件可以用于实现网卡的网络连接、报文收发、协议卸载等功能。
数字签名:为信息发送者产生的别人无法伪造的字符串。数字签名可以证实信息发送者发送的信息的完整性和真实性。数字签名的产生方法可以参见相关技术,在此不再赘述。
公钥:是与私钥一起使用的密钥对的公开部分。公钥通常用于加密数据、验证数字签名等。本申请中,公钥和私钥为非对称密码算法中的密钥对,私钥指PCIE设备用于产生数字签名的密钥,公钥指验证PCIE设备数字签名的密钥。
为便于理解,首先结合图1-图2对本申请实施例涉及的设备验证系统架构进行说明。
图1为本申请实施例提供的一种设备验证系统的架构示意图。如图1所示,该设备验证系统包括:电子设备100和PCIE设备101。电子设备100和PCIE设备101基于有线或无线连接,电子设备100为PCIE设备101提供运行资源,以供PCIE设备101执行其相应的功能。其中,
电子设备100包括但不限于是服务器、服务器集群、膝上型计算机、台式计算机、移动电话、智能手机、平板电脑、多媒体播放器、电子阅读器、智能车载设备、智能家电、人工智能设备、穿戴式设备、物联网设备、或虚拟现实/增强现实/混合现实设备等。
PCIE设备101包括但不限于是网卡、磁盘阵列(redundant arrays ofindependent disks,RAID)卡、显卡、外设组件互联(peripheral ComponentInterconnect,PCI)固态驱动器(solid state drive,SSD)卡以及加速卡等。应该理解的是,PCIE设备101的数量可以为一个或多个,本申请实施例中不做限定。
电子设备100可以包括处理模块102和设备管理模块103。处理模块102可以包括基本输入输出系统(Basic Input Output System,BIOS)104、处理器105。
处理器105可以包括一个或多个处理单元,例如:处理器105可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
BIOS104为处理器105的启动软件,可以完成处理器105的初始化。
设备管理模块103也可以称为服务器处理器或者基板管理控制器(BaseboardManagment Controller,BMC),设备管理模块103不依赖于电子设备100的处理器105、BIOS104或操作系统来工作,设备管理模块103有自己的固件、电源、MAC地址与网络接口。在一些实施例中,设备管理模块103在电子设备100中执行部件管理、资产管理任务。例如,上下电控制、风扇调速、电子标签管理。可选的,设备管理模块103可以搭载在一种芯片上,通常这种芯片称为带外管理芯片。
在电子设备100启动过程中,需要对搭载在电子设备100上的各模块、以及与电子设备100连接的PCIE设备101进行安全验证。验证通过的模块和PCIE设备101可以在电子设备100中正常运行。验证未通过的模块和PCIE设备101可以被电子设备100屏蔽而不能正常运行。安全验证可以确保电子设备100中所运行模块的完整性和合法性,进而保证电子设备100安全可靠。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
在一些实施例中,如图2所示,图2为本申请实施例提供的另一种设备验证系统的架构示意图。请参见图2,电子设备100包括处理模块102和设备管理模块103。处理模块102可以包括处理器105、BIOS104、桥片106。可选的,处理模块102还可以包括只读存储器(ReadOnly Memory,ROM)和随机访问存储器(Random Access Memory,RAM)。ROM也可以称为固定存储器。ROM只能读出信息,无法写入信息。通常,BIOS104固化在电子设备100主板的ROM中。RAM为与处理器105直接交换数据的内部存储器。其中,
桥片106是直接与处理器105进行数据和指令交换、充当连接桥梁的处理芯片。例如,桥片106可以为处理器105与设备管理模块103之间的连接桥梁。可选的,桥片106可以为南桥芯片和/或北桥芯片。
设备管理模块103可以通过桥片106与处理器105连接(通信)。可选的,鼠标107、键盘108等设备可以通过桥片106与处理器105连接(通信)。
下面,示例性的示出电子设备100在启动阶段,对电子设备100上运行的各模块及PCIE设备101进行安全验证的3种方法:
方法1、设备管理模块103对电子设备100的系统固定部件进行安全验证。例如,电子设备100的系统固定部件可以为BIOS104、设备管理模块103。
方法2、PCIE设备101对自身进行安全验证。
方法3、统一扩展固件接口(Unified Extensible Firmware Interface,UEFI)BIOS对PCIE设备101固件中的UEFI驱动进行安全验证。
下面,以设备管理模块103对BIOS进行安全验证为例,通过图3对上述方法1进行说明。
图3为设备管理模块103对BIOS104进行安全验证的示意图。请参见图3,设备管理模块103中存放系统可信根(Root of Trust,RoT)。
RoT为电子设备100内的可信计算系统中的可信任模块,是基于密码学和硬件保护的可信任源头,以它作为起点建立系统的信任链。RoT内存储有BIOS104的公钥,以便于RoT基于BIOS104的公钥对BIOS固件进行安全验证。
在电子设备验证过程中,电子设备100依次运行各模块,在BIOS104初始化的过程中,设备管理模块103获取BIOS固件。BIOS固件中包括固件代码和数字签名。设备管理模块103可以通过BIOS104的公钥对数字签名进行验证。若验证通过,BIOS104可以继续启动;若验证未通过,则BIOS104停止运行,从而可以实现BIOS104的安全启动。然而,上述安全验证方法不支持对PCIE设备101的安全验证,即不能通过上述方法对PCIE设备101进行安全验证。因此上述安全验证方法不能保证PCIE设备101的完整性及合法性,从而不能保证电子设备100的安全可信。
下面,通过图4A-图4B对上述方法2进行说明。
图4A为一种PCIE设备101对自身进行安全验证的示意图。请参见图4A,处理模块102和PCIE设备101可以通过PCIE接口进行通信。PCIE设备101的芯片中存放有RoT。PCIE设备101的芯片中还存放有PCIE设备101的固件。PCIE设备101的固件包括固件代码和数字签名。RoT内存储有PCIE设备101的公钥。
在PCIE设备101验证过程中,RoT可以通过PCIE设备101的公钥对PCIE设备101固件的数字签名进行验证。
图4B为另一种PCIE设备101对自身进行安全验证的示意图。请参见图4B,处理模块102和PCIE设备101可以通过PCIE接口进行通信。PCIE设备101的芯片中存放有PCIE设备101的固件。PCIE设备101的固件包括固件代码和数字签名。PCIE设备101的固件还包括RoT。RoT内存储有PCIE设备101的公钥。
在PCIE设备101验证过程中,RoT可以通过PCIE设备101的公钥对PCIE设备101固件的数字签名进行验证。
图4A-图4B所述的安全验证方法可以防御远端网络攻击,保证PCIE固件不被篡改,但该安全验证方法无法防御近端攻击。例如,替换RoT的存储载体,或者,替换PCIE设备101。因此,上述PCIE的安全验证方法无法保证电子设备100的安全可信。
下面,通过图5对上述方法3进行说明。
图5为UEFI BIOS对PCIE设备101固件中的UEFI驱动进行安全验证的示意图。请参见图5,UEFI BIOS可以在ROM或者RAM上运行。UEFI BIOS中存放PCIE设备101的公钥。PCIE设备101包括PCIE设备101的固件。PCIE设备101的固件包括UEFI驱动程序和固件代码。UEFI驱动程序中包括UEFI驱动程序的数字签名。
在枚举PCIE设备101阶段,UEFI BIOS可以通过处理模块102加载PCIE设备101的UEFI驱动程序,并使用PCIE设备101的公钥对UEFI驱动程序中的数字签名进行安全验证。上述安全验证方法可以验证PCIE设备101的UEFI驱动程序的完整性,以确保UEFI驱动程序不被篡改,但并未对PCIE设备101的整个固件进行安全验证,不能保证PCIE设备101整个固件的完整性。
为解决上述多种安全验证方法中存在的技术问题,本申请实施例提供了一种设备验证方法,以实现PCIE设备101的安全启动。如图6所示,图6为本申请实施例提供的PCIE设备101安全验证的方法示意图。
请参见图6,处理模块102可以与PCIE设备101进行通信,处理模块102还可以与设备管理模块103进行通信。设备管理模块103中可以存放PCIE设备101的公钥。在电子设备100验证过程中,设备管理模块103可以获取PCIE设备101的固件,并通过PCIE设备101的公钥对PCIE设备101的固件进行安全验证。若验证通过,则电子设备100的处理模块102向PCIE设备101分配外设组件互联(Peripheral Component Interconnect,PCI)资源,以使PCIE设备101可以在电子设备100的操作系统(Operation System,OS)中可用。若验证未通过,则电子设备100的处理模块102屏蔽PCIE设备101。通过上述方法,实现了PCIE设备101的安全启动,从而确保了整个计算机系统的安全可信。
下面以具体的实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图7为本申请实施例提供的一种设备验证方法的流程示意图。请参见图7,该方法可以包括:
S701、电子设备100的设备管理模块103获取PCIE设备101的固件。
PCIE设备101可以为与电子设备100基于有线或无线连接的PCIE设备101。
设备管理模块103可以从PCIE设备101中获取PCIE设备101的固件。
PCIE设备101的固件中包括固件代码和数字签名。
数字签名为基于PCIE设备101的私钥对第一摘要进行加密得到的;第一摘要为基于预设算法对固件代码进行计算获得的。
示例性的,预设算法可以为哈希算法。PCIE设备101可以通过哈希算法对自身固件代码进行计算获得第一摘要,并通过自身私钥对第一摘要加密得到数字签名。
S702、设备管理模块103对固件进行验证。
设备管理模块103可以通过如下方式对固件进行验证:设备管理模块103基于预存的PCIE设备101的公钥对数字签名进行解密,获取第一摘要;设备管理模块103通过预设算法对固件代码进行计算得到第二摘要;若第一摘要与第二摘要相同,则确定验证通过;若第一摘要与第二摘要不同,则确定验证不通过。
第一摘要为PCIE设备101通过预设算法对自身固件代码进行计算得到的摘要。PCIE设备101还可以通过私钥对第一摘要进行加密得到数字签名。相应的,设备管理模块103可以使用公钥对该数字签名进行解密,得到第一摘要。
第二摘要为设备管理模块103通过相同的预设算法计算PCIE设备101的固件代码得到的摘要。在对固件进行验证之前,设备管理模块103可以获取PCIE设备101的公钥。PCIE设备101的公钥可以存储在设备管理模块103中,或者,PCIE设备101的公钥还可以存储在设备管理模块103以外的模块中。针对PCIE设备101公钥不同的存储位置,设备管理模块103可以通过如下两种方式获取PCIE设备101的公钥:
方式一、设备管理模块103从本地获取预先存储的公钥。
设备管理模块103可以预先存储至少一个PCIE设备101的公钥。在设备管理模块103获取PCIE设备101的固件后,设备管理模块103可以从固件中读取PCIE设备101的设备信息,并根据设备信息从本地获取PCIE设备101对应的公钥。例如,PCIE设备101的设备信息包括PCIE设备101的厂家信息、设备标识(例如产品序列号(Serial Number,SN))、预设标识等。
在该实现方式中,设备管理模块103可以更快的获取PCIE设备101的公钥,实现了PCIE设备101的快速安全验证。
方式二、设备管理模块103可以从设备管理模块103以外的模块获取PCIE设备101的公钥。
例如设备管理模块103以外的模块可以为专用安全芯片。即专用安全芯片中可以存储至少一个PCIE设备101的公钥。
该方式中,设备管理模块103获取PCIE设备101的公钥至少有如下3种情况:
情况1、设备管理模块103获取到固件后,从专用安全芯片获取指定的公钥。
设备管理模块103获取PCIE设备101的固件后,可以从固件中读取PCIE设备101的设备信息,并根据设备信息从专用安全芯片中获取PCIE设备101对应的公钥。
情况2、设备管理模块103获取到固件后,从专用安全芯片获取所有的公钥。
设备管理模块103获取第一个PCIE设备101的固件后,可以从专用安全芯片中获取所有PCIE设备101对应的公钥,并存储在本地。在对某PCIE设备101进行验证时,设备管理模块103可以通过该PCIE设备101的设备信息从本地获取该PCIE设备101对应的公钥。
情况3、设备管理模块103获取到固件之前,从专用安全芯片获取所有的公钥。
在电子设备验证时,专用安全芯片可以对设备管理模块103进行验证,并将专用安全芯片中存储的所有PCIE设备101的公钥导入到设备管理模块103中。设备管理模块103获取PCIE设备101的公钥后,可以对PCIE设备101进行安全验证。
在该实现方式中,设备管理模块103可以从其他模块获取PCIE设备101的公钥,节约了设备管理模块103的存储资源。
S703、设备管理模块103判断验证是否通过。
若是,执行S704。
若否,执行S705。
S704、设备管理模块103向处理模块102发送第一验证结果。
第一验证结果用于指示处理模块102向PCIE设备101分配外设组件互联PCI资源,PCI资源为PCIE设备101应用于处理模块102的资源。PCI资源可以包括总线/设备/功能(BusDevice Function,BDF)、内存空间中的一项或多项。
BDF为一种唯一标识符,用于标识PCIE总线下的PCIE设备101的每一个功能。
设备管理模块103和处理模块102之间可以设置低管脚数(Low Pin Count,LPC)接口,设备管理模块103可以通过LPC接口向处理模块102发送第一验证结果。
一种可能的实现方式中,设备管理模块103对固件进行验证后,可以直接将第一验证结果发送给处理模块102。
另一种可能的实现方式中,设备管理模块103可以通过请求应答的方式将第一验证结果发送给处理模块102。如图8所示,图8为本申请实施例提供的设备管理模块103通过请求应答的方式向处理模块102发送第一验证结果的示意图。
请参见图8,设备管理模块103对固件进行验证后,可以将PCIE设备101的设备信息发送给处理模块102。设备信息可以包括PCIE设备101的槽位号信息。处理模块102可以根据PCIE设备101的设备信息向设备管理模块103发送PCIE设备101验证结果的获取请求。设备管理模块103接收到获取请求后,可以将PCIE设备101的验证结果发送给处理模块102。
S705、设备管理模块103向处理模块102发送第二验证结果。
第二验证结果用于指示处理模块102不向PCIE设备101分配PCI资源;或者,第二验证结果用于指示处理模块102控制PCIE设备101处于下电状态或复位状态。
设备管理模块103向处理模块102发送第二验证结果的方法与设备管理模块103向处理模块102发送第一验证结果的方法相同,具体可以参见S704,在此不再赘述。
S706、处理模块102根据第一验证结果/第二验证结果配置PCIE设备101。
需要说明的是,本申请实施例中,BIOS104为处理模块102上运行的系统。设备管理模块103可以将第一验证结果/第二验证结果发送给处理模块102,或者,设备管理模块103可以将第一验证结果/第二验证结果发送给处理模块102中的BIOS104。同理,处理模块102可以根据第一验证结果/第二验证结果配置PCIE设备101,或者,处理模块102中的BIOS104可以根据第一验证结果/第二验证结果配置PCIE设备101。当处理模块102接收到第一验证结果,即PCIE设备101的固件具有完整性及合法性时,处理模块102给PCIE设备101分配PCI资源,以使PCIE设备101可以在OS中可用。例如,处理模块102可以为PCIE设备101分配总线/设备/功能(Bus Device Function,BDF)资源;或者处理模块102可以为PCIE设备101分配内存空间。
当处理模块102接收到第二验证结果,即PCIE设备101的固件不具有完整性及合法性时,处理模块102可以屏蔽PCIE设备101,以使PCIE设备101在OS中不可用。处理模块102至少可以通过如下3种方式屏蔽PCIE设备验证:
方式1、处理模块102不给PCIE设备101分配PCI资源。
方式2、处理模块102控制PCIE设备101处于下电状态。
示例性的,在支持PCIE设备101热拔插的电子设备100中,电子设备100可以单独控制PCIE设备101的供电电路。当处理模块102接收到第二验证结果,处理模块102可以通知硬件控制模块,以使硬件控制模块控制PCIE设备101处于下电状态。
方式3、处理模块102控制PCIE设备101处于复位状态。
当处理模块102接收到第二验证结果,处理模块102可以针对PCIE设备101输出复位信号,以使PCIE设备101处于复位状态。在一些实施例中,复位状态可以理解为初始的默认状态。
本实施例提供的设备验证方法中,设备管理模块103可以获取PCIE设备101的固件,以及PCIE设备101的公钥。设备管理模块103还可以对固件中的数字签名进行验证,并向处理模块102发送第一验证结果/第二验证结果。当接收到第一验证结果,处理模块102给PCIE设备101分配PCI资源;当接收到第二验证结果,处理模块102可以屏蔽PCIE设备101。通过上述方法,可以实现PCIE设备101的安全启动,从而保证整个电子设备100的安全可信。
本申请实施例,相对于另外部署一个安全芯片对PCIE设备进行验证的方式,节省了一个专用的安全芯片,部署成本更低一点,电子设备的硬件方案也更简单。相对于通过BIOS对PCIE设备进行验证的方式,验证主体归一了,即均由设备管理模块103对其他模块进行安全验证,因为现有方案BIOS也是由设备管理模块103来做安全验证的,避免了由设备管理模块103向BIOS传递PCIE设备的公钥,增加方案复杂性和不安全因素。
在图7实施例的基础上,设备管理模块103至少可以通过如下两种方法获取PCIE设备101的固件。
方法1、设备管理模块103通过处理模块102,从PCIE设备101中获取PCIE设备101的固件。
如图9所示,图9为本申请实施例提供的设备管理模块103通过处理模块102获取PCIE设备101固件的示意图。请参见图9,设备管理模块103包括设备管理模块103固件。设备管理模块103中存放有PCIE设备101的公钥。PCIE设备101包括PCIE固件。PCIE设备101的固件中包括数字签名。设备管理模块103与处理模块102之间设有第一PCIE接口和LPC接口。处理模块102与PCIE设备101之间设有第二PCIE接口。设备管理模块103可以通过第一PCIE接口向处理模块102发送固件获取指令。处理模块102可以根据固件获取指令通过第二PCIE接口从PCIE设备101中获取PCIE设备101固件,并通过第一PCIE接口向设备管理模块103转发PCIE设备101固件,以使设备管理模块103获取PCIE设备101的固件。
方法2、设备管理模块103通过设备管理模块103与PCIE设备101之间的接口,从PCIE设备101中获取PCIE设备101的固件。
如图10所示,图10为本申请实施例提供的设备管理模块103通过设备管理模块103与PCIE设备101之间的接口获取PCIE设备101固件的示意图。请参见图10,设备管理模块103包括设备管理模块103固件。设备管理模块103中存放有PCIE设备101的公钥。PCIE设备101包括PCIE固件。PCIE设备101的固件中包括数字签名。设备管理模块103与处理模块102之间设有LPC接口。处理模块102与PCIE设备101之间设有PCIE接口。设备管理模块103与PCIE设备101之间设有系统管理总线(System Management Bus,SMBus)接口;或者设备管理模块103与PCIE设备101之间设有网络控制器边带(Network Controller Sideband Interface,NC-SI)接口。设备管理模块103可以通过SMBus接口或者NC-SI接口直接与PCIE设备101进行通信,并从PCIE设备101中获取PCIE设备101的固件。
下面,通过图11的实施例,对上述方法1进行说明。
图11为本申请实施例提供的另一种设备验证方法的流程示意图。请参见图11,该方法可以包括:
S1101、设备管理模块103通过第一PCIE接口向处理模块102发送第一指令。第一PCIE接口为设备管理模块103和处理模块102之间的通信接口。第一指令为设备管理模块103请求从PCIE设备101中获取PCIE设备101固件的固件获取请求消息。
S1102、处理模块102通过第二PCIE接口向PCIE设备101转发第一指令。
S1103、处理模块102通过第二PCIE接口接收固件获取响应消息,固件获取响应消息中包括PCIE设备101的固件,PCIE设备101的固件中包括数字签名。
固件获取响应消息为PCIE设备101针对第一指令发出的响应消息。
第二PCIE接口为处理模块102和PCIE设备101之间的通信接口。
第一PCIE接口和第二PCIE接口实质上均为PCIE接口。PCIE接口承载管理组件传输协议(Management Component Transport Protocol,MCTP)数据。设备管理模块103通过第一PCIE接口和第二PCIE接口与PCIE设备101进行通信,以实现MCTP通信。MCTP下层支持承载的物理接口PCIE、系统管理总线(System Management Bus,SMBus)等。MCTP上层承载的带外管理协议支持网络控制器边带接口(Network Controller Sideband Interface,NC-SI)、平台级数据模型(Platform Level Data Model,PLDM)等。本申请实施例采用PLDM overMCTP over PCIE的协议结构。固件获取请求消息为PLDM消息;和/或,固件获取响应消息为PLDM消息。
PLDM规范中定义了原始设备制造商(Original Equipment Manufacturer,OEM)特定的的数据类型及命令格式。OEM特定的命令格式中包括请求(Request)和响应(Response)的命令格式。
本申请实施例利用PLDM的OEM数据类型进行扩展,定义固件获取请求命令。如图12所示,图12为本申请实施例提供的固件获取请求的OEM PLDM命令数据格式。请参见图12,图12中包括PCIE供应商定义消息头、消息代码、MCTP头、消息类型、PLDM头、PLDM类型、PLDM消息数据、固件获取请求、固件数据响应。
S1104、处理模块102通过第一PCIE接口向设备管理模块103转发固件获取响应消息。
步骤S1101-S1104中,处理模块102将设备管理模块103发送的第一指令转发给PCIE设备101。PCIE设备101接收到固件获取请求消息后,将PCIE固件发送给处理模块102。处理模块102将PCIE固件转发给设备管理模块103。
S1105、设备管理模块103获取PCIE设备101的公钥。
设备管理模块103获取PCIE设备101的公钥的方法请参见S702,在此不再赘述。
S1106、设备管理模块103通过公钥对数字签名进行解密处理,得到第一摘要。
S1107、设备管理模块103获取固件对应的第二摘要。
设备管理模块103获取固件对应的第二摘要的方法请参见S702,在此不再赘述。
S1108、设备管理模块103对比第一摘要与第二摘要,得到验证结果。
若第一摘要与第二摘要相同,则固件的验证结果为验证通过。若第一摘要与第二摘要不相同,则固件的验证结果为验证未通过,
S1109、设备管理模块103向处理模块102发送验证结果。
S1110、处理模块102根据验证结果配置PCIE设备101。
S1109-S1110的实施方式可以参见S703-S704,在此不再赘述。
本实施例提供的设备验证方法中,设备管理模块103通过第一PCIE接口和第二PCIE接口从PCIE设备101中获取PCIE设备101的固件,并对固件进行安全验证。在验证结果为验证通过时,处理模块102给PCIE设备101分配PCI资源;在验证结果为验证未通过时,处理模块102可以屏蔽PCIE设备101。通过上述方法,可以实现PCIE设备101的安全启动,从而保证整个电子设备100的安全可信。
下面,通过图13的实施例,对上述方法2进行说明。
图13为本申请实施例提供的又一种设备验证方法的流程示意图。请参见图13,该方法可以包括:
S1301、设备管理模块103通过设备管理模块103与PCIE设备101之间的接口,向PCIE设备101发送第二指令。
第二指令为获取PCIE设备101固件的固件获取请求消息。
设备管理模块103与PCIE设备101之间的接口至少可以为SMBus接口或者NC-SI接口。
一种可能的实现方式中,设备管理模块103与PCIE设备101之间的接口为SMBus接口。PCIE设备101的接口规范协议中定义了SMBus接口。几乎所有的PCIE设备101都支持通过SMBus接口进行通信。
SMBus规范中定义了地址解析协议,SMBus地址解析协议通过SMBus设备默认地址“1100001”可以实现读写功能。如图14所示,图14为本申请实施例提供的SMBus地址解析协议。请参见图14,SMBus地址解析协议中包括SMBus设备默认地址、读/写(R/W#)位完成字节、命令“0x00”至“0x1F”。“0x00”、“0x05”至“0x1F”为预留命令字,“0x01”为准备地址解析协议(Address Resolution Protocol,ARP)命令。“0x02”和“0x03”为一般(General)类型命令,其中,“0x02”为重置设备命令,“0x03”为获取设备的唯一设备识别符(Unique DeviceIdentifier,UDID)命令。“0x04”为分配地址命令。
本申请实施例中利用SMBus地址解析协议进行扩展,使用预留的(Reserved)命令字定义固件获取命令,以实现PCIE设备101固件的传送。如图15所示,图15为本申请实施例提供的固件获取命令时序。请参见图15,固件获取命令时序包括“起始”位、“重开始”位、“结束”位、“读”位、“写”位、“确认”位、字节数、报文错误码、从地址、目标地址及固件获取命令。
另一种可能的实现方式中,设备管理模块103与PCIE设备101之间的接口为NC-SI接口。NC-SI接口主要用于以太网(Ethernet,Eth)网卡,其他PCIE设备101不支持NC-SI接口。例如,其他PCIE设备101可以为光纤(Fibre Channel,FC)网卡、无限带宽(InfiniBand,IB)网卡等。
NC-SI规范定义使用基于媒体独立接口传输(RMII Based Transport,RBT)接口传送NC-SI边带通信数据,定义了OEM命令的数据格式。OEM命令的数据格式中包括命令(Command)和响应(Response)的数据格式。本申请实施例中利用NC-SI的OEM命令进行扩展,定义固件获取请求命令,作为供应商定义(Vendor Defined)的命令。
如图16所示,图16为本申请实施例提供的固件获取请求的OEM NC-SI命令数据格式。请参见图16,固件获取请求的OEM NC-SI命令数据格式中包括目的地址(DestinationMAC,DMAC)、源地址(Source MAC,SMAC)、以太类型、命令包头、控制包类型、互联网号码分配机构(Internet Assigned Numbers Authority,IANA)分配的制造商身份标识号(Identitydocument,ID)、供应商定义命令、获取固件命令、响应码、原因码及固件数据。
S1302、PCIE设备101通过设备管理模块103与PCIE设备101之间的接口向设备管理模块103发送固件获取响应消息,固件获取响应消息中包括PCIE设备101的固件,PCIE设备101的固件中包括数字签名。
S1303、设备管理模块103获取PCIE设备101的公钥。
S1304、设备管理模块103通过公钥对数字签名进行解密处理,得到第一摘要。
S1305、设备管理模块103获取固件对应的第二摘要。
S1306、设备管理模块103对比第一摘要与第二摘要,得到验证结果。
S1307、设备管理模块103向处理模块102发送验证结果。
S1308、处理模块102根据验证结果配置PCIE设备101。
S1303-S1308的实施方式可以参见S1105-S1110,在此不再赘述。
本实施例提供的设备验证方法中,设备管理模块103可以直接与PCIE设备101进行通信,并从PCIE设备101中获取PCIE设备101的固件,并对固件进行安全验证。在验证结果为验证通过时,处理模块102给PCIE设备101分配PCI资源;在验证结果为验证未通过时,处理模块102可以屏蔽PCIE设备101。通过上述方法,可以实现PCIE设备101的安全启动,从而保证整个电子设备100的安全可信。
图17为本申请实施例提供的一种计算设备的结构示意图。请参见图17,该计算设备包括:一个或多个处理器1701、一个或多个存储器1702、设备管理器1703;所述一个或多个处理器1701分别与所述一个或多个存储器1702和所述设备管理器1703耦合;所述一个或多个存储器1702用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述计算机指令在所述设备管理器1703上运行时,使得所述计算设备17执行上述设备验证方法实施例所示的方案。
本申请实施例提供的计算设备可以执行上述方法实施例所示的方案,其实现原理以及有益效果类似,此处不再进行赘述。
本申请实施例提供一种芯片。该芯片用于执行:获取快速外设组件互联PCIE设备101的固件;对固件进行验证;若验证通过,发送第一验证结果。
在一些实施例中,第一验证结果用于指示向PCIE设备101分配外设组件互联PCI资源,可选的,PCI资源包括内存空间、总线/设备/功能BDF中的一项或多项。
在一些实施例中,若验证不通过,设备管理模块103发送第二验证结果,第二验证结果还用于指示控制PCIE设备101处于下电状态或复位状态。
该芯片可以获取PCIE设备101的固件,并可以根据预存的PCIE设备101的公钥,对PCIE设备101的固件进行验证,确保了PCIE设备101固件的完整性和合法性。
在一些实施例中,芯片可以执行上述设备验证方法实施例中设备管理模块103执行的动作。其实现原理以及有益效果类似,此处不再进行赘述。
本申请提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序用于实现如上述任意实施例所述的设备验证方法。
本申请实施例提供一种计算机程序产品,所述计算机程序产品包括指令,当所述指令被执行时,使得计算机执行上述设备验证方法。实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程终端设备的处理单元以产生一个机器,使得通过计算机或其他可编程终端设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程终端设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
Claims (10)
1.一种设备验证方法,其特征在于,应用于电子设备,所述电子设备包括处理模块和设备管理模块,所述方法包括:
所述设备管理模块获取快速外设组件互联PCIE设备的固件;
所述设备管理模块对所述固件进行验证;
若所述验证通过,所述设备管理模块向所述处理模块发送第一验证结果;所述第一验证结果用于指示所述处理模块向所述PCIE设备分配外设组件互联PCI资源,所述PCI资源为所述PCIE设备应用于所述处理模块的资源。
2.根据权利要求1所述的方法,其特征在于,若所述验证不通过,所述设备管理模块向所述处理模块发送第二验证结果,所述第二验证结果用于指示所述处理模块控制所述PCIE设备处于下电状态或复位状态。
3.根据权利要求1所述的方法,其特征在于,所述设备管理模块获取快速外设组件互联PCIE设备的固件,包括:
所述设备管理模块向所述处理模块发送第一指令,所述第一指令用于获取所述PCIE设备的固件;
所述设备管理模块接收到所述处理模块发送的所述PCIE设备的固件,所述固件为所述处理模块基于所述第一指令从所述PCIE设备获取的。
4.根据权利要求1所述的方法,其特征在于,所述设备管理模块获取快速外设组件互联PCIE设备的固件,包括:
所述设备管理模块向所述PCIE设备发送第二指令,所述第二指令用于获取所述PCIE设备的固件;
所述设备管理模块接收到所述PCIE设备发送的所述PCIE设备的固件。
5.根据权利要求1所述的方法,其特征在于,所述固件中包括固件代码和数字签名,所述数字签名为基于所述PCIE设备的私钥对第一摘要进行加密得到的,所述第一摘要为基于预设算法对所述固件代码进行计算获得的;
所述设备管理模块对所述固件进行验证,包括:
所述设备管理模块基于预存的所述PCIE设备的公钥对所述数字签名进行解密,获取所述第一摘要;
所述设备管理模块通过所述预设算法对所述固件代码进行计算得到第二摘要;
若所述第一摘要与所述第二摘要相同,则确定所述验证通过;
若所述第一摘要与所述第二摘要不同,则确定所述验证不通过。
6.根据权利要求5所述的方法,其特征在于,所述设备管理模块基于预存的公钥对所述数字签名进行解密,之前还包括:
所述设备管理模块获取所述PCIE设备的公钥。
7.根据权利要求1所述的方法,其特征在于,所述设备管理模块向所述处理模块发送第一验证结果,包括:
所述设备管理模块向所述处理模块发送所述PCIE设备的设备信息;
所述设备管理模块接收所述处理模块发送的查询请求,所述查询请求用于获取所述PCIE设备的验证结果;
所述设备管理模块向所述处理模块发送第一验证结果。
8.根据权利要求1所述的方法,其特征在于,所述PCI资源包括内存空间、总线/设备/功能BDF中的一项或多项。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述设备管理模块和PCIE设备之间的通信接口为系统管理总线SMBus接口,或者网络控制器边带NC-SI接口。
10.一种计算设备,其特征在于,包括:一个或多个处理器、一个或多个存储器、设备管理器;所述一个或多个处理器分别与所述一个或多个存储器和所述设备管理器耦合;所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令;当所述计算机指令在所述设备管理器上运行时,使得所述设备管理器执行如权利要求1-9所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210576997.XA CN114969713A (zh) | 2022-05-25 | 2022-05-25 | 设备验证方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210576997.XA CN114969713A (zh) | 2022-05-25 | 2022-05-25 | 设备验证方法、设备及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114969713A true CN114969713A (zh) | 2022-08-30 |
Family
ID=82955755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210576997.XA Pending CN114969713A (zh) | 2022-05-25 | 2022-05-25 | 设备验证方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114969713A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115632900A (zh) * | 2022-08-31 | 2023-01-20 | 超聚变数字技术有限公司 | 一种计算设备 |
CN115630377A (zh) * | 2022-10-10 | 2023-01-20 | 广州市金其利信息科技有限公司 | 外部设备的接入方法、装置、计算机设备及外部设备 |
CN116149759A (zh) * | 2023-04-20 | 2023-05-23 | 深圳市吉方工控有限公司 | Uefi驱动卸载方法、装置、电子设备及可读存储介质 |
-
2022
- 2022-05-25 CN CN202210576997.XA patent/CN114969713A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115632900A (zh) * | 2022-08-31 | 2023-01-20 | 超聚变数字技术有限公司 | 一种计算设备 |
CN115632900B (zh) * | 2022-08-31 | 2023-09-01 | 超聚变数字技术有限公司 | 一种计算设备 |
CN115630377A (zh) * | 2022-10-10 | 2023-01-20 | 广州市金其利信息科技有限公司 | 外部设备的接入方法、装置、计算机设备及外部设备 |
CN116149759A (zh) * | 2023-04-20 | 2023-05-23 | 深圳市吉方工控有限公司 | Uefi驱动卸载方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3805968B1 (en) | Technologies for secure hardware and software attestation for trusted i/o | |
US10592670B2 (en) | Technologies for provisioning and managing secure launch enclave with platform firmware | |
US8201239B2 (en) | Extensible pre-boot authentication | |
US9189631B2 (en) | Firmware authentication | |
US8909940B2 (en) | Extensible pre-boot authentication | |
CN115280279A (zh) | 设备固件更新技术 | |
US7543150B2 (en) | Method and system for setting up hosting environments in safety | |
US10972449B1 (en) | Communication with components of secure environment | |
CN114969713A (zh) | 设备验证方法、设备及系统 | |
CN105393256A (zh) | 基于策略的安全web引导 | |
WO2018086469A1 (zh) | 芯片中非易失性存储空间的数据存储方法和可信芯片 | |
TW201106194A (en) | Integrity verification using a peripheral device | |
US20210263757A1 (en) | Low latency launch for trusted execution environments | |
US10255438B2 (en) | Operating system agnostic validation of firmware images | |
CN114817105B (zh) | 设备枚举的方法、装置、计算机设备以及存储介质 | |
US20230195473A1 (en) | Peripheral component interconnect express device startup method and apparatus, and storage medium | |
CN111158857B (zh) | 数据加密方法、装置、设备及存储介质 | |
CN114296873B (zh) | 一种虚拟机镜像保护方法、相关器件、芯片及电子设备 | |
CN113946854B (zh) | 一种文件访问控制方法、装置及计算机可读存储介质 | |
US20220066845A1 (en) | Dynamic authenticatication an authorization of a containerized process | |
TWM640937U (zh) | 由待簽本文產生演算資料以供伺服器簽章之系統 | |
US11811948B2 (en) | Flexible security enclave for protecting data at rest and in motion | |
US11526339B1 (en) | Systems and methods for improving application installation | |
CN116186709B (zh) | 基于虚拟化VirtIO技术卸载UEFI安全启动的方法、装置及介质 | |
US20240303381A1 (en) | Systems and methods to manage security protocol and data model (spdm) secure communication sessions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20231116 Address after: 450046, 10th Floor, North Chuangzhi Tiandi Building, Dongshigeng Street, Longzihu Wisdom Island Middle Road East, Zhengdong New District, Zhengzhou City, Henan Province Applicant after: Henan Kunlun Technology Co.,Ltd. Address before: 450000 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu smart Island, Zhengdong New District, Zhengzhou City, Henan Province Applicant before: xFusion Digital Technologies Co., Ltd. |
|
TA01 | Transfer of patent application right |