[go: up one dir, main page]

CN100511086C - 在预引导环境中提供安全执行模式 - Google Patents

在预引导环境中提供安全执行模式 Download PDF

Info

Publication number
CN100511086C
CN100511086C CNB2003801040383A CN200380104038A CN100511086C CN 100511086 C CN100511086 C CN 100511086C CN B2003801040383 A CNB2003801040383 A CN B2003801040383A CN 200380104038 A CN200380104038 A CN 200380104038A CN 100511086 C CN100511086 C CN 100511086C
Authority
CN
China
Prior art keywords
boot environment
environment
secure
boot
secret
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.)
Expired - Lifetime
Application number
CNB2003801040383A
Other languages
English (en)
Other versions
CN1714331A (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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1714331A publication Critical patent/CN1714331A/zh
Application granted granted Critical
Publication of CN100511086C publication Critical patent/CN100511086C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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
    • 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
    • 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
    • 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
    • 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/4416Network booting; Remote initial program loading [RIPL]
    • 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

在一种实施方案中,本发明包括一种方法,用于在计算机系统中建立安全预引导环境;并且在所述安全环境中执行至少一个安全操作。在一种实施方案中,安全操作可以是在安全预引导环境中存储机密。

Description

在预引导环境中提供安全执行模式
背景
本发明涉及计算机系统的操作,更具体地说涉及预引导(pre-boot)环境中这一系统的操作。
当打开计算机系统时,在被初始化并且能够与用户通信之前,它不能执行用户期望的功能。这一初始化处理通常包括引导过程,一般由启动(boot-up)固件执行。启动固件可以是操作系统(“OS”)、OS的一部分、基本输入/输出系统(“BIOS”)或其他软件。
启动固件通常存储在某种形式的非易失性存储器中,并允许中央处理单元(“CPU”)执行各种任务,例如初始化、诊断、从大容量存储装置加载操作系统内核以及例程式的输入/输出(“I/O”)功能。启动固件可以存储在可擦除可编程只读存储器(“EPROM”)或快闪半导体存储器中。
在这一预引导环境中,通常只可获得极少的或者没有安全措施(所有的代码运行在原始的环0物理模式中),也不能在预引导环境中存储机密。而且,当从预引导环境进入OS环境时,不能建立所谓的从预引导环境到OS环境的信任根(root of trust)。根据2002年2月22日发布的可信(trusted)计算平台联盟(TCPA)主规范版本1.16,这种信任根对于可信计算平台是所期望的,以提供与它自身以及它的当前软件处理有关的可靠信息,并提供对它的软件处理的操作的证明。
附图说明
图1是根据本发明一种实施方案的示例性程序流程的流程图。
图2是根据本发明一种实施方案的示例性固件操作的流程图。
图3是根据本发明一种实施方案的预引导环境的操作的流程图。
图4是根据本发明一种实施方案的系统的方框图。
具体实施方式
在一种实施方案中,本发明可用来建立计算机系统的安全的预引导执行环境。在这里使用时,术语“计算机系统”可指任何类型的基于处理器的系统,例如桌面计算机、膝上型计算机、服务器计算机、电器(appliance)或机顶盒等等。在特定的实施方案中,计算机系统可包括所谓的英特尔体系结构(IA)处理器,例如IA-32处理器,可从加州圣·克拉拉的英特尔公司获得。但是,应理解到在其他实施方案中,本发明可与当前已知或将来会出现的其他CPU微体系结构结合使用。
在一种实施方案中,安全预引导执行环境可实现在遵从由加州圣·克拉拉的英特尔公司于2000年12月12日发布的可扩展固件接口(EFI)规范(版本1.02)的固件中。
根据一种实施方案的计算机系统的安全预引导执行环境可用来执行安全操作,例如机密存储和后续对该机密的访问;这也公知为安全存储或隔绝存储。在这里使用时,“机密(secret)”意味着当未在安全预引导环境中时,对计算机系统和用户隐藏的任何信息(无论是数据、指令或其他)。例如,这样的机密可包括密钥、密码、财务信息、医疗记录等等。另外,安全预引导模式可用于隔绝执行。这提供了一种手段将非可信的、错误的或恶意的代码(统称为“有害代码”)与其他可信的可验证的代码隔离开来。
图1是根据本发明一种实施方案的示例性程序流程的流程图。如图1所示,计算机系统重启后(方框5),固件确定CPU是否能够适应安全预引导模式操作,即CPU是否是安全性使能的(菱形10)。如果存在这样的CPU,则可运行安全性初始化软件(方框15)。然后,可安装BIOS安全虚拟机监视器(SVMM)(方框20),并可进入SVMM预引导环境。在这里使用时,术语“安全虚拟机监视器”或“SVMM”意味着一种安全环境,其中在单个平台上存在一个或多个操作环境。在SVMM期间,可执行任何期望的安全操作,例如机密存储/访问、闪存更新等等。
应理解到,“虚拟机”不是必需的;相反,所述软件可以是安全监视器,其中所述“监视器”方面涉及检测并限制非可信代码的访问的能力。在某些实施方案中,SVMM可形成可信计算基(TCB);TCB是一个小的经验证的代码子集,其可从其余代码隔绝开来,并控制其余代码的行为。TCB可设计成很小,以具有对安全性和保险性属性的形式上的第三方审查。
然后,或者,如果没有安全模式处理器可用,则可完成自加电检测(POST),并且预引导环境预备加载OS(方框25)。然后确定进行可信OS加载是否可能(菱形30)。如果这样的加载是可能的,则卸载BIOS SVMM(方框35)。无论是哪种方式,OS然后都可取得对计算机系统的控制(方框40)。
应理解到,安全CPU运行模式的早期调用并不局限于虚拟机监视器(VMM)设计例如SVMM,而是可以和其他CPU安全性模式结合使用。
在一种实施方案中,固件可以在一系列阶段中执行预引导操作。图2是根据本发明一种实施方案的示例性固件操作的流程图。如图2所示,机器起动或重启后,可执行安全性阶段(方框110)。在安全性阶段中,可执行平台复位或加电后的初始操作来确保固件完整性是完好无缺的。然后,可执行预EFI(PEI)初始化阶段(方框120)。在PEI阶段中,代码可执行最小的处理器芯片集和平台配置以支持存储器发现。
然后,可执行驱动器执行(DXE)阶段(方框130)。正是在这一阶段中,大多数固件代码可运行在预引导环境中。在一种实施方案中,所述代码可实现为多个驱动器,其完成平台和设备的初始化。最终,可执行操作系统加载阶段(方框140)。在这一阶段中加载操作系统,该阶段结束时操作系统取得对平台的控制。
在一种实施方案中,固件可发起虚拟机监视器(VMM)驱动器。该驱动器可发布VMM协议的实例。在某些实施方案中,所述驱动器可早在DXE阶段中发起,并可执行SENTER命令来访问安全环境发起。
在一种实施方案中,VMM驱动器可具体化SVMM,在某些实施方案中,SVMM可具有可扩缩(scalable)的能力。该可扩缩性来源于VMM驱动器的下述能力,即允许将后续驱动器加载到安全执行模式中(这里称为“虚拟机扩展”或“VMX”)。在某些实施方案中,SVMM可执行在最高特权级(例如IA32处理系统中的环0P)。任何后续加载的驱动器都可执行在较低的特权级(例如IA32处理系统中的环3P)。而且,设计来运行在安全预引导环境中的任何其他代码(例如客户容宿系统管理模式(SMM)驱动器等等)也可执行在环3P中。
在各种实施方案中,这些后续驱动器可通过经过认证的驱动器加载机制来发起,以确保只有可信驱动器才被加载到SVMM所管理的安全预引导环境中。在一个这样的实施方案中,所述认证处理可包括使用公钥基础设施(PKI)来确保只有可信驱动器才被加载到VMX环境中。或者,可使用核心信任根维护来发起SVMM,包括但不局限于从复位向量到安全性阶段,到PEI阶段,再到DXE阶段的过渡性信任转交,如上所述。
在某些实施方案中,发布VMM协议的SVMM驱动器可具有若干职能。首先,它可以是平台上发射SENTER命令的首个代理,因此它还可来负责接收后续系统管理中断(SMI)激活。在某些实施方案中(例如遗留操作系统),这一职能可在OS运行时间期间被保持,而在其他实施方案(例如EFI敏感的OS)中,这一职能可转换成操作系统提供的SVMM。
在某些实施方案中,SVMM可加载附加的VMX驱动器。这些驱动器可以是期望利用VMX的隔绝存储和执行属性的代码序列;这些驱动器可包括可从英特尔公司获得的BIOS完整性服务驱动器;认证服务,例如可从马萨诸塞州剑桥的麻省理工学院获得的Kerberos:或诸如密码算法的预引导实现之类的其他安全性代码,例如执行非对称密码计算的代理,例如可从马萨诸塞州Bedford的RSA安全公司获得的Rivest Shamir Adleman(RSA)。隔绝前述代码的要点在于需要所述代码的完整性(即,还没有被篡改)来满足驱动器行为的安全性断言。
现在参考图3,示出了根据本发明一种实施方案的预引导环境的操作的流程图。如图3所示,固件控制系统(方框210)。这一控制可以发生在加电时,通过系统状态(例如S3睡眠状态)事件或以其他方式进行。然后,初始化平台(方框220)。在某些实施方案中,这一初始化可包括对处理器、芯片集和存储器的最小的配置。
然后,如图3所示,可以初始化并创建安全环境(方框230)。这一初始化可包括从持久性存储设备获得安全代码。在一种实施方案中,所述安全代码可存储在对系统主板来说永久固定的闪存器件中。由于这一代码存储在持久性存储设备中,并已知为安全设备,因此预引导环境具有一定级别的完整性。而且,在一种实施方案中,所述初始化可包括执行芯片集中的代码以确保芯片集处于用于安全预引导操作的可允许状态中。在一种实施方案中,安全初始化可通过执行加载SINIT命令来完成。
在一种实施方案中,创建安全环境可包括在固定令牌中生成摘要(下面将进一步讨论),其提供了与安全环境中的平台有关的信息。而且,创建安全环境可包括设立存储器栈。在一种实施方案中,可通过加载SVMM来创建安全环境,如上所述。
然后,可在预引导环境中执行安全操作(方框240)。在这里讨论时,这些操作可包括例如使用固定令牌来对机密进行密封和解封。安全环境的另一种用途可以是更新闪存。而且,这些操作可包括安全驱动器或可信驱动器以及证明日志/签名的执行。这样的签名证明例如可转交给一个质疑者。
当已执行预引导环境中的期望操作时,可进入引导环境(方框250)。在一种实施方案中,可提供从安全预引导环境到可信OS环境的过渡性转交。在其他实施方案中,在OS发起前可解除安全预引导环境。或者,在其他实施方案中,例如可利用在用于执行或保持平台完整性的背景下所保持的安全模式来进入引导环境。虽然参考单处理器进行了讨论,但是在其他实施方案中,也可存在多处理器环境(逻辑的或实际的)。
在一种实施方案中,安全预引导环境可保持一个机密,然后该机密可由平台固件所使用。在第一发起时,安全预引导环境可生成这一机密,其具有根密钥的形式,并适用于安全预引导环境所支持的算法和协议。一旦生成,该根密钥就可被保护起来,以使得受保护的根密钥只对运行在相同平台上的相同安全预引导环境公开。
在某些实施方案中,这一保护可通过使用可信计算平台(TCP)(或等效的硬件“保险箱”)来完成。在一种实施方案中,可使用固定令牌工具来密封安全预引导环境的根密钥。在一种实施方案中,固定令牌工具可以是附着于计算机系统的主板,并可与CPU通信的芯片,下面将进一步讨论。
在一种实施方案中,机密的生成可使用下述密封操作来完成,所述密封操作使用只可由所述固定令牌访问的密钥来加密安全预引导环境的根密钥和已注册标识二者。这一加密的数据(“密钥团”)然后可存储在大容量存储装置(例如计算机系统的硬盘驱动器)中。当发起安全预引导环境时,例如在后续的平台引导中,可将所述密钥团返回给固定令牌,固定令牌对之解密,并将之与针对当前安全预引导环境而注册的标识进行比较。如果当前安全预引导环境标识与密钥团中嵌入的标识匹配,则向安全预引导环境公开根密钥。
在一种实施方案中,密封操作允许软件显式地声明为了使得可公布机密,平台必须处于将来的“可信”配置之中。密封操作还隐式地包括以前执行该密封操作时的相关平台配置(即平台配置寄存器(PCR)值)。密封操作可使用预选择的值来将所述团绑定到单个TCP。
如果解封操作成功,则可以将平台配置在以前执行密封操作时是有效的这一证据,以及机密数据返回到调用者。
在某些实施方案中,安全预引导环境还可允许一种向外扩展(scale out)设计,其中可通过可加载的驱动器来提供额外的安全性能力和支持。在一种实施方案中,所述驱动器可以是EFI运行时间驱动器。这些驱动器可包括但不局限于用于安全代码执行的安全存储接口和驱动器。这样的驱动器可提供用户认证、远程映像完整性质疑者以及经证明的引导,所有这些都在一个加强的环境内。
在一种实施方案中,安全预引导环境可确保系统管理基址(SMBASE)的安全,以使得没有任何其他预引导组件可执行SENTER并因而具有系统管理随机访问存储器(SMRAM)内部的可见性。
因此,在这样的实施方案中,安全预引导环境可在发起后接收SMI激活。通过安全预引导的早期发起,由于所关联的系统管理模式存储器(SMMEM)激活,流氓软件执行SENTER的能力以及可看到SMRAM内部的能力被降低了。
在多种实施方案中,安全预引导环境可具有若干卸载选项。对于EFI敏感(EFI-aware)的OS引导,安全预引导环境可解除安全环境。或者,安全预引导环境可一直保持,直到调用了某种后来的“卸载”服务。
例如,安全预引导环境可提供到OS SVMM的受管理的转交。这出现了一个机会来从预引导建立可被完整地转移到操作系统的信任根,因而提供了在超出OS可通过在启动时加载自己的SVMM而得到的保证之外的与平台稳定性有关的额外保证,并且提供了在OSSVMM的控制下,平台SMM代码来源的更大保证,所述平台SMM代码将持续在操作系统运行时间中。
在多种实施方案中,本发明可为预引导空间中的代码提供安全操作环境。这样的环境提供了机会来改变对平台完整性非常关键的操作的处理方式,因而扩展了平台设计包封并改善了用户体验。
例如,在安全预引导环境中,闪存更新的执行可不必强制执行“init”命令,因为对闪存的写访问可由运行在安全预引导环境内的可信代码打开。具体地说,提供安全性(可包括但不局限于页面级保护)的存储器管理单元操作可由SVMM建立,以将对快闪区域的访问仅限于可信方。这些可信方可包括但不局限于平台所有者更新代码。
在另一种实施方案中,闪存更新可由引导环境中的可信OS执行。在这样的实施方案中,安全预引导环境期间的CPU可通过页面级保护机制来保护闪存区域。当从安全预引导环境发生过渡性转交时,可将相同的受保护存储区域提供给OS。因此,当处于引导环境期间,受保护的存储器(即闪存)可相应地被访问和更新。
在某些实施方案中,操作系统(OS)运行时间期间可使用SVMM来一同运行操作系统的SVMM。BIOS SVMM可提供特定于平台的行为,例如可靠性—可用性—可服务性(RAS)。这些可包括处理特定的平台错误,例如对具有纠错码(ECC)单比特错误(SBE)的存储器物理页面的写。芯片集检测到的SBE通常需要访问存储器的一个区域以进行读并且然后进行写回,以更新所述症状位(syndrome bits)。没有标准化的方式来向操作系统警告这一故障和必需的行为,并且在安全操作系统运行时间期间,OS控制所有的存储器。这样,与OS SVMM对等的BIOS SVMM规定了先前在系统管理模式(SMM)中完成的特定于平台的活动;SMM在安全操作系统到来之前具有对系统的完全访问权限。
另外,现今存在操作系统相对于平台而作出的默许信任断言。例如,BIOS创建描述不可枚举的资源的表,例如全存储器图、固定端口、本地APIC(高级可编程中断控制器)的地址、中断路由以及其他资源。这些表仅通过简单的校验和来保护。但是,对于可信平台,这些如今存储在普通存储器中的表可能会是攻击点。攻击者可排列出描述平台的值,并对操作系统撒谎;这一攻击可包括隐藏存储器、欺骗(spoofing)端口等等。预引导环境可用来生成这些表,对所述内容签名,过渡性地转交到具有信任断言的OS SVMM等等。
实施方案可实现在计算机程序中。这样,这些实施方案可存储在存储介质上,该介质上存储有指令,可用来对计算机系统编程以执行所述实施方案。存储介质可包括但不局限于任何类型的盘,包括软盘、光盘、致密盘只读存储器(CD-ROM)、致密盘可重写盘(CD-RW)以及磁光盘、诸如只读存储器(ROM)、随机访问存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM),闪存,磁卡或光卡的半导体设备,或任何类型的适用于存储电子指令的介质。类似地,实施方案可实现为由可编程控制设备执行的软件模块。可编程控制设备可以是计算机处理器或定制设计状态机。定制设计状态机可包括在硬件设备中,例如具有离散逻辑的印刷电路板、集成电路或专门设计的专用集成电路(ASIC)。
示例性实施方案可实现在软件中,以由适当的数据处理系统执行,所述系统配置以硬件设备的适当组合。图4是代表性数据处理系统的方框图,即可与本发明的实施方案一起使用的计算机系统300。
现在参考图4,在一种实施方案中,计算机系统300包括处理器310,处理器310可包括通用或专用处理器,例如微处理器、微控制器、ASIC、可编程门阵列(PGA)等等。
在一种实施方案中,处理器310可通过主机总线315耦合到存储器中心320,存储器中心320可通过存储器总线325耦合到系统存储器330。如图4所示,在某些实施方案中,系统存储器330可具有受保护的存储器页面。这样的页面例如可包括与SVMM以及其他可信虚拟机相关的页面等等。在某些实施方案中,存储器中心320可被配置来阻塞对系统存储器330的受保护页面的至少某些部分的访问。存储器中心320还可通过高级图形端口(AGP)总线333耦合到视频控制器335,视频控制器335可耦合到显示器337。AGP总线333可遵从加速图形端口接口规范(修订版2.0),由加州圣·克拉拉的英特尔公司于1998年5月4日发布。
存储器中心320还可(通过中心链路338)耦合到输入/输出(I/O)中心340,I/O中心340耦合到输入/输出(I/O)扩展总线342和外围组件互连(PCI)总线344,PCI总线344由1995年6月的PCI局部总线规范出品版(修订版2.1)定义。I/O扩展总线342可以耦合到对一个或多个I/O设备的访问进行控制的I/O控制器346。如图4所示,在一种实施方案中,这些设备可包括存储设备(例如软盘驱动器350)和输入设备(例如键盘352和鼠标354)。闪存341也可耦合到I/O扩展总线242,在一种实施方案中,闪存341可持久地存储用于预引导环境的安全代码。I/O中心340例如还可耦合到硬盘驱动器356,如图4所示。应理解到,其他存储介质也可包括在所述系统中。
固定令牌343也可耦合到I/O扩展总线342。在一种实施方案中,固定令牌343可永久绑定到计算机系统300的主板。固定令牌343可以是通用处理器、ASIC等等,其可具有基本的所谓“职能卡”功能。在某些实施方案中,这些功能可包括密码功能例如密钥、存储、签名和加密。在多种实施方案中,固定令牌343可用于机密的证明和密封/解封。这样的证明可包括对平台遵从性以及所加载的特定监视器/小应用程序的证明。在密封机密时,固定令牌343可被编程来对相同环境或所选择的环境而密封/解封机密。
在某些实施方案中,便携式令牌358可耦合到I/O中心340。应理解到,这一耦合可通过任何标准连接(例如通用串行总线(USB))进行。在一种实施方案中,便携式令牌358可具有于固定令牌343相似的功能。例如,便携式令牌358可用来为用户测试系统,提供便携式用户机密,提供匿名标识等等。
在另一种实施方案中,I/O控制器346可集成到I/O中心340中,其他控制功能也可如此。PCI总线344也可耦合到各种组件,例如包括耦合到网络端口(未示出)的网络控制器360。
其他设备可耦合到I/O扩展总线342和PCI总线344,例如耦合到并行端口、串行端口、非易失性存储器等的输入/输出控制电路。
虽然前面的描述参考了系统300的特定组件,但是应考虑到可对所描述和示出的实施方案作出多种修改和变动。例如,替代于存储器和I/O中心,主机桥控制器和系统桥控制器可提供等同的功能。另外,可实现多种总线协议中的任意一种。
虽然已参考有限数量的实施方案来描述了本发明,但是本领域的普通技术人员可从其认识到多种修改和变体。所附权利要求书应覆盖所有这种修改和变体,它们都落在本发明的真正精神和范围之内。

