CN110795738B - 一种计算机的启动方法和控制器、存储介质以及系统 - Google Patents

一种计算机的启动方法和控制器、存储介质以及系统 Download PDF

Info

Publication number
CN110795738B
CN110795738B CN201910887279.2A CN201910887279A CN110795738B CN 110795738 B CN110795738 B CN 110795738B CN 201910887279 A CN201910887279 A CN 201910887279A CN 110795738 B CN110795738 B CN 110795738B
Authority
CN
China
Prior art keywords
file
bios
file storage
controller
channel
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.)
Active
Application number
CN201910887279.2A
Other languages
English (en)
Other versions
CN110795738A (zh
Inventor
王士超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XFusion Digital Technologies Co Ltd
Original Assignee
XFusion Digital Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN201910887279.2A priority Critical patent/CN110795738B/zh
Publication of CN110795738A publication Critical patent/CN110795738A/zh
Priority to EP20865718.9A priority patent/EP3971749A4/en
Priority to PCT/CN2020/113345 priority patent/WO2021052191A1/zh
Priority to US17/564,683 priority patent/US11886595B2/en
Application granted granted Critical
Publication of CN110795738B publication Critical patent/CN110795738B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了一种计算机的启动方法和控制器、存储介质以及系统,用于提高计算机的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。在一种方法中,控制器分别与计算机硬件系统、BIOS文件存储装置相连接,方法包括:当控制器上电运行时,控制器获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件;控制器对第一启动程序文件进行校验;当第一启动程序文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,计算机硬件系统使用第一启动程序文件完成上电运行。

Description

一种计算机的启动方法和控制器、存储介质以及系统
技术领域
本申请涉及计算机技术领域,尤其涉及一种计算机的启动方法和控制器、存储介质以及系统。
背景技术
目前的计算机具有多种实现架构,例如计算机可以采用X86系统,X86系统在启动的过程中需依赖于基本输入输出系统(basic input output system,BIOS)硬件系统,BIOS硬件系统中可以包括闪存(flash),该闪存中存储有BIOS程序文件。
目前的BIOS硬件系统在开机后,加载BIOS硬件系统的闪存中存储的BIOS程序文件,以对X86系统进行基本的信息设置,引导配置完成使X86系统上电,保证X86系统能正常开机运行。当X86系统完成上电运行后,再将系统指挥权限交由计算机的操作系统(operating system,OS),由OS对计算机进行控制。
若没有BIOS硬件系统,则计算机将无法启动。当BIOS硬件系统的闪存中存储的BIOS 程序文件被篡改破坏时,有可能造成用户针对BIOS硬件系统的设置丢失,或者用户设置的安全权限被篡改,使得X86系统无法启动或者被黑客攻陷控制,造成信息泄露的安全事故。
因此,当BIOS程序文件被篡改时,目前的计算机启动方法存在按照篡改后的BIOS程序文件启动计算机,从而带会存在安全风险问题。
发明内容
本申请实施例提供了一种计算机的启动方法和控制器、存储介质以及系统,用于提高计算机的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
为解决上述技术问题,本申请实施例提供以下技术方案:
第一方面,本申请实施例提供一种计算机的启动方法,所述方法用于控制器,所述控制器分别与计算机硬件系统、基本输入输出系统BIOS文件存储装置相连接,所述方法包括:当所述控制器上电运行时,所述控制器获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;所述控制器对所述第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,当成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在本申请实施例中,控制器分别与计算机硬件系统、BIOS文件存储装置相连接。当控制器上电运行时,控制器首先获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件,控制器然后对第一启动程序文件进行校验,当第一启动程序文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,最后计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,该控制器可以对BIOS文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,控制器才会建立BIOS文件存储装置和计算机硬件系统之间的连接,此时计算机硬件系统可以读取BIOS文件存储装置中的第一启动程序文件,以完成上电运行,本申请实施例中控制器可对BIOS文件存储装置中预先存储的第一启动程序文件进行校验,以保证该第一启动程序文件是安全的,即保证该第一启动程序文件未被篡改,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述控制器对所述第一启动程序文件进行校验,包括:所述控制器使用密钥和所述控制器中的启动程序源文件进行校验计算,得到第一校验结果,所述启动程序源文件是预先存储在所述控制器中的BIOS文件;所述控制器使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;所述控制器根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。在该方案中,控制器首先获取密钥和启动程序源文件,然后使用密钥和控制器中的启动程序源文件进行校验计算,得到第一校验结果,同样的,控制器还可以使用该密钥和第一启动程序文件进行校验计算,得到第二校验结果,最后控制器比较这两个校验结果,可以根据第一校验结果和第二校验结果确定第一启动程序文件是否通过校验,例如第一校验结果和第二校验结果完全相同,则确定控制器中存储的启动程序源文件和BIOS文件存储装置中的存储的第一启动程序文件是相同的,即BIOS文件存储装置中的存储的第一启动程序文件没有被篡改,此时输出校验结果为第一启动程序文件通过校验。又如第一校验结果和第二校验结果不相同,则确定控制器中存储的启动程序源文件和BIOS文件存储装置中的存储的第一启动程序文件是不相同的,即BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,此时输出校验结果为第一启动程序文件没有通过校验。
在一种可能的实现方式中,所述方法还包括:当所述第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述BIOS文件存储装置中,所述启动程序源文件是预先存储在所述控制器中的BIOS文件;所述控制器对所述BIOS文件存储装置中写入的启动程序源文件进行校验;当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,当成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述BIOS文件存储装置中写入的启动程序源文件完成上电运行。在该方案中,当第一启动程序文件没有通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。启动程序源文件还可以用于对BIOS文件存储装置中被篡改的第一启动程序文件进行恢复,从而使得BIOS文件存储装置中重新写入未被篡改的启动程序源文件,计算机硬件系统才能够读取BIOS文件存储装置中重新写入的启动程序源文件,使用该启动程序源文件进行上电运行,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述方法还包括:所述控制器将所述BIOS文件存储装置中存储的第一启动程序文件删除。其中,当第一启动程序文件没有通过校验时,则说明BIOS 文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器还可以删除BIOS文件存储装置中存储的第一启动程序文件,即控制器可以擦除掉BIOS文件存储装置中被篡改的第一启动程序文件,从而该控制器的闪存可用于重新写入未被篡改的启动程序源文件,提高了闪存的空间使用效率。
在一种可能的实现方式中,所述BIOS文件存储装置包括:主BIOS文件存储模块和从 BIOS文件存储模块,其中,所述控制器分别与所述主BIOS文件存储模块和所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;所述控制器获取所述BIOS文件存储装置中的第一启动程序文件,包括:所述控制器获取所述主BIOS文件存储模块中的第一启动程序文件;所述控制器对所述第一启动程序文件进行校验,包括:所述控制器对所述主BIOS文件存储模块中的第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,包括:当所述主BIOS文件存储模块中的第一启动程序文件通过校验时,所述控制器建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。在本申请实施例中,当第一启动程序文件通过校验时,则说明主BIOS文件存储模块中的存储的第一启动程序文件没有被篡改,即主BIOS文件存储模块中的存储的第一启动程序文件是安全可信的,此时控制器建立主BIOS文件存储模块和计算机硬件系统之间的连接,例如控制器将主BIOS文件存储模块和计算机硬件系统之间的通道导通,以使得主BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,主BIOS文件存储模块中的存储的第一启动程序文件是安全可信时,计算机硬件系统能够读取主BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述方法还包括:当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器获取所述从BIOS文件存储模块中的第一启动程序文件;所述控制器对所述从BIOS文件存储模块中的第一启动程序文件进行校验;当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,所述控制器建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接。在本申请实施例中,当第一启动程序文件通过校验时,则说明从BIOS文件存储模块中的存储的第一启动程序文件没有被篡改,即从BIOS文件存储模块中的存储的第一启动程序文件是安全可信的,此时控制器建立从BIOS文件存储模块和计算机硬件系统之间的连接,例如控制器将从BIOS文件存储模块和计算机硬件系统之间的通道导通,以使得从BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,从BIOS文件存储模块中的存储的第一启动程序文件是安全可信时,计算机硬件系统才能够读取从BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述方法还包括:当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述主BIOS文件存储模块中,所述启动程序源文件是预先存储在所述控制器中的BIOS文件;所述控制器对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,所述控制器建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,当成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。在该方案中,控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。启动程序源文件还可以用于对主BIOS文件存储模块中被篡改的第一启动程序文件进行恢复,从而使得主BIOS文件存储模块中重新写入未被篡改的启动程序源文件,使得计算机硬件系统能够读取主BIOS文件存储模块中未被篡改的启动程序源文件完成上电运行,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述方法还包括:当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述从BIOS文件存储模块中,所述启动程序源文件是预先存储在所述控制器中的BIOS文件。其中,当第一启动程序文件没有通过校验时,则说明从BIOS文件存储模块中的存储的第一启动程序文件可能被篡改或者被损坏,即从BIOS文件存储模块中的存储的第一启动程序文件是不可信的。控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。
在一种可能的实现方式中,所述控制器为基板管理控制器BMC,所述BIOS文件存储装置为存储BIOS文件的闪存;所述BMC通过第一串行外设接口SPI总线和所述存储BIOS文件的闪存相连接,所述BMC通过第二SPI总线和所述计算机硬件系统相连接。
第二方面,本申请实施例还提供一种计算机的启动方法,所述方法用于控制器,所述控制器包括:安全校验内核,所述安全校验内核通过控制开关的使能控制管脚和所述控制开关通信;所述控制开关通过第一通道和所述安全校验内核相连接,所述控制开关通过第二通道和计算机硬件系统相连接,所述控制开关通过第三通道和BIOS文件存储装置相连接;所述方法包括:所述安全校验内核通过所述第一通道和所述第三通道获取所述BIOS 文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述 BIOS文件存储装置中的BIOS文件;所述安全校验内核对所述第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关通过所述使能控制管脚接收所述第一指令,然后所述控制开关根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在本申请实施例中,控制器包括安全校验内核,安全校验内核通过控制开关的使能控制管脚和控制开关通信。控制开关通过第一通道和安全校验内核相连接,控制开关通过第二通道和计算机硬件系统相连接,控制开关通过第三通道和BIOS文件存储装置相连接。安全校验内核首先通过第一通道和第三通道获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件,安全校验内核然后对第一启动程序文件进行校验,当第一启动程序文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令,控制开关通过使能控制管脚接收第一指令,然后控制开关根据第一指令将第二通道和第三通道导通,以使得在第二通道和第三通道导通时成功建立BIOS文件存储装置和计算机硬件系统之间的连接,计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,安全校验内核可以对BIOS文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,控制开关才会建立BIOS文件存储装置和计算机硬件系统之间的连接,此时计算机硬件系统可以读取BIOS 文件存储装置中的第一启动程序文件,以完成上电运行,本申请实施例中安全校验内核可对BIOS文件存储装置中预先存储的第一启动程序文件进行校验,以保证该第一启动程序文件是安全的,即保证该第一启动程序文件未被篡改,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述安全校验内核对所述第一启动程序文件进行校验,包括:所述安全校验内核使用密钥和所述存储器中的启动程序源文件进行校验计算,得到第一校验结果;所述安全校验内核使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;所述安全校验内核根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述方法还包括:当所述第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述BIOS文件存储装置中;所述安全校验内核对所述BIOS文件存储装置中写入的启动程序源文件进行校验;当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关通过所述使能控制管脚接收所述第一指令,并根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述BIOS文件存储装置中写入的启动程序源文件完成上电运行。
在一种可能的实现方式中,所述方法还包括:当所述第一启动程序文件没有通过校验时,所述安全校验内核将所述BIOS文件存储装置中存储的第一启动程序文件删除。其中,当第一启动程序文件没有通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器还可以删除BIOS文件存储装置中存储的第一启动程序文件,即控制器可以擦除掉BIOS文件存储装置中被篡改的第一启动程序文件,从而该控制器的闪存可用于重新写入未被篡改的启动程序源文件,提高了闪存的空间使用效率。
在一种可能的实现方式中,所述BIOS文件存储装置包括:主BIOS文件存储模块和从 BIOS文件存储模块,其中,所述控制开关通过第一子通道与所述主BIOS文件存储模块连接,所述控制开关通过第二子通道与所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;所述安全校验内核通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,包括:所述安全校验内核通过所述第一通道和所述第一子通道获取所述主BIOS 文件存储模块中的第一启动程序文件;所述安全校验内核对所述第一启动程序文件进行校验,包括:所述安全校验内核对所述主BIOS文件存储模块中的第一启动程序文件进行校验;所述控制开关根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,包括:所述控制开关根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
在一种可能的实现方式中,所述方法还包括:当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核通过所述第一通道和所述第二子通道获取所述从BIOS文件存储模块中的第一启动程序文件;所述安全校验内核对所述从BIOS文件存储模块中的第一启动程序文件进行校验;当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第二指令;所述控制开关通过所述使能控制管脚接收所述第二指令,然后所述控制开关根据所述第二指令将所述第二通道和所述第二子通道导通,以使得在所述第二通道和所述第二子通道导通时成功建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述方法还包括:当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述主BIOS文件存储模块中;所述安全校验内核对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关通过所述使能控制管脚接收所述第一指令,然后所述控制开关根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述方法还包括:当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述从BIOS文件存储模块中。
在一种可能的实现方式中,所述控制器为基板管理控制器BMC,所述BIOS文件存储装置为存储BIOS文件的闪存;所述第一通道为第一串行外设接口SPI总线,所述第二通道为第二SPI总线,所述第三通道为第三SPI总线。
第三方面,本申请实施例还提供一种控制器,包括:处理器,存储器;所述处理器、所述存储器之间进行相互的通信;所述存储器用于存储指令;所述处理器用于执行所述存储器中的所述指令,执行如前述第一方面中任一项所述的方法。
在本申请的第三方面中,控制器的组成模块还可以执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明。
第四方面,本申请实施例还提供一种控制器,所述控制器包括:安全校验内核,所述安全校验内核通过控制开关的使能控制管脚和所述控制开关通信;所述控制开关通过第一通道和所述安全校验内核相连接,所述控制开关通过第二通道和计算机硬件系统相连接,所述控制开关通过第三通道和BIOS文件存储装置相连接;所述安全校验内核,用于通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;对所述第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关,用于通过所述使能控制管脚接收所述第一指令,然后根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述安全校验内核,还用于使用密钥和所述存储器中的启动程序源文件进行校验计算,得到第一校验结果;使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述BIOS文件存储装置中;对所述BIOS文件存储装置中写入的启动程序源文件进行校验;当所述BIOS 文件存储装置中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关,还应用于通过所述使能控制管脚接收所述第一指令,并根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在一种可能的实现方式中,所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述BIOS文件存储装置中存储的第一启动程序文件删除。
在一种可能的实现方式中,所述BIOS文件存储装置包括:主BIOS文件存储模块和从 BIOS文件存储模块,其中,所述控制开关通过第一子通道与所述主BIOS文件存储模块连接,所述控制开关通过第二子通道与所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;所述安全校验内核,还用于通过所述第一通道和所述第一子通道获取所述主BIOS文件存储模块中的第一启动程序文件;对所述主BIOS文件存储模块中的第一启动程序文件进行校验;所述控制开关,还用于根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
在一种可能的实现方式中,所述安全校验内核,还用于当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,通过所述第一通道和所述第二子通道获取所述从 BIOS文件存储模块中的第一启动程序文件;对所述从BIOS文件存储模块中的第一启动程序文件进行校验;当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第二指令;所述控制开关,还用于通过所述使能控制管脚接收所述第二指令,根据所述第二指令将所述第二通道和所述第二子通道导通,以使得在所述第二通道和所述第二子通道导通时成功建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接,由所述计算机硬件系统使用所述从BIOS文件存储模块中的第一启动程序文件完成上电运行。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述主BIOS文件存储模块中;对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;所述控制开关,还用于通过所述使能控制管脚接收所述第一指令,根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
在一种可能的实现方式中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述从BIOS文件存储模块中。
在一种可能的实现方式中,所述控制器为基板管理控制器BMC,所述BIOS文件存储装置为存储BIOS文件的闪存;所述第一通道为第一串行外设接口SPI总线,所述第二通道为第二SPI总线,所述第三通道为第三SPI总线。
在本申请的第四方面中,控制器的组成模块还可以执行前述第二方面以及各种可能的实现方式中所描述的步骤,详见前述对第二方面以及各种可能的实现方式中的说明。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面所述的方法。
第六方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或者第二方面所述的方法。
第七方面,本申请实施例提供一种控制器,该控制器可以包括终端设备或者芯片等实体,所述控制器包括:处理器、存储器;所述存储器用于存储指令;所述处理器用于执行所述存储器中的所述指令,使得所述控制器执行如前述第一方面或第二方面中任一项所述的方法。
第八方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持控制器实现上述方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存控制器必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
第九方面,本申请提供了一种计算机的启动系统,所述计算机的启动系统包括:控制器、计算机硬件系统和基本输入输出系统BIOS文件存储装置,所述控制器分别与所述计算机硬件系统、所述BIOS文件存储装置相连接;所述控制器,用于执行如第一方面或者第二方面中任意一项所述的方法。
附图说明
图1为本申请实施例提供的一种计算机的启动系统的组成结构示意图;
图2为本申请实施例提供的一种计算机的启动方法的流程方框示意图;
图3为本申请实施例提供的一种计算机的启动方法的流程方框示意图;
图4为本申请实施例提供的一种计算机的启动方法的流程方框示意图;
图5a为本申请实施例提供的一种计算机的启动系统的组成结构示意图;
图5b为本申请实施例提供的另一种计算机的启动系统的组成结构示意图;
图6为本申请实施例提供的一种计算机的启动方法的流程方框示意图;
图7为本申请实施例提供的一种BMC系统的组成结构示意图;
图8为本申请实施例的一种计算机的启动系统的内部硬件构成示意图;
图9为本申请实施例提供的一种计算机的启动方法的执行流程示意图;
图10a为本申请实施例提供的BIOS选通控制开关的默认初始导通的示意图;
图10b为本申请实施例提供的X86系统和主BIOS导通的示意图;
图10c为本申请实施例提供的X86系统和从BIOS导通的示意图;
图10d为本申请实施例提供的BMC向主BIOS和从BIOS回写BIOS源文件的示意图;
图11为本申请实施例提供的一种控制器的组成结构示意图;
图12为本申请实施例提供的另一种控制器的组成结构示意图。
具体实施方式
本申请实施例提供了一种计算机的启动方法和控制器、存储介质以及系统,用于提高计算机的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
下面结合附图,对本申请的实施例进行描述。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
本申请实施例的技术方案可以应用于计算机的启动系统,如图1所示,计算机的启动系统100可以包括:控制器101、计算机硬件系统102和基本输入输出系统(basic inputoutput system,BIOS)文件存储装置103,其中,控制器101分别与计算机硬件系统102、BIOS文件存储装置103相连接,例如,控制器101与计算机硬件系统102之间建立有一通道,控制器101与BIOS文件存储装置103之间建立有另一通道。
控制器101可以用于控制计算机硬件系统102是否能够读取BIOS文件存储装置103中存储的第一启动程序文件,其中,上电运行指的是通电运行,例如接通交流电(alternating current,AC),电压可以是220伏特。具体的,控制器101可以对BIOS 文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,计算机硬件系统102能够读取BIOS文件存储装置103中存储的第一启动程序文件,第一启动程序文件没有通过校验时,控制器101可以用于控制计算机硬件系统102不能够读取 BIOS文件存储装置103中存储的第一启动程序文件,第一启动程序文件没有通过校验的原因可能是该第一启动程序文件被篡改,或者该第一启动程序文件损坏。
BIOS文件存储装置103可用于存储第一启动程序文件,以为计算机硬件系统102的上电运行提供BIOS文件。
当计算机硬件系统102和BIOS文件存储装置103成功建立连接时,计算机硬件系统102可读取BIOS文件存储装置103中存储的第一启动程序文件,从而使用该第一启动程序文件完成上电运行。
在本申请的一些实施例中,控制器101可以为基板管理控制器(baseboardmanagement controller,BMC)。其中,BMC是独立于计算机硬件系统之外的一个独立系统,BMC可用于控制计算机硬件系统102是否能够读取BIOS文件存储装置103中存储的第一启动程序文件。另外,BMC还用于对计算机硬件系统提供必要的故障诊断、故障上报、故障告警,故障日志收集、设备运行状态监控等必要功能,提供对计算机硬件系统的主要软件实时在线升级能力等,保障计算机硬件系统的正常运行及维护。
在本申请的一些实施例中,BIOS文件存储装置103为用于存储BIOS文件的存储装置,例如BIOS文件存储装置具体可以是具有SPI接口的闪存(FLASH)。其中,BIOS也可以称为BIOS硬件系统,BIOS可以用于在控制器101的控制作用下引导计算机硬件系统102上电运行。BIOS中存储有启动程序文件,该启动程序文件可以包括引导计算机硬件系统102 上电运行。BIOS是一组固化到计算机内主板上一个闪存(flash)芯片上的程序,保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序,其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。本申请实施例中,BIOS 文件存储装置103和计算机硬件系统102之间能否建立连接由控制器101根据该BIOS文件存储装置中预先存储的启动程序文件是否通过校验来确定,BIOS文件存储装置中预先存储的启动程序文件也可以称为BIOS原始文件或者BIOS源程序等。本申请实施例中,当启动程序文件被篡改或者损坏时,控制器101会判定校验失败,此时无法建立BIOS文件存储装置103和计算机硬件系统102之间的连接,计算机硬件系统102不能够读取BIOS文件存储装置103中存储的第一启动程序文件,以避免使用被篡改的启动程序文件而导致的安全风险。
在本申请的一些实施例中,计算机硬件系统102是执行计算机启动的硬件系统,其中,计算机可以是终端设备、或者网络设备、或者服务器等。例如计算机硬件系统102可以是X86系统,或者计算机硬件系统可以是ARM(advanced RISC machine)系统。具体的,X86 系统是基于INTEL平台的X86计算机系统,可基于windows操作系统或者linux操作系统进行相关运算,完成特定的软硬件功能。本申请实施例中不限定的计算机硬件系统102的具体类型,该计算机硬件系统102可以是各种类型通用服务器的硬件系统,只要该计算机硬件系统102需要读取BIOS文件存储装置103中的第一启动程序文件才能完成上电运行即可。
在本申请的一些实施例中,控制器101为BMC、且BIOS文件存储装置103为存储BIOS文件的闪存,BMC通过第一串行外设接口(serial peripheral interface,SPI)总线和存储BIOS文件的闪存相连接,BMC通过第二SPI总线和计算机硬件系统相连接。其中,SPI 总线是一种标准的四线同步双向串行总线,计算机硬件系统可以是X86系统,SPI总线在 X86系统中用于连接X86系统与存储BIOS文件的闪存,X86系统在开机上电过程中通过SPI 总线与存储BIOS文件的闪存之间进行通讯,完成X86系统的基本上电配置,保证X86系统能上电运行。
接下来从控制器的角度说明本申请实施例提供的计算机的启动方法,如图2所示,本申请实施例提供的一种计算机的启动方法可用于前述的控制器,基于图1可知,控制器分别与计算机硬件系统、BIOS文件存储装置相连接,该方法可以包括如下步骤:
201、当控制器上电运行时,控制器获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件。
在本申请实施例中,控制器可以用于控制计算机硬件系统是否能够读取BIOS文件存储装置中存储的第一启动程序文件。本申请实施例中首先向控制器通电,使得控制器上电运行起来,控制器可以和BIOS文件存储装置建立有通信连接,从而控制器获取到BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件,第一启动程序文件是计算机硬件系统上电运行所需要的引导文件。例如,BIOS文件存储装置为闪存,该闪存中存储有第一启动程序文件,闪存是一种存储芯片,闪存可以用于存储第一启动程序文件,例如第一启动程序文件可以是BIOS原始文件或者BIOS源程序。控制器可以从该闪存中读取到第一启动程序文件,然后控制器执行后续步骤202。
需要说明的是,在控制器上电运行时,计算机硬件系统还没有和BIOS文件存储装置相连接,此时计算机硬件系统无法进行开机配置及自检,故此时的计算机硬件系统还没有启动。
202、控制器对第一启动程序文件进行校验。
在本申请实施例中,控制器获取BIOS文件存储装置中的第一启动程序文件之后,控制器可以对该第一启动程序文件进行校验,例如控制器可以使用可信算法对该第一启动程序文件进行可信度的校验,若该第一启动程序文件被损坏或者被篡改,则第一启动程序文件是不能够通过校验的,相反的,若该第一启动程序没有被损坏、且没有被篡改,即该第一启动程序文件与BIOS文件存储装置中原始写入时的启动程序文件保持一致,则第一启动程序文件通过校验。本申请实施例中,控制器对第一启动程序文件的校验结果确定了是否执行后续步骤203,当第一启动程序文件通过校验时,可执行后续步骤203。
在本申请的一些实施例中,控制器对第一启动程序文件进行校验可以有多种方法,例如控制器可以使用多种校验算法实现对第一启动程序文件的校验,例如控制器采用的校验算法可以包括:循环冗余校验(cyclic redundancy check,CRC)。进一步的,在本申请的一些实施例中,步骤202控制器对第一启动程序文件进行校验,包括:
A1、控制器使用密钥和控制器中的启动程序源文件进行校验计算,得到第一校验结果,启动程序源文件是预先存储在控制器中的BIOS文件;
A2、控制器使用密钥和第一启动程序文件进行校验计算,得到第二校验结果;
A3、控制器根据第一校验结果和第二校验结果确定第一启动程序文件是否通过校验。
其中,控制器中可以预先存储密钥和启动程序源文件,该密钥和启动程序源文件存在绑定关系,该启动程序源文件是指用于引导计算机硬件系统启动的BIOS文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,控制器中的闪存可用于存储密钥和启动程序源文件,以便于控制器使用该启动程序源文件进行安全校验。
控制器首先获取密钥和启动程序源文件,然后使用密钥和控制器中的启动程序源文件进行校验计算,得到第一校验结果,同样的,控制器还可以使用该密钥和第一启动程序文件进行校验计算,得到第二校验结果,最后控制器比较这两个校验结果,可以根据第一校验结果和第二校验结果确定第一启动程序文件是否通过校验,例如第一校验结果和第二校验结果完全相同,则确定控制器中存储的启动程序源文件和BIOS文件存储装置中的存储的第一启动程序文件是相同的,即BIOS文件存储装置中的存储的第一启动程序文件没有被篡改,此时输出校验结果为第一启动程序文件通过校验。又如第一校验结果和第二校验结果不相同,则确定控制器中存储的启动程序源文件和BIOS文件存储装置中的存储的第一启动程序文件是不相同的,即BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,此时输出校验结果为第一启动程序文件没有通过校验。
需要说明的是,控制器使用密钥和控制器中的启动程序源文件进行校验计算以得到第一校验结果,可以是在每次需要对第一启动程序文件进行校验时生成第一校验结果,也可以是预先计算出第一校验结果并存储在控制器的闪存中,在每次需要对第一启动程序文件进行校验时从控制器的闪存中读取该第一校验结果。对于第一校验结果的获取方式,此处不做限定。
203、当第一启动程序文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,计算机硬件系统使用第一启动程序文件完成上电运行。
在本申请实施例中,当第一启动程序文件通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件没有被篡改,即BIOS文件存储装置中的存储的第一启动程序文件是安全可信的,此时控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,例如控制器将BIOS文件存储装置和计算机硬件系统之间的通道导通,以使得计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,BIOS文件存储装置中的存储的第一启动程序文件是安全可信时,计算机硬件系统才能够读取BIOS文件存储装置中存储的第一启动程序文件,使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
通过前述实施例的举例说明可知,控制器分别与计算机硬件系统、BIOS文件存储装置相连接。当控制器上电运行时,控制器首先获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件,控制器然后对第一启动程序文件进行校验,当第一启动程序文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,最后计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,该控制器可以对BIOS文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,控制器才会建立BIOS文件存储装置和计算机硬件系统之间的连接,此时计算机硬件系统可以读取BIOS文件存储装置中的第一启动程序文件,以完成上电运行,本申请实施例中控制器可对BIOS文件存储装置中预先存储的第一启动程序文件进行校验,以保证该第一启动程序文件是安全的,即保证该第一启动程序文件未被篡改,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
如图3所示,本申请实施例提供的一种计算机的启动方法可用于前述的控制器,基于图1可知,控制器分别与计算机硬件系统、BIOS文件存储装置相连接,该方法可以包括如下步骤:
301、当控制器上电运行时,控制器获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件。
302、控制器对第一启动程序文件进行校验。
其中,当第一启动程序文件通过校验时,控制器执行后续步骤303,当第一启动程序文件没有通过校验时,控制器执行后续步骤304至步骤306。
303、当第一启动程序文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,计算机硬件系统使用第一启动程序文件完成上电运行。
其中,步骤301至步骤303与前述的步骤201至步骤203相类似,详见前述实施例的说明。
304、当第一启动程序文件没有通过校验时,控制器将启动程序源文件写入到BIOS文件存储装置中,启动程序源文件是预先存储在控制器中的BIOS文件。
其中,当第一启动程序文件没有通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。启动程序源文件还可以用于对BIOS文件存储装置中被篡改的第一启动程序文件进行恢复,从而使得BIOS文件存储装置中重新写入未被篡改的启动程序源文件,计算机硬件系统才能够读取BIOS文件存储装置中重新写入的启动程序源文件,使用该启动程序源文件进行上电运行,避免使用被篡改的启动程序文件而导致的安全风险。
在本申请的一些实施例中,控制器还可以执行如下步骤:
控制器将所述BIOS文件存储装置中存储的第一启动程序文件删除。
其中,当第一启动程序文件没有通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器还可以删除BIOS文件存储装置中存储的第一启动程序文件,即控制器可以擦除掉BIOS文件存储装置中被篡改的第一启动程序文件,从而该控制器的闪存可用于重新写入未被篡改的启动程序源文件,提高了闪存的空间使用效率。
305、控制器对BIOS文件存储装置中写入的启动程序源文件进行校验。
其中,当BIOS文件存储装置中写入启动程序源文件之后,控制器可以再次读取已写入BIOS文件存储装置中的启动程序源文件,对BIOS文件存储装置中写入的启动程序源文件进行校验,校验的方式请参阅前述实施例中步骤202的说明,此处不做详细说明。
306、当BIOS文件存储装置中写入的启动程序源文件通过校验时,控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,计算机硬件系统使用BIOS文件存储装置中写入的启动程序源文件完成上电运行。
在本申请实施例中,BIOS文件存储装置中重新写入了启动程序源文件,BIOS文件存储装置中写入的启动程序源文件通过校验,此时控制器建立BIOS文件存储装置和计算机硬件系统之间的连接,当成功建立BIOS文件存储装置和计算机硬件系统之间的连接时,计算机硬件系统使用BIOS文件存储装置中写入的启动程序源文件完成上电运行。本申请实施例中,控制器具有对BIOS文件存储装置的重新写入启动程序源文件的功能,使得BIOS 文件存储装置中的存储的启动程序源文件是安全可信的,计算机硬件系统才能够读取BIOS 文件存储装置中存储的第一启动程序文件,使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
如图4所示,本申请实施例提供的一种计算机的启动方法可用于前述的控制器,基于图1可知,控制器分别与计算机硬件系统、BIOS文件存储装置相连接,其中,BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS文件存储模块,即BIOS文件存储装置可以是具有主从备份功能的两个BIOS文件存储模块,例如主BIOS文件存储模块可以是主 BIOS硬件系统,从BIOS文件存储模块可以是从BIOS硬件系统。控制器分别与主BIOS文件存储模块和从BIOS文件存储模块相连接,主BIOS文件存储模块和从BIOS文件存储模块中都预先存储有第一启动程序文件,即两个BIOS文件存储模块都存储有相同的第一启动程序文件。
本申请实施例中,控制器优先和主BIOS文件存储模块进行交互,当主BIOS文件存储模块中的第一启动程序文件没有通过校验时,控制器再和从BIOS文件存储模块进行交互,当从BIOS文件存储模块中的第一启动程序文件通过校验时,计算机硬件系统才能够读取 BIOS文件存储装置中存储的第一启动程序文件,使用该第一启动程序文件进行上电运行,本申请实施例中BIOS文件存储装置可以通过两个BIOS文件存储模块来实现,提高了计算机硬件系统成功上电运行的概率,保证了计算机硬件系统的稳定性。本申请实施例提供的计算机的启动方法可以包括如下步骤:
401、控制器获取主BIOS文件存储模块中的第一启动程序文件。
在本申请实施例中,控制器可以用于控制计算机硬件系统是否能够读取主BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行。当计算机通电之后,首先向控制器通电,使得控制器上电运行起来,控制器可以和主BIOS文件存储模块建立有通信连接,从而控制器获取到主BIOS文件存储模块中的第一启动程序文件,其中,第一启动程序文件是预先存储在主BIOS文件存储模块中的BIOS文件,第一启动程序文件是计算机硬件系统上电运行时所需要的引导文件。
402、控制器对主BIOS文件存储模块中的第一启动程序文件进行校验。
在本申请实施例中,控制器获取主BIOS文件存储模块中的第一启动程序文件之后,控制器可以对该第一启动程序文件进行校验,例如控制器可以使用可信算法对该第一启动程序文件进行可信度的校验,若该第一启动程序文件被损坏或者被篡改,则第一启动程序文件是不能够通过校验的,相反的,若该第一启动程序没有被损坏、且没有被篡改,即该第一启动程序文件在主BIOS文件存储模块中原始写入时的启动程序文件保持一致,则第一启动程序文件通过校验。本申请实施例中,控制器对第一启动程序文件的校验结果确定了是否执行后续步骤403,当第一启动程序文件通过校验时,可执行后续步骤403。当第一启动程序文件没有通过校验时,控制器执行后续步骤404至步骤406。
403、当主BIOS文件存储模块中的第一启动程序文件通过校验时,控制器建立主BIOS 文件存储模块和计算机硬件系统之间的连接。
在本申请实施例中,当第一启动程序文件通过校验时,则说明主BIOS文件存储模块中的存储的第一启动程序文件没有被篡改,即主BIOS文件存储模块中的存储的第一启动程序文件是安全可信的,此时控制器建立主BIOS文件存储模块和计算机硬件系统之间的连接,例如控制器将主BIOS文件存储模块和计算机硬件系统之间的通道导通,以使得主 BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,主BIOS文件存储模块中的存储的第一启动程序文件是安全可信时,计算机硬件系统能够读取主BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
404、当主BIOS文件存储模块中的第一启动程序文件没有通过校验时,控制器获取从 BIOS文件存储模块中的第一启动程序文件。
在本申请实施例中,控制器可以用于控制计算机硬件系统是否能够读取从BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行。控制器上电运行起来之后,控制器可以和从BIOS文件存储模块建立有通信连接,从而控制器获取到从BIOS文件存储模块中的第一启动程序文件,其中,第一启动程序文件是预先存储在从BIOS文件存储模块中的BIOS文件,第一启动程序文件是计算机硬件系统上电运行时所需要的引导文件。
405、控制器对从BIOS文件存储模块中的第一启动程序文件进行校验。
在本申请实施例中,控制器获取从BIOS文件存储模块中的第一启动程序文件之后,控制器可以对该第一启动程序文件进行校验,例如控制器可以使用可信算法对该第一启动程序文件进行可信度的校验,若该第一启动程序文件被损坏或者被篡改,则第一启动程序文件是不能够通过校验的,相反的,若该第一启动程序没有被损坏、且没有被篡改,即该第一启动程序文件在从BIOS文件存储模块中原始写入时的启动程序文件保持一致,则第一启动程序文件通过校验。本申请实施例中,控制器对第一启动程序文件的校验结果确定了是否执行后续步骤406,当第一启动程序文件通过校验时,可执行后续步骤406。当第一启动程序文件没有通过校验时,控制器执行后续步骤407至步骤409。
406、当从BIOS文件存储模块中的第一启动程序文件通过校验时,控制器建立从BIOS 文件存储模块和计算机硬件系统之间的连接。
在本申请实施例中,当第一启动程序文件通过校验时,则说明从BIOS文件存储模块中的存储的第一启动程序文件没有被篡改,即从BIOS文件存储模块中的存储的第一启动程序文件是安全可信的,此时控制器建立从BIOS文件存储模块和计算机硬件系统之间的连接,例如控制器将从BIOS文件存储模块和计算机硬件系统之间的通道导通,以使得从 BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,从BIOS文件存储模块中的存储的第一启动程序文件是安全可信时,计算机硬件系统才能够读取从BIOS文件存储模块中存储的第一启动程序文件,计算机硬件系统只有在读取到第一启动程序文件的情况下,才能够使用该第一启动程序文件进行上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
407、当从BIOS文件存储模块中的第一启动程序文件没有通过校验时,控制器将启动程序源文件写入到主BIOS文件存储模块中,启动程序源文件是预先存储在控制器中的BIOS 文件。
其中,当从BIOS文件存储模块中的第一启动程序文件没有通过校验时,则说明从BIOS 文件存储模块中的存储的第一启动程序文件可能被篡改或者被损坏,即从BIOS文件存储模块中的存储的第一启动程序文件是不可信的。控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。启动程序源文件还可以用于对主BIOS文件存储模块中被篡改的第一启动程序文件进行恢复,从而使得主BIOS文件存储模块中重新写入未被篡改的启动程序源文件,使得计算机硬件系统能够读取主BIOS文件存储模块中未被篡改的启动程序源文件完成上电运行,避免使用被篡改的启动程序文件而导致的安全风险。
408、控制器对主BIOS文件存储模块中写入的启动程序源文件进行校验。
其中,当主BIOS文件存储模块中写入启动程序源文件之后,控制器可以再次读取已写入主BIOS文件存储模块中的启动程序源文件,对主BIOS文件存储模块中写入的启动程序源文件进行校验,校验的方式请参阅前述实施例中步骤202的说明,此处不做详细说明。
409、当主BIOS文件存储模块中写入的启动程序源文件通过校验时,控制器建立主BIOS 文件存储模块和计算机硬件系统之间的连接,当成功建立主BIOS文件存储模块和计算机硬件系统之间的连接时,计算机硬件系统使用主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
在本申请实施例中,主BIOS文件存储模块中重新写入了启动程序源文件,主BIOS文件存储模块中写入的启动程序源文件通过校验,此时控制器建立主BIOS文件存储模块和计算机硬件系统之间的连接,当成功建立主BIOS文件存储模块和计算机硬件系统之间的连接时,计算机硬件系统使用主BIOS文件存储模块中写入的启动程序源文件完成上电运行。本申请实施例中,控制器具有对主BIOS文件存储模块的重新写入启动程序源文件的功能,使得主BIOS文件存储模块中的存储的启动程序源文件是安全可信的,计算机硬件系统能够读取主BIOS文件存储模块中的启动程序源文件以完成上电运行,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
在本申请的一些实施例中,控制器还可以执行如下步骤:
当从BIOS文件存储模块中的第一启动程序文件没有通过校验时,控制器将启动程序源文件写入到从BIOS文件存储模块中,启动程序源文件是预先存储在控制器中的BIOS文件。
其中,当第一启动程序文件没有通过校验时,则说明从BIOS文件存储模块中的存储的第一启动程序文件可能被篡改或者被损坏,即从BIOS文件存储模块中的存储的第一启动程序文件是不可信的。控制器中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在控制器中,例如控制器中可以包括有闪存,该闪存也可以称为flash存储控制器,该闪存可用于存储启动程序源文件,以便于控制器使用该启动程序源文件进行校验。
本申请实施例的技术方案可以应用于计算机的启动系统,如图5a和图5b所示,计算机的启动系统500可以包括:控制器501、计算机硬件系统502和BIOS文件存储装置503,其中,控制器501部署在BIOS文件存储装置503和计算机硬件系统502之间,控制器501 分别与计算机硬件系统502、BIOS文件存储装置503相连接。
其中,控制器501包括:安全校验内核5011,安全校验内核5011通过控制开关5012的使能控制管脚和控制开关5012通信。安全校验内核5011可以用于控制计算机硬件系统502是否能够读取BIOS文件存储装置503中的第一启动程序文件以完成上电运行,其中,上电运行指的是通电运行,例如接通AC,电压可以是220伏特。具体的,安全校验内核 5011可以对BIOS文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,安全校验内核5011可以用于控制计算机硬件系统502能够读取BIOS文件存储装置503中的第一启动程序文件以完成上电运行,第一启动程序文件没有通过校验时,安全校验内核5011可以用于控制计算机硬件系统502不能够读取BIOS文件存储装置503 中的第一启动程序文件,从而计算机硬件系统502不能够上电运行,第一启动程序文件没有通过校验的原因可能是该第一启动程序文件被篡改,或者该第一启动程序文件损坏。
在本申请实施例中,例如图5a所示,控制开关5012可以属于控制器501,即控制器501包括安全校验内核5011和控制开关5012。不限定的是,如图5b所示,控制器5012 也可以是独立于控制器501之外的一个逻辑开关。控制开关5012通过第一通道和安全校验内核5011相连接,控制开关5012通过第二通道和计算机硬件系统502相连接,控制开关5012通过第三通道和BIOS文件存储装置503相连接;
BIOS文件存储装置503可以用于存储第一启动程序文件。
计算机硬件系统502可以用于当BIOS文件存储装置503与计算机硬件系统502相连接时,读取BIOS文件存储装置503中的第一启动程序文件,使用该第一启动程序文件完成上电运行。
在本申请的一些实施例中,控制器501还包括:存储器,其中,安全校验内核5011和存储器相连接,存储器中预先存储有启动程序源文件。例如存储器可以是闪存。
接下来从控制器的角度说明本申请实施例提供的计算机的启动方法,如图6所示,本申请实施例提供的一种计算机的启动方法可用于前述的控制器,基于图5a和图5b可知,安全校验内核5011可以控制控制开关5012是否导通,在控制开关5012导通时将计算机硬件系统和BIOS文件存储装置连接在一起,该方法可以包括如下步骤:
601、安全校验内核通过第一通道和第三通道获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件。
其中,安全校验内核是对第一启动程序文件具有校验功能的内核模块,此步骤601中安全校验内核通过第一通道和控制开关相连接,控制开关通过第三通道和BIOS文件存储装置相连接,因此当第一通道和第二通道导通时,安全校验内核可以和BIOS文件存储装置建立有通信连接,此时安全校验内核可以获取第一启动程序文件,对于第一启动程序文件的说明,详见前述实施例中步骤201的详细说明。
602、安全校验内核对第一启动程序文件进行校验。
其中,安全校验内核对第一启动程序文件进行校验的说明,详见前述实施例中步骤202 的详细说明。
603、当第一启动程序文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令。
在本申请实施例中,当第一启动程序文件通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件没有被篡改,即BIOS文件存储装置中的存储的第一启动程序文件是安全可信的,此时安全校验内核通过使能控制管脚向控制开关发送第一指令,其中,第一指令用于控制控制开关将第二通道和第三通道导通。
使能控制管脚是配置在控制开关上的一个通信接口,安全校验内核可以通过安全校验内核向控制开关下发具体的指令。
604、控制开关通过使能控制管脚接收第一指令,然后控制开关根据第一指令将第二通道和第三通道导通,以使得在第二通道和第三通道导通时成功建立BIOS文件存储装置和计算机硬件系统之间的连接,计算机硬件系统使用第一启动程序文件完成上电运行。
在本申请实施例中,控制开关通过第二通道和计算机硬件系统相连接,控制开关通过第三通道和BIOS文件存储装置相连接,因此当第三通道和第二通道导通时,成功建立BIOS 文件存储装置和计算机硬件系统之间的连接,计算机硬件系统可以从BIOS文件存储装置中读取到第一启动程序文件,然后使用第一启动程序文件完成上电运行。
在本申请的一些实施例中,安全校验内核对第一启动程序文件进行校验可以有多种方法,例如控制器可以使用多种校验算法实现对第一启动程序文件的校验,例如控制器采用的校验算法可以包括:CRC。进一步的,在本申请的一些实施例中,控制器还包括:存储器,其中,安全校验内核和存储器相连接,存储器中预先存储有启动程序源文件。
步骤602安全校验内核对第一启动程序文件进行校验,包括:
B1、安全校验内核使用密钥和存储器中的启动程序源文件进行校验计算,得到第一校验结果;
B2、安全校验内核使用密钥和第一启动程序文件进行校验计算,得到第二校验结果;
B3、安全校验内核根据第一校验结果和第二校验结果确定第一启动程序文件是否通过校验。
其中,步骤B1至步骤B3中安全校验内核的校验过程与前述实施例中步骤A1至步骤A3中的说明类似,请参阅前述对步骤A1至步骤A3中的详细说明。
需要说明的是,安全校验内核使用密钥和控制器中的启动程序源文件进行校验计算以得到第一校验结果,可以是在每次需要对第一启动程序文件进行校验时生成第一校验结果,也可以是预先计算出第一校验结果并存储在闪存中,在每次需要对第一启动程序文件进行校验时从闪存中读取该第一校验结果。对于第一校验结果的获取方式,此处不做限定。
在本申请的一些实施例中,控制器还包括:存储器,其中,安全校验内核和存储器相连接,存储器中预先存储有启动程序源文件;
本申请实施例提供的方法还包括如下步骤:
C1、当第一启动程序文件没有通过校验时,安全校验内核将启动程序源文件写入到 BIOS文件存储装置中;
C2、安全校验内核对BIOS文件存储装置中写入的启动程序源文件进行校验。
其中,步骤C1至步骤C2中安全校验内核的校验过程与前述实施例中步骤304至步骤 305中的说明类似,请参阅前述对步骤304至步骤305中的详细说明。
C3、当BIOS文件存储装置中写入的启动程序源文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令;
C4、控制开关通过使能控制管脚接收第一指令,并根据第一指令将第二通道和第三通道导通,以使得在第二通道和第三通道导通时成功建立BIOS文件存储装置和计算机硬件系统之间的连接,计算机硬件系统使用第一启动程序文件完成上电运行。
其中,步骤C3至步骤C4中安全校验内核的校验过程与前述实施例中步骤603至步骤 604中的说明类似,请参阅前述对步骤603至步骤604中的详细说明。
在本申请的一些实施例中,本申请实施例提供的方法还包括如下步骤:
当第一启动程序文件没有通过校验时,安全校验内核将BIOS文件存储装置中存储的第一启动程序文件删除。
其中,当第一启动程序文件没有通过校验时,则说明BIOS文件存储装置中的存储的第一启动程序文件可能被篡改或者被损坏,即BIOS文件存储装置中的存储的第一启动程序文件是不可信的。控制器还可以删除BIOS文件存储装置中存储的第一启动程序文件,即控制器可以擦除掉BIOS文件存储装置中被篡改的第一启动程序文件,从而该控制器的闪存可用于重新写入未被篡改的启动程序源文件,提高了闪存的空间使用效率。
在本申请的一些实施例中,BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS 文件存储模块,其中,控制开关通过第一子通道与主BIOS文件存储模块连接,控制开关通过第二子通道与从BIOS文件存储模块相连接,主BIOS文件存储模块和从BIOS文件存储模块中都预先存储有第一启动程序文件。
基于前述图5a和图5b可知,控制开关通过第三通道和BIOS文件存储装置相连接,BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS文件存储模块,第三通道可以包括第一子通道和第二子通道,具体的,第一子通道连接控制开关和主BIOS文件存储模块,第二子通道连接控制开关和从BIOS文件存储模块,对于第一子通道和第二子通道在图5a 和图5b中没有示意说明,此处仅作本申请实施例的一种可能性示例。
本申请实施例提供的方法还包括如下步骤:
D1、安全校验内核通过第一通道和第一子通道获取主BIOS文件存储模块中的第一启动程序文件。
D2、安全校验内核对主BIOS文件存储模块中的第一启动程序文件进行校验。
本申请实施例中,安全校验内核对第一启动程序文件的校验结果确定了是否执行后续步骤D3和D4,当第一启动程序文件通过校验时,可执行后续步骤D3和D4。当第一启动程序文件没有通过校验时,控制器执行后续步骤D5至步骤D8。
D3、当第一启动程序文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令。
D4、控制开关根据第一指令将第二通道和第一子通道导通,以使得在第二通道和第一子通道导通时成功建立主BIOS文件存储模块和计算机硬件系统之间的连接。
其中,步骤D1至步骤D4安全校验内核的校验过程与前述实施例中步骤601至步骤604 中的说明类似,请参阅前述对步骤601至步骤604中的详细说明。
D5、当主BIOS文件存储模块中的第一启动程序文件没有通过校验时,安全校验内核通过第一通道和第二子通道获取从BIOS文件存储模块中的第一启动程序文件;
D6、安全校验内核对从BIOS文件存储模块中的第一启动程序文件进行校验。
D7、当从BIOS文件存储模块中的第一启动程序文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第二指令;
D8、控制开关通过使能控制管脚接收第二指令,然后控制开关根据第二指令将第二通道和第二子通道导通,以使得在第二通道和第二子通道导通时成功建立从BIOS文件存储模块和计算机硬件系统之间的连接,由从BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。
其中,步骤D5至步骤D8安全校验内核的校验过程与前述实施例中步骤404至步骤406 中的说明类似,请参阅前述对步骤404至步骤406中的详细说明。
在本申请的一些实施例中,控制器还包括:存储器,其中,安全校验内核和存储器相连接,存储器中预先存储有启动程序源文件;
本申请实施例提供的方法还包括如下步骤:
E1、当从BIOS文件存储模块中的第一启动程序文件没有通过校验时,安全校验内核将启动程序源文件写入到主BIOS文件存储模块中;
E2、安全校验内核对主BIOS文件存储模块中写入的启动程序源文件进行校验;
E3、当主BIOS文件存储模块中写入的启动程序源文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令;
E4、控制开关通过使能控制管脚接收第一指令,然后控制开关根据第一指令将第二通道和第一子通道导通,以使得在第二通道和第一子通道导通时成功建立主BIOS文件存储模块和计算机硬件系统之间的连接,由主BIOS文件存储模块计算机硬件系统使用第一启动程序文件完成上电运行。
其中,步骤E1至步骤E4安全校验内核的校验过程与前述实施例中步骤407至步骤409 中的说明类似,请参阅前述对步骤407至步骤409中的详细说明。
在本申请的一些实施例中,控制器还包括:存储器,其中,安全校验内核和存储器相连接,存储器中预先存储有启动程序源文件;
本申请实施例提供的方法还包括如下步骤:
当从BIOS文件存储模块中的第一启动程序文件没有通过校验时,安全校验内核将启动程序源文件写入到从BIOS文件存储模块中。
其中,当第一启动程序文件没有通过校验时,则说明从BIOS文件存储模块中的存储的第一启动程序文件可能被篡改或者被损坏,即从BIOS文件存储模块中的存储的第一启动程序文件是不可信的。安全校验内核中可以预先存储启动程序源文件,该启动程序源文件是指用于启动计算机硬件系统的原始文件,该启动程序源文件可以加密后预先存储在安全校验内核中,例如安全校验内核中可以包括有闪存,该闪存也可以称为flash存储安全校验内核,该闪存可用于存储启动程序源文件,以便于安全校验内核使用该启动程序源文件进行校验。
通过前述实施例的举例说明可知,控制器包括安全校验内核,安全校验内核通过控制开关的使能控制管脚和控制开关通信。控制开关通过第一通道和安全校验内核相连接,控制开关通过第二通道和计算机硬件系统相连接,控制开关通过第三通道和BIOS文件存储装置相连接。安全校验内核首先通过第一通道和第三通道获取BIOS文件存储装置中的第一启动程序文件,其中,第一启动程序文件是预先存储在BIOS文件存储装置中的BIOS文件,安全校验内核然后对第一启动程序文件进行校验,当第一启动程序文件通过校验时,安全校验内核通过使能控制管脚向控制开关发送第一指令,控制开关通过使能控制管脚接收第一指令,然后控制开关根据第一指令将第二通道和第三通道导通,以使得在第二通道和第三通道导通时成功建立BIOS文件存储装置和计算机硬件系统之间的连接,计算机硬件系统使用第一启动程序文件完成上电运行。本申请实施例中,安全校验内核可以对BIOS 文件存储装置中的第一启动程序文件进行校验,只有该第一启动程序文件通过校验时,控制开关才会建立BIOS文件存储装置和计算机硬件系统之间的连接,此时计算机硬件系统可以读取BIOS文件存储装置中的第一启动程序文件,以完成上电运行,本申请实施例中安全校验内核可对BIOS文件存储装置中预先存储的第一启动程序文件进行校验,以保证该第一启动程序文件是安全的,即保证该第一启动程序文件未被篡改,提高了计算机硬件系统的启动安全等级,避免使用被篡改的启动程序文件而导致的安全风险。
为便于更好的理解和实施本申请实施例的上述方案,下面举例相应的应用场景来进行具体说明。
本申请实施例可以引导X86系统安全的启动并进入操作系统,保证BIOS程序文件的安全可信,避免BIOS程序文件被篡改时造成的数据泄露。
如图7所示,本申请实施例提供的控制器可以是BMC系统,BMC系统包括:BMC安全校验内核、BIOS原始文件和BIOS选通控制开关(后续简称为控制开关)。BMC系统是基于可信算法的BMC带外管理系统,本申请实施例中BMC带外管理系统是计算机附带的一个带完管理系统,本申请实施例中BMC带外管理系统具有BMC安全校验内核对BIOS进行开机前文件完整性校验功能,还可以对损坏的BIOS程序文件进行回写恢复功能。
BMC系统主要包括BMC芯片,BMC芯片内部包含可信算法的安全校验内核及FLASH存储控制器等两部分。示例性的,该存储控制器上会预先存储一个X86系统的BIOS原始文件,该文件通过BMC安全校验内核经一定加密算法后得出一组密钥,并将该密钥与BIOS 原始文件进行绑定。无该密钥匹配外部系统不能对BMC内部存储的BIOS原始文件进行擦写。其中,BIOS原始文件也可以称为BIOS程序数据、BIOS程序、BIOS源文件等,外部系统是指用户或者外部第三方的电脑,外部系统需要通过外部的一些接口等与本计算机相连。本申请实施例中,X86系统启动之前通过BMC系统对X86 BIOS原始文件进行安全校验,保证BIOS程序数据不被篡改,引导X86系统安全的启动并进入操作系统,保证了用户的关键数据安全可信不被攻击泄露。
如图8所示,以X86系统为例,本申请实施例提供了一种计算机的启动系统的内部硬件构成示意图。计算机的启动系统可以包括:X86系统、BMC系统、主BIOS FLASH和从BIOSFLASH。在本申请的一些实施例中,控制开关可以属于BMC系统,即BMC系统可以包括: BMC安全校验内核和控制开关。不限定的是,控制开关也可以是独立于BMC系统之外的一个逻辑开关。在图8中以控制开关属于BMC系统进行示例说明。
在图8中,X86系统通过SPI总线和控制开关中的B1通道连接,BMC安全校验内核通过SPI总线和控制开关中的B2通道连接,控制开关默认初始导通BMC安全校验内核,BMC 安全校验内核通过控制开关中的使能控制管脚来控制开关的导通状态,控制开关通过SPI 总线分别与主BIOS FLASH、从BIOS FLASH连接。
在本申请实施例中,X86系统在上电开机之前,BMC通过控制开关控制BIOS与BMC系统接通,开关初始状态默认B2通道导通,主从BIOS都会通过开关分别与BMC及X86系统相连,然后BMC安全校验内核确认BIOS数据安全完整之后,将选通开关的控制权交与X86 系统(即开关切换到B1通道),实现BIOS FLASH芯片与X86系统导通,引导X86系统安全上电。
需要说明的是,本申请实施例也适用于单BIOS场景,在单BIOS场景下一旦BIOS数据被篡改,就需要回写完整的BIOS源文件,待BIOS文件恢复后,X86系统才能启动。后续实施例中以主从双BIOS硬件进行示例说明,可实现引导X86系统上电,并在异常时对主从BIOS进行擦除回写恢复。
BMC芯片需要提供安全校验内核,安全校验内核提供准确的安全算法,保证数据安全的准确性。可以保证主、从BIOS的程序文件被确认是安全未被篡改的,使用户的计算机启动安全等级高,数据不会被篡改。BMC芯片内部能提供一个足够大的至少供存放BIOS源文件的FLASH,以保证X86系统BIOS的原始文件能够存放下。可以保证在校验确认主、从 BIOS数据被篡改后,可以从BMC中读取并回写完整的BIOS源文件到主从BIOS FLASH中,确保系统安全上电。
如图9所示,为本申请实施例提供的一种计算机的启动方法的执行流程示意图,主要包括如下流程:
S01、计算机上电。
其中,计算机可以是服务器,例如,可以使用220伏特的交流电提供给计算机。
S02、BMC上电工作。
其中,BMC指的是前述的BMC系统,BIOS选通控制开关的开关状态默认与BMC选通。
S03、BMC安全校验内核校验主BIOS程序。
S04、BMC判断主BIOS程序是否完整。
S05、当主BIOS程序完整时,BMC安全校验内核将控制开关切换,使得BIOS到X86系统连接,然后执行步骤S09。
如图10a所示,为本申请实施例提供的BIOS选通控制开关的默认初始导通的示意图。主BIOS FLASH和通过控制开关与BMC及X86系统通过SPI总线相连,从BIOS FLASH和通过控制开关与BMC及X86系统通过SPI总线相连。计算机加电后硬件控制先给BMC系统供电,BMC系统启动上电完成,初始状态BMC控制开关导通使BMC与主BIOS FLASH通过SPI 总线相连,并且开关的切换权由BMC安全校验内核控制。其中,BMC安全校验内核是BMC 中芯片的处理器的一个核,由硬件逻辑电路实现,可用于对BIOS程序文件进行校验。这样X86系统无法与BIOS FLASH直接相连,在控制开关导通之前,X86系统无法进行开机配置及自检,此时X86系统还无法正常启动。
如图10b所示,为本申请实施例提供的X86系统和主BIOS导通的示意图,BMC芯片内部的BMC安全校验内核调用预先存储的BIOS原始文件,BMC通过与BIOS相连的SPI总线对主BIOS程序进行数据安全校验,若检验主BIOS程序与BMC预设数据一致,则说明主BIOS 程序未被篡改。其中,BMC预设数据存储在BMC芯片内部的FLASH存储控制器上,此时BMC 安全校验内核将BIOS的控制开关切换到使BIOS与X86系统相连,其中,默认是B2通道选通,校验通过则控制开关切换至B1通道,X86系统从主BIOS FLASH中导入开机相关程序数据,完成上电初始化动作并引导X86系统进入操作系统。
需要说明的是,BMC芯片内部的FLASH存储控制器上源文件预先通过BMC安全校验内核经一定加密算法后得出一组密钥,并将该密钥与BIOS原始文件进行绑定,无该密钥匹配外部系统不能对BMC内部存储的BIOS原始文件进行擦写。
本申请实施例中BMC安全校验内核执行的校验过程如下,密钥存储在BMC芯片内部的 FLASH存储控制器上,BMC原始文件可以加密后存储至BMC中,校验时可以利用相同的密钥分别对存储在不同位置的BMC原始文件中数据进行比对,若完全相同,则认为BIOS和 BMC中存储的文件一致。
S06、当主BIOS程序不完整时,BMC安全校验内核校验从BIOS程序。
S07、BMC安全校验内核判断从BIOS程序是否完整。
S08、当从BIOS程序不完整时,BMC安全校验内核引导主BIOS FLASH、从BIOS FLASH分别从BMC读取BIOS源文件进行回写恢复。
S09、BIOS引导X86系统开机。
S10、X86系统正常开机接入操作系统。
如图10c所示,为本申请实施例提供的X86系统和从BIOS导通的示意图。若BMC安全校验内核检验主BIOS程序与BMC预设数据不一致,则说明主BIOS数据已被篡改。则此时BMC安全校验内核启动对从BIOS的程序数据安全校验。若检验从BIOS程序与BMC预设数据一致则说明从BIOS数据未被篡改。此时BMC安全校验内核将从BIOS的控制开关切换到使BIOS与X86系统相连,X86系统可以导入从BIOS中的开机相关程序数据,完成上电初始化动作并引导X86系统进入操作系统。
如图10d所示,为本申请实施例提供的BMC向主BIOS FLASH和从BIOS FLASH回写BIOS 源文件的示意图。若BMC安全校验内核校验主BIOS程序、从BIOS程序都与BMC预设数据不一致,则说明主BIOS程序、从BIOS程序皆已被篡改。此时BMC会引导先将主BIOS FLASH、从BIOS FLASH中所有被篡改程序全部擦除,然后BMC安全校验内核对主BIOS FLASH、从 BIOSFLASH进行操作,将预存储BIOS原始文件进行读取并回写到主BIOS FLASH、从BIOS FLASH中去。回写完毕后再对主BIOS程序进行安全校验,若检验主BIOS程序与BMC预设数据一致,则说明主BIOS已回写保持完整。此时BMC安全校验内核将BIOS的控制开关切换到使主BIOSFLASH与X86系统相连,X86系统从主BIOS FLASH中导入开机相关程序数据,完成上电初始化动作并引导X86系统进入操作系统。
通过前述的举例说明可知,本申请实施例提供一种基于X86可信启动的方案,X86系统启动之前通过BMC系统对X86系统的BIOS原始文件进行安全校验,保证BIOS程序数据不被篡改,引导X86系统安全的启动并进入OS,保证了计算机在启动过程中及进OS后客户的关键数据安全可信不被攻击泄露。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
为便于更好的实施本申请实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图11所示,本申请实施例提供的一种控制器1100,可以包括:处理器1101,存储器1102;
所述处理器、所述存储器之间进行相互的通信;
所述存储器用于存储指令;
所述处理器用于执行所述存储器中的所述指令,执行如前述图2至图4中任一个实施例所述的方法。
在本申请的一些实施例中,处理器和存储器可通过总线或其它方式连接。
存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器(non-volatile random accessmemory, NVRAM)。存储器存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器还可以称为中央处理单元(central processing unit,CPU)。具体的应用中,控制器的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(applicationspecific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
请参阅图12所示,本申请实施例提供的一种控制器1200,可以包括:安全校验内核1201。
所述安全校验内核通过控制开关的使能控制管脚和所述控制开关通信;
所述控制开关通过第一通道和所述安全校验内核相连接,所述控制开关通过第二通道和计算机硬件系统相连接,所述控制开关通过第三通道和BIOS文件存储装置相连接;
所述安全校验内核,用于通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;对所述第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,用于通过所述使能控制管脚接收所述第一指令,然后根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在本申请的一些实施例中,控制开关1202可以属于控制器1200,即控制器1200包括安全校验内核1201和控制开关1202。不限定的是,控制器也可以是独立于控制器之外的一个逻辑开关。
在本申请的一些实施例中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于使用密钥和所述存储器中的启动程序源文件进行校验计算,得到第一校验结果;使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
在本申请的一些实施例中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述BIOS文件存储装置中;对所述BIOS文件存储装置中写入的启动程序源文件进行校验;当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,还应用于通过所述使能控制管脚接收所述第一指令,并根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
在本申请的一些实施例中,所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述BIOS文件存储装置中存储的第一启动程序文件删除。
在本申请的一些实施例中,所述BIOS文件存储装置包括:主BIOS文件存储模块和从 BIOS文件存储模块,其中,所述控制开关通过第一子通道与所述主BIOS文件存储模块连接,所述控制开关通过第二子通道与所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;
所述安全校验内核,还用于通过所述第一通道和所述第一子通道获取所述主BIOS文件存储模块中的第一启动程序文件;对所述主BIOS文件存储模块中的第一启动程序文件进行校验;
所述控制开关,还用于根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
在本申请的一些实施例中,所述安全校验内核,还用于当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,通过所述第一通道和所述第二子通道获取所述从 BIOS文件存储模块中的第一启动程序文件;对所述从BIOS文件存储模块中的第一启动程序文件进行校验;当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第二指令;
所述控制开关,还用于通过所述使能控制管脚接收所述第二指令,根据所述第二指令将所述第二通道和所述第二子通道导通,以使得在所述第二通道和所述第二子通道导通时成功建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接,由所述计算机硬件系统使用所述从BIOS文件存储模块中的第一启动程序文件完成上电运行。
在本申请的一些实施例中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述主BIOS文件存储模块中;对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,还用于通过所述使能控制管脚接收所述第一指令,根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
在本申请的一些实施例中,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述从BIOS文件存储模块中。
在本申请的一些实施例中,所述控制器为基板管理控制器BMC,所述BIOS文件存储装置为存储BIOS文件的闪存;
所述第一通道为第一串行外设接口SPI总线,所述第二通道为第二SPI总线,所述第三通道为第三SPI总线。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储有程序,该程序执行包括上述方法实施例中记载的部分或全部步骤。
在另一种可能的设计中,当控制器为芯片时,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使该终端内的芯片执行上述的计算机的启动方法。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述终端内的位于所述芯片外部的存储单元,如只读存储器(read-onlymemory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述计算机的启动方法的程序执行的集成电路。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用 CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如, DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。

Claims (27)

1.一种计算机的启动方法,其特征在于,所述方法用于控制器,所述控制器分别与计算机硬件系统、基本输入输出系统BIOS文件存储装置相连接,所述控制器为基板管理控制器BMC,所述BMC用于控制所述计算机硬件系统是否能够读取所述BIOS文件存储装置中存储的第一启动程序文件,所述方法包括:
当所述控制器上电运行时,所述控制器获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;
所述控制器对所述第一启动程序文件进行校验;
当所述第一启动程序文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,当成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述第一启动程序文件完成上电运行;
当所述第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述BIOS文件存储装置中,所述启动程序源文件是加密后预先存储在所述控制器中的BIOS文件;
所述控制器对所述BIOS文件存储装置中写入的启动程序源文件进行校验;
当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,当成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述BIOS文件存储装置中写入的启动程序源文件完成上电运行。
2.根据权利要求1所述的方法,其特征在于,所述控制器对所述第一启动程序文件进行校验,包括:
所述控制器使用密钥和所述控制器中的启动程序源文件进行校验计算,得到第一校验结果,所述启动程序源文件是预先存储在所述控制器中的BIOS文件;
所述控制器使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;
所述控制器根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述控制器将所述BIOS文件存储装置中存储的第一启动程序文件删除。
4.根据权利要求1所述的方法,其特征在于,所述BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS文件存储模块,其中,所述控制器分别与所述主BIOS文件存储模块和所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;
所述控制器获取所述BIOS文件存储装置中的第一启动程序文件,包括:
所述控制器获取所述主BIOS文件存储模块中的第一启动程序文件;
所述控制器对所述第一启动程序文件进行校验,包括:
所述控制器对所述主BIOS文件存储模块中的第一启动程序文件进行校验;
当所述第一启动程序文件通过校验时,所述控制器建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,包括:
当所述主BIOS文件存储模块中的第一启动程序文件通过校验时,所述控制器建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器获取所述从BIOS文件存储模块中的第一启动程序文件;
所述控制器对所述从BIOS文件存储模块中的第一启动程序文件进行校验;
当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,所述控制器建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述主BIOS文件存储模块中,所述启动程序源文件是预先存储在所述控制器中的BIOS文件;
所述控制器对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;
当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,所述控制器建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,当成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接时,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述控制器将启动程序源文件写入到所述从BIOS文件存储模块中,所述启动程序源文件是预先存储在所述控制器中的BIOS文件。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述BIOS文件存储装置为存储BIOS文件的闪存;
所述BMC通过第一串行外设接口SPI总线和所述存储BIOS文件的闪存相连接,所述BMC通过第二SPI总线和所述计算机硬件系统相连接。
9.一种计算机的启动方法,其特征在于,所述方法用于控制器,所述控制器为基板管理控制器BMC,所述BMC用于控制计算机硬件系统是否能够读取BIOS文件存储装置中存储的第一启动程序文件;所述控制器包括:安全校验内核和存储器,所述安全校验内核通过控制开关的使能控制管脚和所述控制开关通信;所述安全校验内核和所述存储器相连接,所述存储器中预先存储有加密后的启动程序源文件;
所述控制开关通过第一通道和所述安全校验内核相连接,所述控制开关通过第二通道和计算机硬件系统相连接,所述控制开关通过第三通道和BIOS文件存储装置相连接;
所述方法包括:
所述安全校验内核通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;
所述安全校验内核对所述第一启动程序文件进行校验;
当所述第一启动程序文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关通过所述使能控制管脚接收所述第一指令,然后所述控制开关根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行;
当所述第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述BIOS文件存储装置中;
所述安全校验内核对所述BIOS文件存储装置中写入的启动程序源文件进行校验;
当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关通过所述使能控制管脚接收所述第一指令,并根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述BIOS文件存储装置中写入的启动程序源文件完成上电运行。
10.根据权利要求9所述的方法,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核对所述第一启动程序文件进行校验,包括:
所述安全校验内核使用密钥和所述存储器中的启动程序源文件进行校验计算,得到第一校验结果;
所述安全校验内核使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;
所述安全校验内核根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
11.根据权利要求9所述的方法,其特征在于,所述方法还包括:
当所述第一启动程序文件没有通过校验时,所述安全校验内核将所述BIOS文件存储装置中存储的第一启动程序文件删除。
12.根据权利要求9所述的方法,其特征在于,所述BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS文件存储模块,其中,所述控制开关通过第一子通道与所述主BIOS文件存储模块连接,所述控制开关通过第二子通道与所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;
所述安全校验内核通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,包括:
所述安全校验内核通过所述第一通道和所述第一子通道获取所述主BIOS文件存储模块中的第一启动程序文件;
所述安全校验内核对所述第一启动程序文件进行校验,包括:
所述安全校验内核对所述主BIOS文件存储模块中的第一启动程序文件进行校验;
所述控制开关根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,包括:
所述控制开关根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核通过所述第一通道和所述第二子通道获取所述从BIOS文件存储模块中的第一启动程序文件;
所述安全校验内核对所述从BIOS文件存储模块中的第一启动程序文件进行校验;
当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第二指令;
所述控制开关通过所述使能控制管脚接收所述第二指令,然后所述控制开关根据所述第二指令将所述第二通道和所述第二子通道导通,以使得在所述第二通道和所述第二子通道导通时成功建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
14.根据权利要求13所述的方法,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述方法还包括:
当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述主BIOS文件存储模块中;
所述安全校验内核对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;
当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,所述安全校验内核通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关通过所述使能控制管脚接收所述第一指令,然后所述控制开关根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
15.根据权利要求13所述的方法,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述方法还包括:
当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,所述安全校验内核将所述启动程序源文件写入到所述从BIOS文件存储模块中。
16.根据权利要求9至15中任一项所述的方法,其特征在于,所述BIOS文件存储装置为存储BIOS文件的闪存;
所述第一通道为第一串行外设接口SPI总线,所述第二通道为第二SPI总线,所述第三通道为第三SPI总线。
17.一种控制器,其特征在于,所述控制器包括:处理器,存储器;所述处理器、所述存储器之间进行相互的通信;
所述存储器用于存储指令;
所述处理器用于执行所述存储器中的所述指令,执行如权利要求1至8中任一项所述的方法。
18.一种控制器,其特征在于,所述控制器为基板管理控制器BMC,所述BMC用于控制计算机硬件系统是否能够读取BIOS文件存储装置中存储的第一启动程序文件,所述控制器包括:安全校验内核和存储器,所述安全校验内核通过控制开关的使能控制管脚和所述控制开关通信;所述安全校验内核和所述存储器相连接,所述存储器中预先存储有加密后的启动程序源文件;
所述控制开关通过第一通道和所述安全校验内核相连接,所述控制开关通过第二通道和计算机硬件系统相连接,所述控制开关通过第三通道和BIOS文件存储装置相连接;
所述安全校验内核,用于通过所述第一通道和所述第三通道获取所述BIOS文件存储装置中的第一启动程序文件,其中,所述第一启动程序文件是预先存储在所述BIOS文件存储装置中的BIOS文件;对所述第一启动程序文件进行校验;当所述第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,用于通过所述使能控制管脚接收所述第一指令,然后根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行;
所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述BIOS文件存储装置中;对所述BIOS文件存储装置中写入的启动程序源文件进行校验;当所述BIOS文件存储装置中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,还应用于通过所述使能控制管脚接收所述第一指令,并根据所述第一指令将所述第二通道和所述第三通道导通,以使得在所述第二通道和所述第三通道导通时成功建立所述BIOS文件存储装置和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述第一启动程序文件完成上电运行。
19.根据权利要求18所述的控制器,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于使用密钥和所述存储器中的启动程序源文件进行校验计算,得到第一校验结果;使用所述密钥和所述第一启动程序文件进行校验计算,得到第二校验结果;根据所述第一校验结果和所述第二校验结果确定所述第一启动程序文件是否通过校验。
20.根据权利要求18所述的控制器,其特征在于,所述安全校验内核,还用于当所述第一启动程序文件没有通过校验时,将所述BIOS文件存储装置中存储的第一启动程序文件删除。
21.根据权利要求18所述的控制器,其特征在于,所述BIOS文件存储装置包括:主BIOS文件存储模块和从BIOS文件存储模块,其中,所述控制开关通过第一子通道与所述主BIOS文件存储模块连接,所述控制开关通过第二子通道与所述从BIOS文件存储模块相连接,所述主BIOS文件存储模块和所述从BIOS文件存储模块中都预先存储有所述第一启动程序文件;
所述安全校验内核,还用于通过所述第一通道和所述第一子通道获取所述主BIOS文件存储模块中的第一启动程序文件;对所述主BIOS文件存储模块中的第一启动程序文件进行校验;
所述控制开关,还用于根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接。
22.根据权利要求21所述的控制器,其特征在于,所述安全校验内核,还用于当所述主BIOS文件存储模块中的第一启动程序文件没有通过校验时,通过所述第一通道和所述第二子通道获取所述从BIOS文件存储模块中的第一启动程序文件;对所述从BIOS文件存储模块中的第一启动程序文件进行校验;当所述从BIOS文件存储模块中的第一启动程序文件通过校验时,通过所述使能控制管脚向所述控制开关发送第二指令;
所述控制开关,还用于通过所述使能控制管脚接收所述第二指令,根据所述第二指令将所述第二通道和所述第二子通道导通,以使得在所述第二通道和所述第二子通道导通时成功建立所述从BIOS文件存储模块和所述计算机硬件系统之间的连接,由所述计算机硬件系统使用所述从BIOS文件存储模块中的第一启动程序文件完成上电运行。
23.根据权利要求22所述的控制器,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述主BIOS文件存储模块中;对所述主BIOS文件存储模块中写入的启动程序源文件进行校验;当所述主BIOS文件存储模块中写入的启动程序源文件通过校验时,通过所述使能控制管脚向所述控制开关发送第一指令;
所述控制开关,还用于通过所述使能控制管脚接收所述第一指令,根据所述第一指令将所述第二通道和所述第一子通道导通,以使得在所述第二通道和所述第一子通道导通时成功建立所述主BIOS文件存储模块和所述计算机硬件系统之间的连接,所述计算机硬件系统使用所述主BIOS文件存储模块中写入的启动程序源文件完成上电运行。
24.根据权利要求22所述的控制器,其特征在于,所述控制器还包括:存储器,其中,所述安全校验内核和所述存储器相连接,所述存储器中预先存储有启动程序源文件;
所述安全校验内核,还用于当所述从BIOS文件存储模块中的第一启动程序文件没有通过校验时,将所述启动程序源文件写入到所述从BIOS文件存储模块中。
25.根据权利要求18至24中任一项所述的控制器,其特征在于,所述BIOS文件存储装置为存储BIOS文件的闪存;
所述第一通道为第一串行外设接口SPI总线,所述第二通道为第二SPI总线,所述第三通道为第三SPI总线。
26.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-8,或者9-16中任意一项所述的方法。
27.一种计算机的启动系统,其特征在于,所述计算机的启动系统包括:控制器、计算机硬件系统和基本输入输出系统BIOS文件存储装置,所述控制器分别与所述计算机硬件系统、所述BIOS文件存储装置相连接;
所述控制器,用于执行如权利要求1-8,或者9-16中任意一项所述的方法。
CN201910887279.2A 2019-09-19 2019-09-19 一种计算机的启动方法和控制器、存储介质以及系统 Active CN110795738B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201910887279.2A CN110795738B (zh) 2019-09-19 2019-09-19 一种计算机的启动方法和控制器、存储介质以及系统
EP20865718.9A EP3971749A4 (en) 2019-09-19 2020-09-03 COMPUTER STARTUP METHOD, CONTROL UNIT, STORAGE MEDIA AND SYSTEM
PCT/CN2020/113345 WO2021052191A1 (zh) 2019-09-19 2020-09-03 一种计算机的启动方法和控制器、存储介质以及系统
US17/564,683 US11886595B2 (en) 2019-09-19 2021-12-29 Computer boot method, controller, storage medium, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910887279.2A CN110795738B (zh) 2019-09-19 2019-09-19 一种计算机的启动方法和控制器、存储介质以及系统

Publications (2)

Publication Number Publication Date
CN110795738A CN110795738A (zh) 2020-02-14
CN110795738B true CN110795738B (zh) 2022-05-13

Family

ID=69438569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910887279.2A Active CN110795738B (zh) 2019-09-19 2019-09-19 一种计算机的启动方法和控制器、存储介质以及系统

Country Status (4)

Country Link
US (1) US11886595B2 (zh)
EP (1) EP3971749A4 (zh)
CN (1) CN110795738B (zh)
WO (1) WO2021052191A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795738B (zh) * 2019-09-19 2022-05-13 超聚变数字技术有限公司 一种计算机的启动方法和控制器、存储介质以及系统
US20230280912A1 (en) * 2020-07-14 2023-09-07 Gapfruit Ag A storage module for storing a data file and providing its hash
CN112086078A (zh) * 2020-09-18 2020-12-15 Tcl华星光电技术有限公司 驱动电路的数据保护装置及方法
CN112448819A (zh) * 2020-11-06 2021-03-05 支付宝(杭州)信息技术有限公司 物联网设备的校验、签名文件的生成方法及装置
CN112650538A (zh) * 2021-01-08 2021-04-13 北京星网锐捷网络技术有限公司 网络设备的启动方法及装置
CN112817645A (zh) * 2021-01-26 2021-05-18 浪潮电子信息产业股份有限公司 一种bios启动方法、装置、设备及可读存储介质
CN114615075B (zh) * 2022-03-28 2023-04-25 重庆长安汽车股份有限公司 一种控制器的软件防篡改系统、方法及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711675B1 (en) * 2000-02-11 2004-03-23 Intel Corporation Protected boot flow

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100532413B1 (ko) * 2002-12-02 2005-12-02 삼성전자주식회사 플래시 메모리 보호 장치 및 방법
US7962739B2 (en) * 2008-02-25 2011-06-14 Lenovo (Singapore) Pte. Ltd. Recovering from hard disk errors that corrupt one or more critical system boot files
CN102419719A (zh) * 2010-09-27 2012-04-18 鸿富锦精密工业(深圳)有限公司 电脑系统及电脑系统的开机方法
CN103186434A (zh) * 2011-12-31 2013-07-03 国民技术股份有限公司 恢复基本输入输出系统的方法及系统
WO2014175867A1 (en) * 2013-04-23 2014-10-30 Hewlett-Packard Development Company, L.P. Verifying controller code and system boot code
US9542195B1 (en) * 2013-07-29 2017-01-10 Western Digital Technologies, Inc. Motherboards and methods for BIOS failover using a first BIOS chip and a second BIOS chip
US9846617B2 (en) * 2015-05-07 2017-12-19 Dell Products, Lp System and method for self-healing basic input/output system boot image and secure recovery
CN105160255A (zh) * 2015-08-06 2015-12-16 浪潮电子信息产业股份有限公司 一种可信度量装置及方法
CN106484578A (zh) * 2016-10-14 2017-03-08 苏州国芯科技有限公司 一种基于可信计算机硬件的校验系统
US10956575B2 (en) * 2017-11-20 2021-03-23 Hewlett Packard Enterprise Development Lp Determine malware using firmware
US11163887B2 (en) * 2018-02-14 2021-11-02 Microsoft Technology Licensing, Llc Clearance of bare metal resource to trusted state usable in cloud computing
TWI665604B (zh) * 2018-02-27 2019-07-11 其陽科技股份有限公司 具開機之可信驗證與容錯移轉之計算機系統及方法
CN109670319B (zh) * 2018-12-25 2022-04-15 广东浪潮大数据研究有限公司 一种服务器flash安全管理方法及其系统
US20200250313A1 (en) * 2019-01-31 2020-08-06 Quanta Computer Inc. Bios recovery and update
CN109992316A (zh) * 2019-04-10 2019-07-09 苏州浪潮智能科技有限公司 一种双bios控制系统及其控制方法、装置、设备、介质
CN110175478A (zh) * 2019-05-30 2019-08-27 苏州浪潮智能科技有限公司 一种主板上电方法、系统及可编程器件
CN110795738B (zh) * 2019-09-19 2022-05-13 超聚变数字技术有限公司 一种计算机的启动方法和控制器、存储介质以及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711675B1 (en) * 2000-02-11 2004-03-23 Intel Corporation Protected boot flow

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于国产BMC的服务器安全启动技术研究与实现;苏振宇;《信息安全研究》;20170930(第09期);823-831 *

Also Published As

Publication number Publication date
EP3971749A1 (en) 2022-03-23
WO2021052191A1 (zh) 2021-03-25
EP3971749A4 (en) 2022-09-14
US20220121751A1 (en) 2022-04-21
CN110795738A (zh) 2020-02-14
US11886595B2 (en) 2024-01-30

Similar Documents

Publication Publication Date Title
CN110795738B (zh) 一种计算机的启动方法和控制器、存储介质以及系统
CN107025406B (zh) 母板、计算机可读存储装置以及固件验证方法
CN103718165B (zh) Bios闪存攻击保护和通知
US9703635B2 (en) Method, computer program, and computer for restoring set of variables
CN111158767B (zh) 基于bmc的服务器安全启动方法及装置
CN102279914A (zh) 一种uefi可信支撑系统及其控制方法
CN103186434A (zh) 恢复基本输入输出系统的方法及系统
US11061690B2 (en) Method for updating a boot loader of a multiprocessor device
CN111694760B (zh) 服务器系统、快闪存储器模块及更新固件映像文件的方法
CN110909360B (zh) 基于双系统的电子设备安全启动方法及装置
US20130227262A1 (en) Authentication device and authentication method
TW202030602A (zh) 基本輸入/輸出系統的恢復及更新的方法及系統
CN102063593A (zh) 主动控制功能的可信设备及其认证方法
US11422901B2 (en) Operating system repairs via recovery agents
CN111950014A (zh) 服务器系统启动的安全度量方法、安全度量装置及服务器
CN106909848A (zh) 一种基于bios扩展的计算机安全增强系统及其方法
CN104572387A (zh) 一种工程模式下调试终端的方法及装置
CN112181513B (zh) 一种基于硬件板卡的控制主机系统引导的可信度量方法
EP3588354A1 (en) Automatic verification method and system
CN110874467A (zh) 信息处理方法、装置、系统以及处理器、存储介质
CN113918953A (zh) 可信服务器安全控制装置、方法和可信服务器
CN115454517B (zh) 多介质安全启动的方法、系统、存储介质、设备及芯片
CN115827069A (zh) 服务器主板的启动控制方法、系统及装置
CN116049824A (zh) 固件映像检查系统、固件映像检查方法及计算机系统
CN113626792A (zh) PCIe Switch固件安全执行方法、装置、终端及存储介质

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
TA01 Transfer of patent application right

Effective date of registration: 20211228

Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province

Applicant after: xFusion Digital Technologies Co., Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd.

GR01 Patent grant
GR01 Patent grant