CN101952831A - 具有主处理器及边界安全副处理器的计算机系统 - Google Patents
具有主处理器及边界安全副处理器的计算机系统 Download PDFInfo
- Publication number
- CN101952831A CN101952831A CN2009801035791A CN200980103579A CN101952831A CN 101952831 A CN101952831 A CN 101952831A CN 2009801035791 A CN2009801035791 A CN 2009801035791A CN 200980103579 A CN200980103579 A CN 200980103579A CN 101952831 A CN101952831 A CN 101952831A
- Authority
- CN
- China
- Prior art keywords
- processor
- primary processor
- security control
- control processor
- primary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 9
- 230000005764 inhibitory process Effects 0.000 claims description 4
- 230000005055 memory storage Effects 0.000 claims 3
- 230000004044 response Effects 0.000 claims 1
- 230000007246 mechanism Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 17
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000003860 storage Methods 0.000 description 9
- 238000000034 method Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005315 distribution function Methods 0.000 description 2
- 239000010931 gold Substances 0.000 description 2
- 229910052737 gold Inorganic materials 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- KJLPSBMDOIVXSN-UHFFFAOYSA-N 4-[4-[2-[4-(3,4-dicarboxyphenoxy)phenyl]propan-2-yl]phenoxy]phthalic acid Chemical compound C=1C=C(OC=2C=C(C(C(O)=O)=CC=2)C(O)=O)C=CC=1C(C)(C)C(C=C1)=CC=C1OC1=CC=C(C(O)=O)C(C(O)=O)=C1 KJLPSBMDOIVXSN-UHFFFAOYSA-N 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 238000007664 blowing Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 150000002343 gold Chemical class 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/74—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2101—Auditing as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Storage Device Security (AREA)
- Advance Control (AREA)
- Stored Programmes (AREA)
Abstract
一种计算机系统(100),其包含主处理器(10)及耦合至该主处理器并且配置成控制和监视该主处理器的操作状态之安全控制处理器(20)。为确保计算机系统是可靠的,可以将安全控制处理器配置成于该安全控制处理器之初始化期间保持该主处理器于从属模式,使得该主处理器不可操作成从例如主处理器外部的指令源取得和执行指令。此外,当该主处理器保持于从属模式时可以将安全控制处理器配置成经由控制接口(26)转移一个或多个指令至该主处理器,而初始化该主处理器的操作状态至预定的状态,并且使该主处理器执行该一个或多个指令。
Description
技术领域
本发明系关于计算机系统安全,而尤系关于使用安全平台的计算机系统。
背景技术
许多习知的计算机系统和执行于该计算机系统之软件易受到来自于软件和硬件机构之攻击。端视所需要受保护之资产而定,负责建立系统安全之系统设计者可能面对关联于保持系统软件各部分可靠性之各种问题。可能包含例如操作系统、应用软件及基本输入输出系统(BIOS)之系统软件可能受到许多不同方式之危害。操作系统软件可能受到病毒和其它恶意软件(malware)之攻击。譬如闪存、只读存储器(ROM)或硬盘机之外部储存器可以独立地操作。从事数字权管理(digital rights management,DRM)之系统可能由于使用者尝试违反允许事项而受到危害。
因为系统软件容易于任何给定之习知计算机系统上受到危害,因此对于如在线银行、在线秘书、多媒体内容提供者等服务之提供者和使用者而言,于安全之环境运作应用软件系愈形困难。
发明内容
本说明书揭示计算机系统和方法之各种实施例。于一个实施例中,计算机系统包含主处理器及耦合到该主处理器并且配置以控制和监视该主处理器的操作状态之安全控制处理器。为确保计算机系统是可靠的,可以配置安全控制处理器于该安全控制处理器之初始化期间保持该主处理器于从属模式,使得该主处理器不可操作成从例如主处理器外部的指令源取得和执行指令。此外,当该主处理器被保持于从属模式时可以配置安全控制处理器以经由控制接口转移一个或多个指令至该主处理器而初始化该主处理器的操作状态至预定的状态,并且导致该主处理器执行该一个或多个指令。
再者,以例如不同处理器取代安全控制处机机来帮助确保系统未被劫持,可以利用束缚操作将安全控制处理器和主处理器束缚在一起。于一个特定实施例中,在主处理器与安全控制处理器彼此承认为有效期间,在安全控制处理器主处理器操作于正常操作模式之前,安全控制处理器系配置以初始化束缚验证操作。为了响应成功的束缚验证操作,主处理器被配置以操作于正常操作模式。
附图说明
图1为采用安全控制处理器的计算机系统之一个实施例之方块图。
图2为说明采用安全控制处理器的计算机系统之实施例的操作之流程图。
具体实施方式
现翻至图1,显示计算机系统之一个实施例之方块图。计算机系统100包含经由内存链路16耦合至系统内存15之主处理器10。主处理器10亦经由I/O链路24耦合至输入/输出(I/O)桥接器30。此外,主处理器系经由控制接口26耦合至安全控制处理器20。I/O桥接器30系经由周边总线36耦合至安全控制处理器20。I/O桥接器30亦经由周边总线38耦合至基本输入输出(BIOS)储存器18。应注意的是,虽然BIOS系如所示耦合至I/O桥接器30,但是应考虑到于其它实施例中,BIOS18可以用其它方式耦合至系统。亦应注意到为了简化起见,已经省略了许多其它的计算机系统组件。例如,计算机系统100可以包含譬如键盘、鼠标、显示器之I/O装置和譬如图形配接器之周边装置以及额外的处理器、协同处理器等等。
于一个实施例中,处理器10可以表示实现x86架构之任何种类之处理器。然而,应注意的是于其它实施例中,主处理器10可以实现任何类型之架构。此外,因为主处理器10可以是任何类型之范示微处理器,因此主处理器10可以包含许多因简化而被忽略之其它组件和功能区块(譬如指令和数据缓存、加载和储存单元、获取和译码逻辑以及一个或多个执行单元)。
如所示,主处理器10系经由控制接口26耦合至安全控制处理器20。如此种情形,主处理器10包含控制接口逻辑13。如将于下文中更详细说明者,控制接口逻辑13可以包含使得安全控制处理器20能够一直控制和监视主处理器10的操作状态之功能。主处理器的操作状态可以藉由数据存储器影像、缓存器设定、将被执行的指令(可能是另一个内存影像)、其缓存及其它内部处理器状态来说明。举例而言,控制接口逻辑13可以包含测试存取端口(test access port,TAP)控制器缓存器,该测试存取端口控制器缓存器可以允许安全控制处理器20具有对主处理器10之其它硬件功能之中的处理器指令缓存I-Cache(未显示)之直接存取。于一个实施例中,控制接口26和控制接口逻辑13可以实现为进阶除错端口,该进阶除错端口可以包含遵从已广为人知的IEEE 1149.1边界扫描标准(Boundary Scan Standard)(其有时亦称之为接合测试动作群(joint test action group,JTAG)标准)之功能。边界扫描标准包含具有复数个外部可存取接脚(包含TDI、TDO、TMS、TCK及TRST)之串联测试接口。然而,控制接口26和控制接口逻辑13可以包含额外的讯号和特征使其为IEEE 1149.1边界扫描标准之超集。举例而言,于一个实施例中,该除错端口可以藉由超级微装置公司(Advanced Micro Devices,Inc.)实现为专卖的硬件除错工具(hardware debug tool,HDT)端口。如此,该端口可以包含例如请求接脚(DBRED_L)和除错预备接脚(DB_RDY)。于此种实施例中,DBRED_L可由外部指定,而当除错HW完成时可以藉由确认DB_RDY讯号来回答。
此外,如例示实施例中所示,主处理器10包含可以硬件实现之监视定时器(watchdog timer,WDT)电路11。WDT电路11亦包含抑制机构(disable mechanism)12。应该注意的是,于其它实施例中,可以没有WDT电路11,而抑制机构12可以具有独立功能(亦即,可以使用在没有WDT电路11的情况下使用)。如将于下文中更详细说明者,抑制机构12可以是所有的或某些的系统组件所参与的分布监视功能(distributed watchdog function)的一部分。于一个实施例中,抑制机构12可以视特定的实现方式而定,而例如藉由永久或暂时地以及完全或部分地抑制该主处理器10,以对来自任何WDT电路(如WDT电路11)之讯号作出响应。
I/O桥接器30根据特定的实现方式可以实现成为I/O集线器(hub)或南桥。于一个实施例中,I/O链路24可以实现成为超传输(HyperTransportTM)链路,其中一对单向链路可以在主处理器10与I/O桥接器30之间输送封包。当如此情况,I/O桥接器30可以包含譬如输入和输出缓冲器之支持逻辑,以及流程控制逻辑以控制该HT链路。此外,I/O桥接器30可以包含桥接器逻辑以支持至譬如周边总线36之周边总线的通讯。举例而言,于一个实施例中,周边总线36和总线38可以表示低接脚数(low pin count;LPC)总线,或者周边组件互连(peripheral component interconnect;PCI)总线等。因此,I/O桥接器30可以包含桥接器逻辑(未显示)以桥接HT协议和LPC或PCI协议间的通讯。应该注意的是,于其它实施例中,如所期望的,可以使用任何类型的通讯或总线协议以实现I/O链路24。
安全控制处理器20可以经由控制接口26且经由I/O桥接器30透过LPC总线36通讯至主处理器10。于一个实施例中,控制接口26为单路接口因为主处理器10可以不经由控制接口26初始化至安全控制处理器20的通讯。如上所述,安全控制处理器20可以经由控制接口26监视和控制主处理器10之状态。更详言之,使用特定的控制接口指令,安全控制处理器20可以读取和写入组成主处理器10之CPU状态之所有组件。举例而言,安全控制处理器20可以加载指令,并且可透过控制接口26从主处理器10读取和写入系统缓存器。
如所例示,I/O桥接器30亦包含可以硬件实现之WDT电路31。类似于主处理器10之WDT11,WDT电路31亦包含抑制机构32。然而,如上所述,于其它实施例中,可以没有WDT电路31,而该抑制机构32可以具有独立的功能,并且可以在没有WDT电路31的情况下使用。将如下文中更详细之说明,该抑制机构32可以是分布监视功能之一部份,其中所有的或一些系统组件(例如:主处理器10、安全控制处理器20等)可以包含WDT电路硬件并且可以参与WDT事件。于一个实施例中,抑制机构32可以例如根据特定的实现方式藉由抑制I/O桥接器30,对来自任何WDT电路(譬如WDT电路11或WDT电路31)之讯号作出响应。
于所例示之实施例中,该安全控制处理器20系经由该控制接口26耦合至该主处理器10且经由周边总线36(例如:LPC)耦合至该I/O桥接器30。于一个实施例中,该安全控制处理器20可实现成为特殊用途处理器。如此,该安全控制处理器20一旦被编程,则可包含多种特殊安全特征(如不能由该处理器20外部存取的内部存储器25)。此外,于一个实施例中,可实现安全控制处理器20以避免损害或反向工程。安全控制处理器20也可包含实施编码功能之能力。
于一个实施例中,可以将该安全控制处理器20配置成执行储存在内部存储器25中之程序指令。一旦执行了程序指令即可以导致安全控制处理器20控制主处理器10和计算机系统100之启动(boot-up)序列,并且一直控制和监视主处理器10的操作。举例而言,欲确保系统之安全,可将安全控制处理器20配置成在允许主处理器10加载和执行BIOS码之前确认BIOS储存器18中之BIOS码有效。
此外,可以将安全控制处理器20配置成操纵主处理器10的操作状态,并于允许主处理器10自从属模式释放之前将指令上载至主处理器10的指令缓存中。举例而言,于一个实施例中,该安全控制处理器20可以将安全控制处理器20保持于从属模式中。如本文中所使用者,于从属模式期间,当例如于除错端口之控制下,主处理器可以自其内部指令缓存以除错或闭锁步骤方式执行指令。此外,当于从属模式中时,在主处理器10中之一些电路事实上可以保持于传统重设。然而,譬如一些频率电路和一些除错电路之其它电路也许是操作的。此外,当于从属模式中时,主处理器10可能不能自主地自系统内存15撷取指令并执行这些指令。应该注意的是于运作(runtime)期间,当数据项不须保密时,例如,可以使用内存而非内部指令缓存。
监视器功能、尤其是WDT电路11和31,可配置成监视安全控制处理器20之存在和正确操作。举例而言,可以将安全控制处理器20配置成于预定的时距(interval)发送譬如保持活跃(stay alive)或心跳讯息(heartbeam message)至各系统组件。于一个实施例中,可以将安全控制处理器20配置成于周期性时距或某些预定之最大时距内之某些随机化(例如:不可预测的、拟似随机的、真随机的等)时距发送讯息。在接收到保持活跃讯息后,可将主处理器10和I/O桥接器30配置成重设抑制机构(例如:12、32)。然而,于缺乏保持活跃讯息之情况下,可将抑制机构配置成抑制或部分地抑制硬件及/或于其中实现该等抑制机构之个别组件之功能。应该注意的是于一个实施例中,部分地抑制该主处理器10可以包含使主处理器10(因而系统100)操作于有限功能模式中。
于一个实施例中,可将抑制机构配置成纯粹牵引该系统重设,藉此重设主处理器10、安全控制处理器20及I/O桥接器30之每一者。于另一个实施例中,可将抑制机构配置成个别地重设主处理器10或I/O桥接器30或安全控制处理器20之其中一者。然而于其它实施例中,为了防止系统被使用于任何非其所意欲目的之方式,可了解到,可将抑制机构配置成,藉由例如烧断熔丝(blowing fuse)或永久损害其它内部硬件而更永久地抑制硬件。
另一方面,可将抑制机构配置成使主处理器10开始执行程序代码,该码系先前储存于内存25中或者在安全控制处理器20控制下并转移至主处理器10之另一内存中。此程序代码可编程主处理器10以及导致系统进入有限功能模式之任何其它计算机系统组件。于该有限功能模式中,可将主处理器10和计算机系统100之一个或多个组件,予以编程成操作于相较于正常操作模式而言减低之功能水平。于是,计算机系统之整体功能减少,而使用者可发现到该计算机有较少用处(或者使用者甚至可能发现该计算机系统全然没有用处)。
举例而言,编程该一个或多个组件以进入有限功能模式系有许多变化。可能之非详尽无遗的表列(其中之一项或更多项可以任何结合来使用)包含:编程该主处理器10的内存控制器以限制内存之尺寸至最小量(例如:足够供LFM码储存使用,但是不会更多);编程组件以强迫最高有效地址位为0,限制可寻址内存空间;若包含多于一个处理器,则抑制各处理器;抑制协作处理器、硬件加速器、图形处理器、网络卸载引擎以及其它性能增强辅助电路;抑制外部中断和除错功能;抑制处理器和系统缓存;降低处理器的操作频率;降低其它操作频率(例如:内存、周边接口、内部接口);减少具有可配置宽度(例如:HyperTransportTM链路)之内部接口之尺寸;将视讯显示模式降低至最低可能分辨率,或仅有文字;编程NIC(s)24以将网络联机限制在由计算机系统拥有者所授权之仅有位置;以及抑制一个或多个周边装置(例如:除了视讯、键盘、及鼠标以外之所有装置)等等。
参照图2,显示说明譬如计算机系统100的计算机系统之实施例的操作之流程图。由方块200开始,如于电源开启重设期间将系统重设予以初始化。为回应此重设,开始初始化安全控制处理器20。做为安全控制处理器20之初始化的一部分者,系保持主处理器10于从属模式(方块205)中。安全控制处理器20存取内部存储器25,其中,该内部存储器25不能(经由软件或硬件)自安全控制处理器20之集成电路封装件外侧存取。于一个实施例中,可于制造期间编程内部存储器25。然而,于制造编程后,不能再编程内部存储器25,且该内部存储器25变成不能由任何其它外部装置存取。于是,于一个实施例中,安全控制处理器20运作于由制造商所提供之签署的、固定的软件。此软件系在运作所有软件之前检核其确实性和完善性。此外,于其它实施例中,当安全控制处理器20能够使用例如内部码(例如:SHAI及RSA)和储存器(例如:于ROM中之公用金钥)作检核以检核程序代码之确实性和完善性时,安全控制处理器20可以使用储存于外部内存(例如:ROM)中之程序代码。
安全控制处理器20从内部存储器25经由控制接口26将程序指令转移至主处理器10。于一个实施例中,安全控制处理器20利用控制接口26将指令加载主处理器10的指令缓存(方块210)。此外,安全控制处理器20可以藉由经由控制接口26发出命令和存取系统缓存器而初始化该主处理器10中之各种系统缓存器。此外,安全控制处理器20可以导致主处理器10执行储存在指令缓存中之程序代码(方块215)。
于一个实施例中,当执行指令时可初始化主处理器10至已知状态,并初始化结合验证操作(方块220)。详言之,于计算机系统制造期间,可将安全控制处理器20及主处理器10结合在一起,使得仅有结合的装置能够彼此通讯。详言之,若结合的装置使用例如AES加密进行通讯,则仅有拥有金钥之装置能够参与。如此一来,结合程序包含确保结合装置具有相同的金钥。藉由结合安全控制处理器20和主处理器10,则两者皆不会于稍后被不同的组件所移除或取代。
于一个实施例中,结合验证操作可以包含实施加密功能及/或随机操作之主处理器10,该加密功能及/或随机操作可以包含在主处理器10内部产生密码或金钥。一旦产生了该金钥,则主处理器10可以用包含有发送自安全控制处理器20之程序指令之金钥来确认该所产生之金钥为有效的。类似地,安全控制处理器20可以自主处理器10内预定的缓存器读取金钥值。安全控制处理器20可以确认金钥值为有效的。于是,结合验证操作可以使安全控制处理器20确认该主处理器10为其所耦合至的该一个且唯一正确的处理器。同样地,主处理器10可以确认该安全控制处理器20为其所耦合至的该一个且唯一正确的安全处理器。考虑到存在以结合二个处理器之许多不同机构。举例而言,其中可以实现公用/私人金钥之非对称编码解决方法,或者其中以安全方式交换金钥之任何其它的机构,使得安全控制处理器20和主处理器10能够验证该结合。若结合验证操作失败(方块223),则安全控制处理器20或主处理器10之其中任一者或二者可以再尝试该操作。且若结合验证操作再次失败,则系统可以进入闭锁(lock down)模式,于此模式中主处理器10变成不能操作(方块224)。
若结合验证过程成功(方块223),则安全控制处理器20确认BIOS程序指令(方块225)为有效的。若BIOS未确认为有效(方块226),则安全控制处理器20可以导致系统进入闭锁模式,于此模式中主处理器10变成不能操作(方块224)。然而,若确认BIOS(方块226)为有效的,则安全控制处理器20释放主处理器10,并且允许主处理器10开始初始化和加载及执行BIOS码(方块230),且开始加载和执行操作系统码与应用软件,并且进入正常操作模式(方块235)。
于操作期间,安全控制处理器20经由控制接口持续监视和控制主处理器10的操作状态(方块240),同时上述之WDT电路可以利用保持活跃讯号监视安全控制处理器20之存在(方块255)。
若安全控制处理器20视主处理器10的操作为正确(方块245),则安全控制处理器20持续监视该操作(方块240)。然而,若安全控制处理器20视主处理器10的操作为不正确(方块245),则安全控制处理器20可以抑制该系统,或者导致该主处理器10为不能操作(方块250),或者以减少之能力操作。举例而言,于一个实施例中,当执行某个应用软件时,可以包含储存在特定内存位置或缓存器中之签章值。于一个实施例中,该签章值表示单向功能之加密结果,将软件之二进制代码全部对映至某数字空间(例如:160位数)。换言之,所得到的数字表示该码。必须不能控制所产生之某数字,且必须不能回推。安全控制处理器20可以加载并验证该签章。若该金钥匹配,则允许主处理器10继续。若不匹配,则安全控制处理器20可以暂停主处理器10的操作。于一个实施例中,必须确认执行于主处理器10之所有的软件皆为有效的,以防止未经授权软件及恶意软件之运作。于是,安全控制处理器20可以防止计算机系统100被劫持或被重订目的。
上述之WDT电路可以利用保持活跃讯号监视安全控制处理器20之存在(方块255)。若WDT电路持续侦测通知该安全控制处理器20系存在和正在操作的保持活跃讯号(方块260),则WDT电路持续利用保持活跃讯号监视安全控制处理器20之存在(方块255)。然而,若WDT电路在最大可允许停止时间周期内并未侦测到保持活跃讯号,则抑制机构可以如上述各种不同的方式抑制或部分地抑制计算机系统(方块265)。于是,于系统已经初始化进入正常模式后,WDT电路可以防止意图取代原始安全控制处理器20之攻击移除和损害,或以不同的处理器取代该原始安全控制处理器20。
虽然已相当详细说明了上述实施例,但是熟悉此项技术者一旦完全了解上述揭示内容后将可作许多的改变和修饰。下列的申请专利范围将包含所有的此等改变和修饰。
虽然本发明可容易作各种之修饰和替代形式,但在此系由图式中之范例显示及详细说明本发明之特定实施例。然而,应暸解到此处特定实施例之图式及详细说明并非意图用来限制本发明为所揭示之特定形式,反之,本发明将涵盖所有落于如所附申请专利范围内所界定之本发明之精神和范围内之修饰、等效和替代内容。应注意的是,指辞“可以〔may〕”于本申请案中具有宽大的意义〔亦即,具有潜在性(potential to),能够(being able to),而非以命令的意义〔亦即必须(must)〕。
产业利用性
本发明一般可应用于计算机系统安全。
Claims (10)
1.一种计算机系统(100),包括:
主处理器(10);
安全控制处理器(20),耦合至该主处理器以及被配置成控制和监视该主处理器的操作状态;
其中,该安全控制处理器被配置成在该安全控制处理器的初始化期间保持该主处理器于从属模式,从而使得该主处理器不能操作成从该主处理器外部的指令源取得和执行指令;
其中,当该主处理器保持于该从属模式时进一步将该安全控制处理器配置成经由控制接口(26)转移一个或多个指令至该主处理器,而初始化该主处理器的操作状态至预定的状态,以及使该主处理器执行该一个或多个指令。
2.如权利要求1所述的系统,其中,该安全控制处理器被配置成一直控制和监视该主处理器的操作状态。
3.如权利要求1所述的系统,其中,该一个或多个指令从由该安全控制处理器所控制和验证的内存储存器(25)转移至该主处理器中的指令缓存。
4.如权利要求1所述的系统,其中,该控制接口包括除错端口,以及该除错端口包含端口控制器(13)、一个或多个数据讯号及控制讯号。
5.如权利要求1所述的系统,其中,该控制接口提供该安全控制处理器与该主处理器之间的通讯,且该通讯仅由该安全控制处理器所初始化。
6.如权利要求1所述的系统,其中,在该安全控制处理器将该主处理器释放到正常操作模式而操作之前,将该安全控制处理器被配置成确认储存于内存储存器装置(18)内的基本输入输出系统(BIOS)指令为有效。
7.如权利要求6所述的系统,其中,为了响应该安全控制处理器将该主处理器释放到该正常操作模式而操作,将该主处理器配置成自该内存储存器装置加载该BIOS指令。
8.如权利要求1所述的系统,其中,在该安全控制处理器将该主处理器释放到该正常操作模式而操作之前,将该安全控制处理器配置成将结合验证操作予以初始化,其间该主处理器和该安全控制处理器彼此确认为有效,其中,为了响应成功的结合验证操作,将该主处理器配置成在该正常操作模式操作。
9.如权利要求1所述的系统,其中,该主处理器包含监视定时器电路(11),该监视定时器电路配置成在正常操作状态期间监视表示该安全控制处理器存在且可操作的讯号,以及提供监视时间终止通知至该主处理器,以响应确定现存讯号正表示该安全控制处理器不存在或不正确操作。
10.如权利要求9所述的系统,其中,该主处理器包含抑制电路(12),该抑制电路配置成至少部分地抑制该主处理器以响应于接收该监视时间终止通知。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/022,446 US20090193230A1 (en) | 2008-01-30 | 2008-01-30 | Computer system including a main processor and a bound security coprocessor |
US12/022,446 | 2008-01-30 | ||
PCT/US2009/000603 WO2009099558A2 (en) | 2008-01-30 | 2009-01-30 | Computer system including a main processor and a bound security coprocessor |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101952831A true CN101952831A (zh) | 2011-01-19 |
Family
ID=40627406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801035791A Pending CN101952831A (zh) | 2008-01-30 | 2009-01-30 | 具有主处理器及边界安全副处理器的计算机系统 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20090193230A1 (zh) |
KR (1) | KR20100121497A (zh) |
CN (1) | CN101952831A (zh) |
TW (1) | TW200941277A (zh) |
WO (1) | WO2009099558A2 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870388A (zh) * | 2012-12-07 | 2014-06-18 | 国际商业机器公司 | 避免硬件事件预定序列触发的计算机处理器中的处理缺陷 |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8330428B2 (en) | 2008-11-12 | 2012-12-11 | Bruce Eric Zeier | Lead acid battery de-sulfation |
US8601302B2 (en) * | 2009-06-22 | 2013-12-03 | Amazon Technologies, Inc. | Processor system in low power state retention mode with linear regulator off and switch regulator low in power management IC |
US8327125B2 (en) * | 2009-12-28 | 2012-12-04 | General Instrument Corporation | Content securing system |
JP5376058B2 (ja) * | 2010-06-30 | 2013-12-25 | 富士通株式会社 | システム制御装置、情報処理システム及び情報処理システムのデータ退避及び復元方法 |
US8612786B1 (en) * | 2010-09-24 | 2013-12-17 | Amazon Technologies, Inc. | Deep idle mode |
FR2970099B1 (fr) * | 2010-12-29 | 2013-01-11 | Viaccess Sa | Procede de chargement d'un code d'au moins un module logiciel |
TWI540438B (zh) | 2011-10-13 | 2016-07-01 | 新唐科技股份有限公司 | 記憶體控制元件 |
US8971144B2 (en) * | 2012-01-19 | 2015-03-03 | Quixant Plc | Hardware write-protection |
US8832837B2 (en) * | 2012-06-29 | 2014-09-09 | Mcafee Inc. | Preventing attacks on devices with multiple CPUs |
US20150067314A1 (en) * | 2013-08-30 | 2015-03-05 | Timothy J. Strauss | Secure firmware flash controller |
US9503443B2 (en) * | 2014-09-15 | 2016-11-22 | Ciena Corporation | Secure access systems and methods to network elements operating in a network |
JP6816345B2 (ja) * | 2015-04-24 | 2021-01-20 | 富士電機株式会社 | 駆動制御装置 |
US9736693B2 (en) * | 2015-07-21 | 2017-08-15 | Motorola Solutions, Inc. | Systems and methods for monitoring an operating system of a mobile wireless communication device for unauthorized modifications |
TWI655555B (zh) * | 2016-10-31 | 2019-04-01 | 威盛電子股份有限公司 | 基本輸入輸出系統之保護設備與方法 |
CN107273770B (zh) * | 2016-10-31 | 2020-08-11 | 威盛电子股份有限公司 | 基本输入输出系统的保护设备与方法 |
US10678927B2 (en) * | 2017-08-31 | 2020-06-09 | Texas Instruments Incorporated | Randomized execution countermeasures against fault injection attacks during boot of an embedded device |
US10740494B2 (en) | 2017-09-06 | 2020-08-11 | Google Llc | Central and delegate security processors for a computing device |
CN110337652B (zh) * | 2018-01-29 | 2023-03-17 | 深圳市汇顶科技股份有限公司 | 芯片的访问方法、安全控制模块、芯片和调试设备 |
WO2021023164A1 (zh) * | 2019-08-02 | 2021-02-11 | 云丁网络技术(北京)有限公司 | 一种智能锁具控制方法和系统 |
US11928210B2 (en) | 2022-03-02 | 2024-03-12 | Flexxon Pte. Ltd. | Module and method for monitoring systems of a host device for security exploitations |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4521871A (en) * | 1982-04-12 | 1985-06-04 | Allen-Bradley Company | Programmable controller with back-up capability |
US5274795A (en) * | 1989-08-18 | 1993-12-28 | Schlumberger Technology Corporation | Peripheral I/O bus and programmable bus interface for computer data acquisition |
US5491787A (en) * | 1994-08-25 | 1996-02-13 | Unisys Corporation | Fault tolerant digital computer system having two processors which periodically alternate as master and slave |
US5841969A (en) * | 1996-08-13 | 1998-11-24 | Honeywell Inc. | Single bus architecture supporting subsystems of various criticality levels |
US6629268B1 (en) * | 2000-01-25 | 2003-09-30 | International Business Machines Corporation | Method and apparatus for servicing a processing system through a test port |
US6839792B2 (en) * | 2000-12-15 | 2005-01-04 | Innovative Concepts, Inc. | Data modem |
US6789147B1 (en) * | 2001-07-24 | 2004-09-07 | Cavium Networks | Interface for a security coprocessor |
US6968477B2 (en) * | 2002-03-07 | 2005-11-22 | International Business Machines Corporation | System and method for system surveillance using firmware progress code |
US7464405B2 (en) * | 2004-03-25 | 2008-12-09 | International Business Machines Corporation | Method for preventing loading and execution of rogue operating systems in a logical partitioned data processing system |
US7136952B2 (en) * | 2004-04-28 | 2006-11-14 | International Business Machines Corporation | Method for programming firmware hubs using service processors |
JP2006031525A (ja) * | 2004-07-20 | 2006-02-02 | Sony Corp | 情報処理装置および情報処理方法、並びに、プログラム |
-
2008
- 2008-01-30 US US12/022,446 patent/US20090193230A1/en not_active Abandoned
-
2009
- 2009-01-30 WO PCT/US2009/000603 patent/WO2009099558A2/en active Application Filing
- 2009-01-30 CN CN2009801035791A patent/CN101952831A/zh active Pending
- 2009-01-30 KR KR1020107019327A patent/KR20100121497A/ko not_active Application Discontinuation
- 2009-02-02 TW TW098103175A patent/TW200941277A/zh unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870388A (zh) * | 2012-12-07 | 2014-06-18 | 国际商业机器公司 | 避免硬件事件预定序列触发的计算机处理器中的处理缺陷 |
CN103870388B (zh) * | 2012-12-07 | 2017-01-18 | 国际商业机器公司 | 避免硬件事件预定序列触发的计算机处理器中的处理缺陷 |
Also Published As
Publication number | Publication date |
---|---|
US20090193230A1 (en) | 2009-07-30 |
WO2009099558A3 (en) | 2009-10-15 |
KR20100121497A (ko) | 2010-11-17 |
WO2009099558A2 (en) | 2009-08-13 |
TW200941277A (en) | 2009-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101952831A (zh) | 具有主处理器及边界安全副处理器的计算机系统 | |
US6564326B2 (en) | Method and apparatus for enhancing computer system security | |
TWI489378B (zh) | 提供安全執行環境之裝置、微處理器裝置、以及在安全執行環境中執行安全編碼之方法 | |
Waksman et al. | Tamper evident microprocessors | |
US8843769B2 (en) | Microcontroller with embedded secure feature | |
US9189247B2 (en) | Method for switching between virtualized and non-virtualized system operation | |
US6311273B1 (en) | Method and apparatus for enhancing computer system security | |
TWI395138B (zh) | 提供安全執行環境之裝置、微處理器裝置、以及在安全執行環境中執行安全編碼之方法 | |
US10095862B2 (en) | System for executing code with blind hypervision mechanism | |
CN101176069B (zh) | 用于操作计算机系统的方法 | |
CN104794393A (zh) | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 | |
CN111931251B (zh) | 一种基于区块链的可信计算芯片 | |
US9367327B2 (en) | Method to ensure platform silicon configuration integrity | |
WO1998036517A1 (en) | Security coprocessor for enhancing computer system security | |
JP2012118884A (ja) | プロセッサ及び半導体装置 | |
US11734457B2 (en) | Technology for controlling access to processor debug features | |
KR100406228B1 (ko) | 의사 랜덤 이진 시퀀스 프로그램 인터록을 이용한 템퍼레지스턴스 | |
Thomas et al. | Multi-task support for security-enabled embedded processors | |
Michell | Programming language vulnerabilities: proposals to include concurrency paradigms | |
Bolat et al. | DEV-PIM: Dynamic Execution Validation with Processing-in-Memory | |
Epifani | Control-Flow Integrity for Embedded Systems: Study Case of an FPGA-Based Solution | |
Hilke | Runtime Monitoring of PLCs In Critical Real-Time Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110119 |