Claims (24)

1.一种方法,包括:
在计算机系统中建立安全预引导环境;以及
防止非可信的装置在所述安全预引导环境期间被加载。
2.如权利要求1所述的方法,还包括在所述安全预引导环境中存储机密。
3.如权利要求1所述的方法,还包括将所述计算机系统从所述安全预引导环境转移到操作系统环境。
4.如权利要求1所述的方法,还包括在所述安全预引导环境中发起安全虚拟机监视器。
5.如权利要求1所述的方法,还包括在所述安全预引导环境中更新闪存。
6.如权利要求1所述的方法,还包括在所述安全预引导环境中发布系统管理命令。
7.如权利要求1所述的方法,还包括在所述安全预引导环境中接收系统管理中断。
8.如权利要求2所述的方法,还包括生成所述机密,其具有通过固定令牌密封的根密钥的形式。
9.如权利要求8所述的方法,还包括只在所述安全预引导环境期间才向所述计算机系统公开所述根密钥。
10.如权利要求1所述的方法,还包括将有害代码从可验证代码隔绝开来。
11.一种方法,包括:
在预引导环境中提供计算机系统的固件控制;
在所述预引导环境中创建安全环境;以及
防止非可信的装置在所述安全环境期间被加载。
12.如权利要求11所述的方法,还包括从所述预引导环境进入引导环境。
13.如权利要求12所述的方法,还包括在所述引导环境的背景中保持所述安全环境。
14.如权利要求12所述的方法,还包括如果所述引导环境是可信引导环境则解除所述安全环境。
15.如权利要求11所述的方法,还包括在所述预引导环境中存储机密。
16.如权利要求15所述的方法,还包括使用固定令牌来存储所述机密。
17.如权利要求15所述的方法,还包括在所述预引导环境中处于所述安全环境的不同入口期间访问所述机密。
18.如权利要求13所述的方法,还包括使用所述安全环境来执行可靠性、可用性、可服务性功能。
19.如权利要求12所述的方法,还包括在所述预引导环境中生成表,并将所述表提供给具有信任断言的引导环境。
20.一种系统,包括:
至少一个存储设备,其包括的指令被执行时,使得所述系统:
在计算机系统中建立安全预引导环境;并且防止非可信的装置在所述安全预引导环境期间被加载;以及
耦合到所述至少一个存储设备以执行所述指令的处理器。
21.如权利要求20所述的系统,还包括下述指令,其被执行时使得所述系统在所述安全预引导环境中存储机密。
22.如权利要求20所述的系统,还包括闪存,其包括安全基本输入/输出系统代码。
23.如权利要求20所述的系统,还包括耦合到所述处理器的固定令牌。
24.如权利要求23所述的系统,其中所述固定令牌包括至少一个用于机密安全性的根密钥。
CNB2003801040383A 2002-11-27 2003-10-20 在预引导环境中提供安全执行模式 Expired - Lifetime CN100511086C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/306,570 US7974416B2 (en) 2002-11-27 2002-11-27 Providing a secure execution mode in a pre-boot environment
US10/306,570 2002-11-27

Publications (2)

Publication Number Publication Date
CN1714331A CN1714331A (zh) 2005-12-28
CN100511086C true CN100511086C (zh) 2009-07-08

Family

ID=32325726

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003801040383A Expired - Lifetime CN100511086C (zh) 2002-11-27 2003-10-20 在预引导环境中提供安全执行模式

Country Status (8)

Country Link
US (3) US7974416B2 (zh)
CN (1) CN100511086C (zh)
AU (1) AU2003286519A1 (zh)
DE (1) DE10393662T5 (zh)
GB (2) GB2421612B (zh)
HK (1) HK1075509A1 (zh)
TW (1) TWI238357B (zh)
WO (1) WO2004051444A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107077568A (zh) * 2014-11-17 2017-08-18 英特尔公司 对称密钥和信任链

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040128493A1 (en) * 2002-12-27 2004-07-01 Zimmer Vincent J. Methods and apparatus for providing a firmware defined radio
GB2403820A (en) * 2003-03-28 2005-01-12 Hewlett Packard Development Co Security policy in trusted computing systems
US7380136B2 (en) * 2003-06-25 2008-05-27 Intel Corp. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
US7793287B2 (en) * 2003-10-01 2010-09-07 Hewlett-Packard Development Company, L.P. Runtime virtualization and devirtualization of I/O devices by a virtual machine monitor
US7913226B2 (en) * 2003-10-01 2011-03-22 Hewlett-Packard Development Company, L.P. Interposing a virtual machine monitor and devirtualizing computer hardware at runtime
US7694121B2 (en) * 2004-06-30 2010-04-06 Microsoft Corporation System and method for protected operating system boot using state validation
JP4447977B2 (ja) 2004-06-30 2010-04-07 富士通マイクロエレクトロニクス株式会社 セキュアプロセッサ、およびセキュアプロセッサ用プログラム。
US20060041932A1 (en) * 2004-08-23 2006-02-23 International Business Machines Corporation Systems and methods for recovering passwords and password-protected data
US7568225B2 (en) * 2004-09-08 2009-07-28 Hewlett-Packard Development Company, L.P. System and method for remote security enablement
US7565553B2 (en) * 2005-01-14 2009-07-21 Microsoft Corporation Systems and methods for controlling access to data on a computer with a secure boot process
US7506380B2 (en) * 2005-01-14 2009-03-17 Microsoft Corporation Systems and methods for boot recovery in a secure boot process on a computer with a hardware security module
US7603562B2 (en) * 2005-02-02 2009-10-13 Insyde Software Corporation System and method for reducing memory requirements of firmware
GB2438787B (en) * 2005-03-05 2010-03-03 Intel Corp Asynchronous network stack operation in an operating system independent environment
US8806224B2 (en) * 2005-06-28 2014-08-12 Intel Corporation Low cost trusted platform
US20070239996A1 (en) * 2006-03-20 2007-10-11 Cromer Daryl C Method and apparatus for binding computer memory to motherboard
WO2008046101A2 (en) 2006-10-13 2008-04-17 Ariel Silverstone Client authentication and data management system
US9280659B2 (en) 2006-12-29 2016-03-08 Intel Corporation Methods and apparatus for remeasuring a virtual machine monitor
US20080244553A1 (en) * 2007-03-28 2008-10-02 Daryl Carvis Cromer System and Method for Securely Updating Firmware Devices by Using a Hypervisor
US8127292B1 (en) * 2007-06-22 2012-02-28 Parallels Holdings, Ltd. Virtualization system with hypervisor embedded in bios or using extensible firmware interface
US7934096B2 (en) 2007-07-27 2011-04-26 Microsoft Corporation Integrity protected smart card transaction
US7831858B2 (en) * 2007-08-31 2010-11-09 Intel Corporation Extended fault resilience for a platform
US8301907B2 (en) * 2007-09-28 2012-10-30 Intel Corporation Supporting advanced RAS features in a secured computing system
WO2009064083A1 (en) * 2007-11-12 2009-05-22 Samsung Electronics Co., Ltd. Method and apparatus for booting host
US8522236B2 (en) * 2007-12-28 2013-08-27 Intel Corporation Method and system for establishing a robust virtualized environment
US8583908B2 (en) * 2007-12-31 2013-11-12 Intel Corporation Enhanced network and local boot of Unified Extensible Firmware Interface images
US8201161B2 (en) * 2008-01-07 2012-06-12 Lenovo (Singapore) Pte. Ltd. System and method to update device driver or firmware using a hypervisor environment without system shutdown
DE102008011925B4 (de) * 2008-02-29 2018-03-15 Globalfoundries Inc. Sicheres Initialisieren von Computersystemen
US8838924B2 (en) * 2008-05-24 2014-09-16 Via Technologies, Inc. Microprocessor having internal secure memory
US8327415B2 (en) * 2008-05-30 2012-12-04 Intel Corporation Enabling byte-code based image isolation
US8201163B2 (en) * 2008-07-16 2012-06-12 Dell Products, Lp Input/output transaction management during platform initiation
US9559842B2 (en) * 2008-09-30 2017-01-31 Hewlett Packard Enterprise Development Lp Trusted key management for virtualized platforms
US20100083002A1 (en) * 2008-09-30 2010-04-01 Liang Cui Method and System for Secure Booting Unified Extensible Firmware Interface Executables
US8832256B2 (en) * 2008-11-28 2014-09-09 Red Hat, Inc. Providing a rescue Environment in a software provisioning environment
US9805196B2 (en) 2009-02-27 2017-10-31 Microsoft Technology Licensing, Llc Trusted entity based anti-cheating mechanism
JP4692912B2 (ja) * 2009-03-18 2011-06-01 日本電気株式会社 リソース割り当てシステム、及びリソース割り当て方法
US8806620B2 (en) * 2009-12-26 2014-08-12 Intel Corporation Method and device for managing security events
US8479292B1 (en) * 2010-11-19 2013-07-02 Symantec Corporation Disabling malware that infects boot drivers
US9087196B2 (en) * 2010-12-24 2015-07-21 Intel Corporation Secure application attestation using dynamic measurement kernels
US8375221B1 (en) 2011-07-29 2013-02-12 Microsoft Corporation Firmware-based trusted platform module for arm processor architectures and trustzone security extensions
US10303501B2 (en) * 2011-08-30 2019-05-28 Hewlett-Packard Development Company, L.P. Virtual high privilege mode for a system management request
US8949586B2 (en) * 2011-10-06 2015-02-03 Cisco Technology, Inc. System and method for authenticating computer system boot instructions during booting by using a public key associated with a processor and a monitoring device
US10325297B2 (en) 2011-11-28 2019-06-18 Dell Products, Lp Method for comparing sales performance of web sites and a system therefor
CN102726027B (zh) 2011-12-28 2014-05-21 华为技术有限公司 虚拟机全盘加密下预启动时的密钥传输方法和设备
JP5990927B2 (ja) * 2012-02-17 2016-09-14 富士電機株式会社 制御システム、制御装置及びプログラム実行制御方法
EP2880527A4 (en) 2012-07-31 2016-04-06 Hewlett Packard Development Co MODIFYING EXECUTABLE BITS OF A SYSTEM MANAGEMENT MEMORY TABLE
US8898654B2 (en) * 2012-08-29 2014-11-25 Microsoft Corporation Secure firmware updates
US9218178B2 (en) * 2012-08-29 2015-12-22 Microsoft Technology Licensing, Llc Secure firmware updates
TWI564747B (zh) * 2012-10-19 2017-01-01 威盛電子股份有限公司 電子裝置與安全開機方法
US10579405B1 (en) * 2013-03-13 2020-03-03 Amazon Technologies, Inc. Parallel virtual machine managers
US9280687B2 (en) * 2013-03-15 2016-03-08 Lenovo (Singapore) Pte. Ltd. Pre-boot authentication using a cryptographic processor
WO2014204363A1 (en) * 2013-06-19 2014-12-24 Telefonaktiebolaget L M Ericsson (Publ) Method and an integrated circuit for executing a trusted application within a trusted runtime environment
US9349009B2 (en) 2013-07-15 2016-05-24 Paul A. Rivera Method and apparatus for firmware based system security, integrity, and restoration
US20150121054A1 (en) * 2013-10-31 2015-04-30 Advanced Micro Devices, Inc. Platform Secure Boot
TW201535145A (zh) * 2013-12-04 2015-09-16 Insyde Software Corp 使用保護讀取儲存器安全地儲存韌體數據之系統及方法
US9575791B2 (en) * 2014-02-12 2017-02-21 Dell Products, Lp Unified extensible firmware interface system management mode initialization protections with system management interrupt transfer monitor sandboxing
US9348997B2 (en) * 2014-03-13 2016-05-24 Intel Corporation Symmetric keying and chain of trust
US9521125B2 (en) 2014-03-13 2016-12-13 Intel Corporation Pseudonymous remote attestation utilizing a chain-of-trust
US9509502B2 (en) 2014-03-13 2016-11-29 Intel Corporation Symmetric keying and chain of trust
US9785801B2 (en) * 2014-06-27 2017-10-10 Intel Corporation Management of authenticated variables
US9594927B2 (en) * 2014-09-10 2017-03-14 Intel Corporation Providing a trusted execution environment using a processor
US9984255B2 (en) * 2014-09-30 2018-05-29 Samsung Electronics Co., Ltd. Methods and apparatus to enable runtime checksum verification of block device images
CN104598841B (zh) * 2014-12-29 2017-11-28 东软集团股份有限公司 一种面向终端安全的双系统引导方法和装置
US10430589B2 (en) * 2015-03-19 2019-10-01 Intel Corporation Dynamic firmware module loader in a trusted execution environment container
EP3079093B1 (en) * 2015-04-10 2020-03-04 Samsung Electronics Co., Ltd. Methods and apparatus to enable runtime checksum verification of block device images
US20160378686A1 (en) * 2015-06-24 2016-12-29 Intel Corporation Memory encryption exclusion method and apparatus
US10474596B2 (en) * 2015-06-25 2019-11-12 Intel Corporation Providing dedicated resources for a system management mode of a processor
CN105159707B (zh) * 2015-08-14 2018-06-29 飞天诚信科技股份有限公司 一种安全的金融终端的固件烧写方法及金融终端
US10621336B2 (en) * 2015-09-26 2020-04-14 Intel Corporation Technologies for software attack detection using encoded access intent
US10270596B2 (en) 2016-09-16 2019-04-23 International Business Machnines Corporation Generating memory dumps
US10108800B1 (en) * 2017-01-10 2018-10-23 Gbs Laboratories, Llc ARM processor-based hardware enforcement of providing separate operating system environments for mobile devices with capability to employ different switching methods
US10467416B2 (en) 2017-06-16 2019-11-05 International Business Machines Corporation Securing operating system configuration using hardware
US10769269B2 (en) * 2017-07-10 2020-09-08 Intel Corporation Method and apparatus to gather platform configuration profile in a trustworthy manner
US20190087580A1 (en) * 2017-09-19 2019-03-21 Microsoft Technology Licensing, Llc Secure launch for a hypervisor
CN111295644B (zh) 2017-10-30 2024-06-21 惠普发展公司,有限责任合伙企业 保障硬件初始化
DE102018120347A1 (de) * 2018-08-21 2020-02-27 Pilz Gmbh & Co. Kg Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses
US11385902B2 (en) * 2019-11-17 2022-07-12 Nuvoton Technology Corporation Secure firmware management with hierarchical boot sequence using last known good firmware
US11080039B2 (en) 2019-11-25 2021-08-03 Micron Technology, Inc. Resilient software updates in secure storage devices
WO2021118520A1 (en) 2019-12-09 2021-06-17 Hewlett-Packard Development Company, L.P. Secure operating modes for computing devices
US12130924B2 (en) * 2020-11-19 2024-10-29 Intel Corporation Seamless SMM global driver update base on SMM root of trust
US11977640B2 (en) * 2021-07-12 2024-05-07 Dell Products, L.P. Systems and methods for authenticating the identity of an information handling system
US11836500B2 (en) * 2022-05-06 2023-12-05 Dell Products L.P. Systems and methods for basic input/output system driver offline protocol
WO2024035933A1 (en) * 2022-08-12 2024-02-15 Cyemptive Technologies, Inc. Data manipulation detection through a verification operating system
TWI851161B (zh) * 2023-04-20 2024-08-01 神雲科技股份有限公司 平台韌體保護與恢復安全管理方法

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2708608B2 (ja) 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
US5444850A (en) * 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
EP0760978B1 (en) * 1994-05-26 2004-09-29 The Commonwealth Of Australia Secure computer architecture
US6763454B2 (en) * 1994-05-27 2004-07-13 Microsoft Corp. System for allocating resources in a computer system
US5537540A (en) * 1994-09-30 1996-07-16 Compaq Computer Corporation Transparent, secure computer virus detection method and apparatus
US5553083B1 (en) * 1995-01-19 2000-05-16 Starburst Comm Corp Method for quickly and reliably transmitting frames of data over communications links
SE504085C2 (sv) * 1995-02-01 1996-11-04 Greg Benson Sätt och system för att hantera dataobjekt i enlighet med förutbestämda villkor för användare
US5555373A (en) * 1995-02-06 1996-09-10 International Business Machines Corporation Inactivity monitor for trusted personal computer system
US6272538B1 (en) * 1996-07-30 2001-08-07 Micron Technology, Inc. Method and system for establishing a security perimeter in computer networks
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
US5960084A (en) * 1996-12-13 1999-09-28 Compaq Computer Corporation Secure method for enabling/disabling power to a computer system following two-piece user verification
US6400823B1 (en) 1996-12-13 2002-06-04 Compaq Computer Corporation Securely generating a computer system password by utilizing an external encryption algorithm
US5949882A (en) * 1996-12-13 1999-09-07 Compaq Computer Corporation Method and apparatus for allowing access to secured computer resources by utilzing a password and an external encryption algorithm
US6581162B1 (en) * 1996-12-31 2003-06-17 Compaq Information Technologies Group, L.P. Method for securely creating, storing and using encryption keys in a computer system
US5887131A (en) * 1996-12-31 1999-03-23 Compaq Computer Corporation Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password
US6009355A (en) * 1997-01-28 1999-12-28 American Calcar Inc. Multimedia information and control system for automobiles
US5953502A (en) * 1997-02-13 1999-09-14 Helbig, Sr.; Walter A Method and apparatus for enhancing computer system security
US6446153B2 (en) * 1997-03-14 2002-09-03 Intel Corporation Shared embedded microcontroller interface
US6477648B1 (en) * 1997-03-23 2002-11-05 Novell, Inc. Trusted workstation in a networked client/server computing system
US6560702B1 (en) * 1997-12-10 2003-05-06 Phoenix Technologies Ltd. Method and apparatus for execution of an application during computer pre-boot operation
US6564318B1 (en) * 1997-12-10 2003-05-13 Phoenix Technologies Ltd. Method and apparatus for execution of an application during computer pre-boot operation and post-boot under normal OS control
US6378072B1 (en) * 1998-02-03 2002-04-23 Compaq Computer Corporation Cryptographic system
US6141705A (en) * 1998-06-12 2000-10-31 Microsoft Corporation System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed
US6735696B1 (en) * 1998-08-14 2004-05-11 Intel Corporation Digital content protection using a secure booting method and apparatus
US6219420B1 (en) * 1998-09-02 2001-04-17 Motorola, Inc. High assurance encryption system and method
US6327660B1 (en) * 1998-09-18 2001-12-04 Intel Corporation Method for securing communications in a pre-boot environment
EP1001331B1 (en) * 1998-11-11 2004-08-11 O2 Micro International Limited Pre-boot security controller
US6272629B1 (en) * 1998-12-29 2001-08-07 Intel Corporation Method and apparatus for establishing network connection for a processor without an operating system boot
JP3453532B2 (ja) * 1999-01-21 2003-10-06 インターナショナル・ビジネス・マシーンズ・コーポレーション セキュリティ機能付きコンピュータおよび方法
WO2000048063A1 (en) * 1999-02-15 2000-08-17 Hewlett-Packard Company Trusted computing platform
AU776027C (en) * 1999-03-08 2005-04-07 Spyrus, Inc. Method and system for enforcing access to a computing resource using a licensing attribute certificate
US7117172B1 (en) * 1999-03-11 2006-10-03 Corecard Software, Inc. Methods and systems for managing financial accounts
US6715043B1 (en) * 1999-03-19 2004-03-30 Phoenix Technologies Ltd. Method and system for providing memory-based device emulation
US6430707B1 (en) * 1999-03-31 2002-08-06 International Business Machines Corporation Source-level debugging of client dump image in a computer network
US6401202B1 (en) * 1999-06-18 2002-06-04 Phoenix Technologies Ltd. Multitasking during BIOS boot-up
US6180508B1 (en) * 1999-09-02 2001-01-30 Micron Technology, Inc. Methods of fabricating buried digit lines and semiconductor devices including same
EP1085396A1 (en) 1999-09-17 2001-03-21 Hewlett-Packard Company Operation of trusted state in computing platform
US6711688B1 (en) * 1999-11-30 2004-03-23 International Business Machines Corporation Pre-execution logon (PEL)
US7216251B2 (en) * 2000-02-19 2007-05-08 Powerquest Corporation Computer imaging recovery without a working partition or a secondary medium
US7249247B2 (en) * 2000-04-11 2007-07-24 Microsoft Corporation Common feature mode for microprocessors in a multiple microprocessor system
JP3714119B2 (ja) * 2000-06-13 2005-11-09 日本電気株式会社 Biosプリブート環境を利用したユーザ認証型ネットワークosブート方法及びシステム
US7131137B1 (en) * 2000-06-29 2006-10-31 Intel Corporation Communication system including a security system
GB0020441D0 (en) * 2000-08-18 2000-10-04 Hewlett Packard Co Performance of a service on a computing platform
US20030159047A1 (en) * 2000-09-26 2003-08-21 Telefonaktiebolaget L M Ericsson (Publ) Method of securing and exposing a logotype in an electronic device
US7000249B2 (en) * 2001-05-18 2006-02-14 02Micro Pre-boot authentication system
US7797729B2 (en) * 2000-10-26 2010-09-14 O2Micro International Ltd. Pre-boot authentication system
US7200761B1 (en) * 2000-11-09 2007-04-03 International Business Machines Corporation Method to use secure passwords in an unsecure program environment
US7210167B2 (en) * 2001-01-08 2007-04-24 Microsoft Corporation Credential management
US6823464B2 (en) * 2001-02-26 2004-11-23 International Business Machines Corporation Method of providing enhanced security in a remotely managed computer system
US20030093702A1 (en) * 2001-03-30 2003-05-15 Zheng Luo System on a chip with multiple power planes and associate power management methods
US6948098B2 (en) * 2001-03-30 2005-09-20 Cirrus Logic, Inc. Circuits and methods for debugging an embedded processor and systems using the same
US6925570B2 (en) * 2001-05-15 2005-08-02 International Business Machines Corporation Method and system for setting a secure computer environment
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
US7779267B2 (en) * 2001-09-04 2010-08-17 Hewlett-Packard Development Company, L.P. Method and apparatus for using a secret in a distributed computing system
US7103529B2 (en) * 2001-09-27 2006-09-05 Intel Corporation Method for providing system integrity and legacy environment emulation
US7174463B2 (en) * 2001-10-04 2007-02-06 Lenovo (Singapore) Pte. Ltd. Method and system for preboot user authentication
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
US7490250B2 (en) * 2001-10-26 2009-02-10 Lenovo (Singapore) Pte Ltd. Method and system for detecting a tamper event in a trusted computing environment
US6968414B2 (en) * 2001-12-04 2005-11-22 International Business Machines Corporation Monitoring insertion/removal of server blades in a data processing system
US20030115443A1 (en) * 2001-12-18 2003-06-19 Cepulis Darren J. Multi-O/S system and pre-O/S boot technique for partitioning resources and loading multiple operating systems thereon
US20030126454A1 (en) * 2001-12-28 2003-07-03 Glew Andrew F. Authenticated code method and apparatus
US7085921B2 (en) * 2001-12-31 2006-08-01 Hewlett-Packard Development Company, L.P. Embedded OS PXE server
US20030138105A1 (en) * 2002-01-18 2003-07-24 International Business Machines Corporation Storing keys in a cryptology device
US20030191943A1 (en) * 2002-04-05 2003-10-09 Poisner David I. Methods and arrangements to register code
US6715085B2 (en) * 2002-04-18 2004-03-30 International Business Machines Corporation Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function
US7130977B1 (en) * 2002-04-18 2006-10-31 Advanced Micro Devices, Inc. Controlling access to a control register of a microprocessor
US7558958B2 (en) * 2002-06-13 2009-07-07 Microsoft Corporation System and method for securely booting from a network
US20040081104A1 (en) * 2002-10-29 2004-04-29 Weimin Pan Method and system for network switch configuration
US9977674B2 (en) 2003-10-14 2018-05-22 Intel Corporation Micro-operation generator for deriving a plurality of single-destination micro-operations from a given predicated instruction

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107077568A (zh) * 2014-11-17 2017-08-18 英特尔公司 对称密钥和信任链
CN107077568B (zh) * 2014-11-17 2020-08-25 英特尔公司 对称密钥和信任链

Also Published As

Publication number Publication date
US20110271090A1 (en) 2011-11-03
US9026773B2 (en) 2015-05-05
US20040103299A1 (en) 2004-05-27
GB2411989B (en) 2006-05-31
CN1714331A (zh) 2005-12-28
US7974416B2 (en) 2011-07-05
GB2421612B (en) 2006-10-18
GB2411989A (en) 2005-09-14
GB2421612A (en) 2006-06-28
AU2003286519A1 (en) 2004-06-23
TWI238357B (en) 2005-08-21
TW200414052A (en) 2004-08-01
GB0604785D0 (en) 2006-04-19
US20150213269A1 (en) 2015-07-30
DE10393662T5 (de) 2005-08-25
US10275598B2 (en) 2019-04-30
WO2004051444A2 (en) 2004-06-17
GB0506997D0 (en) 2005-05-11
WO2004051444A3 (en) 2004-07-29
HK1075509A1 (en) 2005-12-16

Similar Documents

Publication Publication Date Title
CN100511086C (zh) 在预引导环境中提供安全执行模式
US7380136B2 (en) Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
US7364087B2 (en) Virtual firmware smart card
JP5512610B2 (ja) 非ファームウェアエージェントからメモリへのアクセスを許可または阻止する方法、システム、および機械可読記憶媒体
US7984286B2 (en) Apparatus and method for secure boot environment
EP0932953B1 (en) Bios protected by a security processor
US8375221B1 (en) Firmware-based trusted platform module for arm processor architectures and trustzone security extensions
US8839236B2 (en) Virtual machine support for metered computer usage
CN101154256B (zh) 启动可信共存环境的方法和装置
US8806224B2 (en) Low cost trusted platform
US9251347B2 (en) Providing an immutable antivirus payload for internet ready compute nodes
TWI582632B (zh) 使用多重鑑別碼模組以進入安全計算環境之方法及系統、以及處理器
TW201535145A (zh) 使用保護讀取儲存器安全地儲存韌體數據之系統及方法
CN102298529A (zh) 为系统提供硅集成代码
CN108139901B (zh) 使用外部设备的运行时间验证
CN116956267A (zh) 平台证书的基于管理控制器的验证
CN102985929A (zh) 外部启动设备、外部启动程序、外部启动方法及网络通信系统
CN113268447A (zh) 计算机架构及其内的访问控制、数据交互及安全启动方法
CN114692160A (zh) 计算机安全可信启动的处理方法及装置
CN115130106A (zh) 一种通过fTPM实现可信启动的方法及相关装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20090708

CX01 Expiry of patent term