CN100390701C - 自举具有冗余可信平台模块的可信服务器的方法和系统 - Google Patents

自举具有冗余可信平台模块的可信服务器的方法和系统 Download PDF

Info

Publication number
CN100390701C
CN100390701C CNB2005100595501A CN200510059550A CN100390701C CN 100390701 C CN100390701 C CN 100390701C CN B2005100595501 A CNB2005100595501 A CN B2005100595501A CN 200510059550 A CN200510059550 A CN 200510059550A CN 100390701 C CN100390701 C CN 100390701C
Authority
CN
China
Prior art keywords
credible platform
secret data
data value
handling system
platform module
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 - Fee Related
Application number
CNB2005100595501A
Other languages
English (en)
Other versions
CN1694032A (zh
Inventor
史蒂文·A·巴德
琳达·N·贝茨
安德鲁·G·凯盖尔
戴维·R·萨福德
利恩德特·P·范多恩
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1694032A publication Critical patent/CN1694032A/zh
Application granted granted Critical
Publication of CN100390701C publication Critical patent/CN100390701C/zh
Expired - Fee Related 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

Abstract

在数据处理系统内的多个可信平台模块以冗余方式被使用,这提供了可靠的机制,用于安全地将用以自举系统可信平台模块的秘密数据存储在休眠状态。管理程序请求每个可信平台模块加密秘密数据的拷贝,由此产生加密的秘密数据值的多个版本,它们然后被存储在可信平台内的非易失性存储器内。在以后的某个时间点,加密的秘密数据值被取出,被执行先前的加密的可信平台模块解密,然后被彼此比较。如果根据比较操作,有任何解密的值不匹配值的额定数,则将用于不匹配的解密值的相应可信平台模块指定为有缺陷,因为它还不能够正确地解密它先前加密的值。

Description

自举具有冗余可信平台模块的可信服务器的方法和系统
技术领域
本发明涉及一种改进的数据处理系统,具体涉及一种用于使用密码技术的数据存储保护的方法和装置。
背景技术
多数数据处理系统包括需要保护的敏感数据和敏感操作。例如,需要保护配置信息的完整性以防非法的修改,同时需要保护诸如口令文件的其他信息以防非法公开。作为另一个示例,一个数据处理系统需要能够可靠地向其他数据处理系统识别其本身。
给定的数据处理系统的操作员可以使用许多不同类型的安全机制来保护所述数据处理系统。例如,在数据处理系统上的操作系统可以提供各种软件机制以保护敏感数据,诸如各种验证和授权方案,而某些硬件设备和软件应用可以依赖于硬件机制来保护敏感数据,诸如硬件安全令牌(token)和生物统计学传感器设备。
但是,数据处理系统的数据及其操作的完整性围绕着信任(trust)问题。如果另一个实体相对于特定数据项或特定操作具有用于建立与数据处理系统的信任的某种方式,则所述实体可以验证或接受数据处理系统的数据和操作。
因此,用于保护数据处理系统的能力受限于在数据处理系统内建立或根植信任的方式。为了解决保护数据处理系统的问题,一个公司集团已经形成了可信计算集团(TCG)来开发和推广用于可信计算的开放标准和规范。按照所述可信计算集团的规范,在给定的数据处理系统内的信任或在数据处理系统和另一个实体之间的信任基于在已经被称为可信平台模块(TPM)的数据处理系统内的硬件部件的存在。
可信平台模块物理上保护特定的密钥数据安全。每个可信的平台模块在制造时是唯一的。如果一个可信平台模块故障,则使得由所述设备保护的密钥材料不可用。
当前的可信平台架构着重于低成本安全模块,它们被捆绑到单个系统,诸如台式计算机或便携计算机。虽然这些低成本安全模块不是必然容易故障,但是在台式计算机内的安全模块的故障一般比在高性能服务器内的类似安全模块的故障具有成本更低和劳动密集程度更低的后果,它们经常被制造为具有冗余的能力,以便避免不可接受的单个故障点。
因此,具有用于改善可信平台模块的可用性的机制是有益的。允许在保证系统可用性的同时使用低成本可信平台模块尤其有益。
发明内容
一种方法、系统、装置和计算机程序产品使多个可信平台模块能够以冗余的方式用于数据处理系统内。在数据处理系统上执行的管理程序(hypervisor)读取在数据处理系统中的可信平台内存储的秘密数据,然后请求在数据处理系统中的每个可信平台模块加密秘密数据的拷贝,由此产生加密的秘密数据值的多个版本。加密的秘密数据值存储在可信平台内的非易失性存储器中。在以后的某时间,所述加密的秘密数据值被取出,由执行先前加密的可信平台模块进行解密,然后彼此比较。如果根据比较操作,有任何解密的值与额定数(quorum)不匹配,则将对应于不匹配的解密值的相应可信平台模块指定为有缺陷,因为它还不能够正确地解密它先前加密的值。建立多个可信平台模块的额定数提供了可靠机制,用于安全地将秘密材料存储在休眠状态(at rest),秘密材料用于自举(bootstrap)该系统的可信平台模块。
根据本发明的一个方面,提供了一种用于使用在数据处理系统内的可信平台模块的方法,其中在数据处理系统内的可信平台包括至少一个非易失性存储器以及最少三个可信平台模块,所述方法包括:
(a)使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据;
(b)请求在所述最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值;
(c)在可信平台内的非易失性存储器内存储在步骤(b)产生的加密的秘密数据值;
(d)对于在数据处理系统内所述最少三个可信平台模块的每个其它可信平台模块进行步骤(b)和(c),以产生多个存储的加密的秘密数据值,其中每个存储的加密的秘密数据值与产生其的可信平台模块相关联。
根据本发明的另一个方面,提供了一种用于使用在数据处理系统内的可信平台模块的装置,其中在数据处理系统内的可信平台包括至少一个非易失性存储器以及最少三个可信平台模块,所述装置包括:
用于使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据的装置;
用于请求在所述最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置;
用于在可信平台内的非易失性存储器内存储产生的加密的秘密数据值的装置,所述产生的加密的秘密数据值是由所述用于请求在数据处理系统中的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置产生的;
用于对于在数据处理系统内所述最少三个可信平台模块的每个其他可信平台模块都产生加密的秘密数据值,以便非易失性存储器包括多个加密的秘密数据值的装置,其中每个加密的秘密数据值与产生其的可信平台模块相关联。
附图说明
在所附的权利要求中给出了本发明确信具有的特征的新颖特性。通过结合附图而阅读下列详细说明,可以最佳地明白本发明本身、进一步的目的及其优点,其中:
图1A描述了一种典型的数据处理系统的网络,其中每个数据处理系统可以实现本发明;
图1B描述了可以用于其中可以实现本发明的数据处理系统内的典型计算机架构;
图2描述了示出典型的可信平台架构的示例的方框图;
图3描述了示出典型可信平台模块的一些主要部件的方框图;
图4描述了示出按照本发明的一个实施例的、包括冗余可信平台模块的可信平台的一些部件的方框图;
图5描述了示出按照本发明的一个实施例的、使用多个冗余物理可信平台模块的系统的配置处理的流程图;
图6描述了示出按照本发明的一个实施例的、使用多个冗余物理可信平台模块的数据处理系统的自举处理的流程图;以及
图7描述了示出按照本发明的一个实施例的、在使用多个冗余物理可信平台模块的数据处理系统内并入新的可信平台模块的处理的流程图。
具体实施方式
一般,可以包括或涉及本发明的设备包括多种数据处理技术。因此,作为背景,在更详细地说明本发明之前,说明在分布式数据处理系统内的硬件和软件部件的典型组织。
现在参见附图,图1A描述了数据处理系统的典型网络,其中每个数据处理系统可以实现本发明的一部分。分布式数据处理系统100包括网络101,它是可以用于提供在分布式数据处理系统100内的连接在一起的各种设备和计算机之间的通信链路的介质。网络101可以包括诸如导线或光纤缆线之类的永久连接或通过电话或无线通信而建立的临时连接。在所描述的示例中,服务器102和服务器103与存储单元104一起连接到网络101。另外,客户机105-107也连接到网络101。客户机105-107和服务器102-103可以由多种计算设备表示,诸如大型机、个人计算机、个人数字助理(PDA)等。分布式数据处理系统100可以包括未示出的附加服务器、客户机、路由器、其他设备和对等(peer-to-peer)结构。
在所描述的示例中,分布式数据处理系统100可以包括因特网,以网络101来表示使用用于彼此通信的各种协议的网络和网关的世界范围集合,所述协议诸如轻量级(Lightweight)目录访问协议(LDAP)、传输控制协议/因特网协议(TCP/IP)、超文本传输协议(HTTP)、无线应用协议(WAP)等。当然,分布式数据处理系统100也可以包括多个不同类型的网络,诸如内联网、局域网(LAN)或广域网(WAN)。例如,服务器102直接支持客户机109和网络110,网络110包含了无线通信链路。网络使能的电话111通过无线链路112连接到网络110,并且PDA 113通过无线链路114连接到网络110。电话111和PDA 113也可以使用诸如“蓝牙”无线技术的适当技术通过无线链路115在它们之间直接传送数据,以建立所谓的个人区域网络(PAN)或个人专门网络。以类似的方式,PDA 113可以经由无线通信链路116向PDA107传送数据。
本发明可以被实现在多种硬件平台上;图1A意欲作为异类计算环境的示例,而不作为本发明的结构限制。
现在参见图1B,该图描述了其中可以实现本发明的、诸如图1A所示的那些的数据处理系统的典型计算机架构。数据处理系统120包括与内部系统总线123连接的一个或多个中央处理单元(CPU)122,所述内部系统总线123将随机存取存储器(RAM)124、只读存储器126和输入/输出适配器128相互连接,所述输入/输出适配器128支持诸如打印机130、盘单元132、或其他未示出的设备的各种输入/输出设备,诸如音频输出系统等。系统总线123也连接到通信适配器134,通信适配器134用于向通信链路136提供访问。用户接口适配器148连接诸如键盘140和鼠标142、或其他未示出的设备的各种用户设备,诸如触摸屏、指示笔(stylus)、麦克风等。显示适配器144将系统总线123连接到显示器146。
本领域内的普通技术人员可以明白,在图1B中的硬件可以依赖于系统实现方式而不同。例如,所述系统可以具有:一个或多个处理器,诸如基于英特尔奔腾的处理器和数字信号处理器(DSP);一种或多种类型的易失性和非易失性存储器。除了或替代图1B所示的硬件,还可以使用其他的外围设备。所描述的示例不意味着表示对于本发明的结构限制。
除了能够被实现在多种硬件平台上,本发明还可以被实现在多种软件环境中。可以使用典型的操作系统来控制在每个数据处理系统内的程序执行。例如,一种设备可以运行Unix
Figure C20051005955000093
操作系统,而另一种设备包括简单Java
Figure C20051005955000094
运行时间环境。一种代表性的计算机平台可以包括浏览器,它是公知的软件应用,用于访问多种格式的超文本文件,诸如图形文件、字处理文件、可扩展标记语言(XML)、超文本标记语言(HTML)、手持器件标记语言(HDML)、无线标记语言(WML)和各种其他格式和类型的文件。
本发明可以被实现在多种硬件和软件平台上,如上参照图1A和图1B所述。但是更具体而言,本发明涉及使能可信计算平台。但是,在更详细地描述本发明之前,提供一些关于可信计算平台的背景信息,用于评估本发明的操作效率和其他优点。虽然可以按照一个或多个标准与多种可信计算平台相结合地实现本发明,但是以下的本发明的示例使用来自已经由可信计算集团(TCG)推广的标准和/或规范的术语和示例;但是应当注意,所述示例不意味着表示对于本发明的实施例的结构、功能和定义的限制。
现在参见图2,方框图描述了在使用可信平台架构的模型构造的数据处理系统中的一些部件。可以对于特定的计算环境或对于特定类别的设备实现可信平台架构;图2描述了按照TCG的PC专用实现规范的可信平台架构。
系统200支持在其平台208上的诸如操作系统202、应用204和驱动器206的软件部件的执行。可以通过诸如在图1A中所示的网络101的网络来接收所述软件部件,或者可以例如在硬盘210上存储它们。平台208从电源212接收电功率,用于在附加(add-on)卡214和母板216上执行软件部件,所述母板216包括用于执行软件的典型部件,诸如CPU 218和存储器220,虽然模板216可以包括多个CPU。接口222将母板216连接到在系统200内的其他硬件部件,固件224包括POST BIOS(通电自检基本输入/输出系统)226。
母板216也包括可信构建块(TBB)228;母板216由制造商提供,附带TBB 228、和由制造商物理地或逻辑地附加和提供的其他部件。TBB 228包括下述的组合:测量的信任的核心根(CRTM)部件230、可信平台模块(TPM)232、CRTM到母板216的连接、和TPM到母板216的连接。
以下参照图3来更详细地说明TPM 232。CRTM 230是在平台复位时执行的平台的初始化代码的不可变部分;所述平台的执行必须在任何平台复位事件时在CRTM开始。以这种方式,在平台中的信任基于CRTM和T的行为,并且在所有测量中的信任基于CRTM的完整性。在图2所示的示例中,可以假定BIOS包括BIOS引导块和POST BIOS 226;这些的每个是可以彼此独立地被更新的独立部件,其中,制造商必须控制BIOS引导块的更新、修改和维护,但是第三方提供商可以更新、修改或维护POST BIOS部件。在图2所示的示例中,假定CRTM是BIOS引导块,并且POST BIOS是信任链的测量部件。或者,CRTM可以包括整个BIOS。
现在参见图3,方框图描述了按照TCG规范的可信平台模块的一些主要部件。可信平台模块300包括输入/输出部件302,它通过执行适当的协议编码/解码操作和将消息取路由到适当的部件来管理在通信总线304上的信息流。密码协处理器306在可信平台模块内执行密码操作。密钥产生器308产生对称密钥和RSA非对称密钥对。HMAC引擎310执行HMAC(加密散列(keyed-hash)消息验证)计算,由此使用秘密密钥来计算消息验证代码作为完整性检查以验证在两方之间传送的信息,例如按照Krawczyket al.,iHMAC:Keyed-Hashing for Message Authentication,Request for Comments(RFC)2104,Internet Engineering Task Force(IETF),Feb.1997(Krawczyk等,iHMAC:加密散列消息验证,征求意见稿(RFC)2104,因特网工程任务组(IETF),1997年2月)。
随机数产生器312作为用于各种值,诸如不重性(nonce)、密钥或其他值,的计算的随机性来源。SHA-1引擎314实现SHA-1散列算法。功率检测器316与平台的功率状态相关联地管理可信平台模块的功率状态。选入(opt-in)部件318保持持久和易失性标记的状态,并且强行实施与那些标记相关联的语义,以便可以使能和禁止可信平台模块。执行引擎320运行程序代码以执行可信平台模块通过输入/输出部件302接收的命令。非易失性存储器322存储与可信平台模块相关联的持久身份和状态;非易失性存储器可以存储静态数据项,但是也可用于通过由可信平台模块所有者授权的实体来存储动态数据项,而易失性存储器324存储动态数据项。
在给出参照图2和图3描述的可信计算平台的背景信息的情况下,以下参照其余的附图来提供本发明的详细说明。如上所述,典型的可信平台已经被设计为使在可信平台架构中存在可信平台模块作为可能的灾难单个故障点,这在高性能服务器或类似的高成本计算设备中是不可接受的行为。本发明通过向可信平台模块提供冗余来解决这个问题,如下文更详细地描述。
现在参见图4,方框图描述了按照本发明实施例的、包括冗余的可信平台模块的可信平台上的一些部件。运行时间管理程序400包括系统TPM功能单元402,其中秘密数据404或者已经被制造商在系统TPM功能单元402的制造期间被插入,或者已经由系统TPM功能单元402产生。非易失性RAM 406提供了安全数据库;对于非易失性RAM 406的访问被物理地硬件限制到管理程序400,它使用非易失性RAM 406来存储秘密数据404的不同加密版本。管理程序400调用在TPM 408、TPM 410和TPM 412中的功能以分别产生加密的秘密数据414、加密的秘密数据416和加密的秘密数据418。可以以冗余的方式使用多个TPM;所述可信平台包括最少三个可信平台模块,用于通过使用管理程序400中的TPM完整性比较单元402来完成冗余操作,如下更详细的解释。
现在参见图5,流程图描述了按照本发明的一个实施例的、使用多个冗余物理可信平台模块的数据处理系统的配置处理。所述处理以在数据处理系统的可信平台上的管理程序开始,检测到还没有产生将在自举数据处理系统时使用的加密秘密数据;例如,管理程序确定在可信平台上的非易失性RAM(NVRAM)还没有存储加密的秘密数据(步骤502)。优选的是,在非易失性RAM内的预定位置被保留以用于加密的秘密数据,并且管理程序可以检查那些关于有效数据的特定位置。可以假定,秘密数据或者已经被可信平台的制造商在制造期间插入,或者已经在制造处理期间或诸如取得可信平台的所有权的处理的某个其他时间由可信平台产生。图5所示的处理可以发生在可信平台的制造期间,或者它可以发生在当实体获得可信平台的所有权的时候。
在确定非易失性RAM还未保存加密的秘密数据之后,管理程序请求在可信平台上的每个可信平台模块加密所述秘密数据。管理程序获得秘密数据的拷贝(步骤504),并且确定是否存在还未用于产生秘密数据的加密版本的TPM(步骤506);如果为否,则处理结束。如果所有的TPM还未产生秘密数据的加密版本,则管理程序向下一个未使用的TPM发送请求以加密秘密数据的拷贝(步骤508),所述秘密数据的拷贝然后被存储到非易失性RAM中(步骤510)。管理程序调用每个TPM,由此通过冗余的TPM产生秘密数据的多个加密版本直到处理结束。通过在可信平台的制造或配置期间执行这个处理,图5所示的处理产生一组检查点值,可以随后用于确定是否可信平台模块已经变得有缺陷。
现在参见图6,流程图描述了按照本发明的一个实施例、使用多个冗余物理可信平台模块的数据处理系统的自举处理的一部分。所述处理以例如在数据处理系统的启动或重启期间在数据处理系统的可信平台上启动管理程序开始,其后管理程序例如使用图5中所述的处理来读取在可信平台上的非易失性RAM内先前存储的秘密数据的多个加密版本(步骤602)。管理程序使用产生所述加密版本的相应TPM来解密秘密数据的每个加密版本(步骤604)。
管理程序然后彼此比较解密值以确定是否所有的解密值彼此相等(步骤606)。如果解密值全部彼此相等,则管理程序可以继续其自举处理(步骤608),并且处理结束。如果确定没有解密值等于任何其他的解密值(步骤610),则停止引导处理(步骤612),或者,引导处理继续,但是没有在数据处理系统上的TPM功能。
然后处理通过尝试确定是否已经在解密值中建立额定数而继续。换句话说,比较解密值,并且逻辑地编组相等的值以确定是否一组相等的值表示该组的可用的值的多数,即多于可用的值的百分之五十。如果如此,则已经建立了额定数。如果存在一组相等值但是它不表示所述组可用值的多数,则还没有建立额定数。在替代的实施例中,可以依赖于在数据处理系统内的TPM的数量而使用其他的比较算法。
因此,如果确定在解密值中存在额定数,则对于未能产生与TPM的多数匹配的值的每个TPM设置误差标记(步骤614),并且允许引导处理继续(步骤616);换句话说,未能产生在额定数中的值的每个TPM被标记为出错。或者,可以使用用于将TPM指定为有缺陷的其他方法。
例如,再次参见图4,可信平台的一个示例描述了最小3个TPM。对于具有3个TPM的系统使用图6所示的处理,如果两个TPM能够产生先前加密的秘密数据的两个匹配的解密值,则自举处理能够继续;换句话说,额定数被确定为具有至少两个匹配的解密值。
现在参见图7,流程图描述了按照本发明的一个实施例的、用于将新的可信平台模块并入使用多个冗余物理可信平台模块的数据处理系统内的处理。图7所示的处理假定例如使用图6内所述的处理而已于先前检测和标记了故障的TPM,其后可能记录所述事件以供系统管理员发现和查看。故障的TPM然后被物理地去除和替换为新的TPM。
处理在管理程序检测到新的TPM的时刻后的某个时间点开始(步骤702)。如果必要的话,管理程序清除被保留以用于保存来自被替换的TPM的相应数据的可信平台上的非易失性RAM中的适当位置(步骤704)。管理程序获得秘密数据的拷贝(步骤706),并且向新的TPM发送请求以加密秘密数据的拷贝(步骤708),所述拷贝然后被存储在非易失性RAM内的预定位置内(步骤710),以便非易失性RAM包含当以图6所述的方式自举数据处理系统时用于完成TPM完整性检查操作所需要的所有数据。
根据上述的详细说明,本发明的优点应很明显。通过在非易失性RAM中保存加密的秘密数据的多个拷贝,其中每个对应于在数据处理系统内的一个可信平台模块,在数据处理系统内的管理程序能够通过下列方式来检测一个或多个TPM的故障:解密加密的秘密数据的拷贝,并且比较解密值以试图建立在解密值中的额定数。如果在解密值中找到额定数,则数据处理系统可以继续操作而不受到整个数据处理系统的灾难性故障的影响,所述灾难性故障可能由典型的现有技术系统上的故障的TPM引起。
重要的是注意,尽管已经在全功能的数据处理系统的环境中描述了本发明,本领域内的那些普通技术人员可以明白,本发明的处理能够以计算机可读介质中的指令的形式和多种其他形式被分布,而不论实际用于执行所述分布的信号承载介质的特定类型如何。计算机可读介质的示例包括诸如EPROM、ROM、磁带、纸张、软盘、硬盘驱动器、RAM和CD-ROM的介质和诸如数字和模拟通信链路的传输型介质。
方法一般被设想为导致期望结果的自我一致的步骤序列。这些步骤要求物理数量的物理操纵。通常,虽然不是必然地,这些数量采取能够被存储、传送、组合、比较和操纵的电或磁信号的形式。方便的是,主要由于公共使用的原因而有时将这些信号称为比特、值、参数、项、元素、对象、符号、字符、项目、数量等。但是,应当注意,所有这些术语和类似的术语要与适当的物理数量相关联,并且仅仅是被应用到这些数量的方便标签。
本发明的说明已经被提供来为了说明而不是意欲穷尽或限于所公开的实施例。许多修改和改变对于本领域内的普通技术人员是显然的。所述实施例被选择来说明本发明的原理及其实际应用,并且使得本领域内的其他普通技术人员能够明白本发明,以便使用可能适合于其他所考虑的用途的各种修改来实现各个实施例。

Claims (12)

1.一种用于使用在数据处理系统内的可信平台模块的方法,其中在数据处理系统内的可信平台包括至少一个非易失性存储器以及最少三个可信平台模块,所述方法包括:
(a)使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据;
(b)请求在该最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值;
(c)在可信平台内的非易失性存储器内存储在步骤(b)产生的加密的秘密数据值;
(d)对于在数据处理系统内所述最少三个可信平台模块的每个其它可信平台模块进行步骤(b)和(c),以产生多个存储的加密的秘密数据值,其中每个存储的加密的秘密数据值与产生其的可信平台模块相关联。
2.按照权利要求1的方法,还包括:
(e)对于在数据处理系统内所述最少三个可信平台模块的每个可信平台模块都进行以下步骤:
(e1)从非易失性存储器取出加密的秘密数据值;
(e2)请求解密来自产生所取出的加密的秘密数据值的可信平台模块的取出的加密的秘密数据值,以便产生解密的秘密数据值;
(f)比较所述最少三个可信平台模块的每个可信平台模块解密的秘密数据值;
(g)根据步骤(f)的比较结果来识别零个或更多的有缺陷的可信平台模块。
3.按照权利要求2的方法,还包括:
(h)如果与所述最少三个可信平台模块的某个可信平台模块相关联的解密的秘密数据值和与在数据处理系统内所述最少三个可信平台模块的其它可信平台模块相关联的一个或多个解密的秘密数据值不匹配,则将所述某个可信平台模块指定为有缺陷。
4.按照权利要求2的方法,其中,步骤(e)-(g)发生在启动或重启数据处理系统时。
5.按照权利要求1的方法,其中,步骤(a)-(d)发生在可信平台的制造期间。
6.按照权利要求1的方法,其中,步骤(a)-(d)发生在当实体获得可信平台的所有权时。
7.一种用于使用在数据处理系统内的可信平台模块的装置,其中在数据处理系统内的可信平台包括至少一个非易失性存储器以及最少三个可信平台模块,所述装置包括:
用于使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据的装置;
用于请求所述最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置;
用于在可信平台内的非易失性存储器内存储产生的加密的秘密数据值的装置,所述产生的加密的秘密数据值是由所述用于请求在数据处理系统中的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置产生的;
用于对于在数据处理系统内所述最少三个可信平台模块的每个其他可信平台模块都产生加密的秘密数据值,以便非易失性存储器包括多个加密的秘密数据值的装置,其中每个加密的秘密数据值与产生其的可信平台模块相关联。
8.按照权利要求7的装置,还包括:
其中在数据处理系统内所述最少三个可信平台模块的每个可信平台模块包括:
用于从非易失性存储器取出加密的秘密数据值的装置;
用于请求解密来自产生取出的加密的秘密数据值的可信平台模块的取出的加密的秘密数据值,以便产生解密的秘密数据值的装置;
并且,所述用于使用在数据处理系统内的可信平台模块的装置还包括:
用于比较所述最少三个可信平台模块的每个可信平台模块解密的秘密数据值的装置;
用于根据所述用于比较所述最少三个可信平台模块的每个可信平台模块解密的秘密数据值的装置的比较结果来识别零个或更多的有缺陷的可信平台模块的装置。
9.按照权利要求8的装置,还包括:
用于如果与所述最少三个可信平台模块的某个可信平台模块相关联的解密的秘密数据值不匹配与在数据处理系统内的所述最少三个可信平台模块的其它可信平台模块相关联的一个或多个解密的秘密数据值,则将所述某个可信平台模块指定为有缺陷的装置。
10.按照权利要求8的装置,其中,在数据处理系统内所述最少三个可信平台模块的每个可信平台模块包括的所述用于从非易失性存储器取出加密的秘密数据值的装置和所述用于请求解密来自产生取出的加密的秘密数据值的可信平台模块的取出的加密的秘密数据值,以便产生解密的秘密数据值的装置、所述用于比较所述最少三个可信平台模块的每个可信平台模块解密的秘密数据值的装置以及所述用于根据所述用于比较所述最少三个可信平台模块的每个可信平台模块解密的秘密数据值的装置的比较结果来识别零个或更多的有缺陷的可信平台模块的装置在启动或重启数据处理系统时使用。
11.按照权利要求7的装置,其中,所述用于使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据的装置、所述用于请求所述最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置、所述用于在可信平台内的非易失性存储器内存储产生的加密的秘密数据值的装置、以及所述用于对于在数据处理系统内所述最少三个可信平台模块的每个其他可信平台模块都产生加密的秘密数据值,以便非易失性存储器包括多个加密的秘密数据值的装置在可信平台的制造期间使用。
12.按照权利要求7的装置,其中,所述用于使用在数据处理系统上执行的管理程序来读取在数据处理系统内的可信平台中存储的秘密数据的装置、所述用于请求所述最少三个可信平台模块的一个可信平台模块加密秘密数据的拷贝以产生加密的秘密数据值的装置、所述用于在可信平台内的非易失性存储器内存储产生的加密的秘密数据值的装置、以及所述用于对于在数据处理系统内所述最少三个可信平台模块的每个其他可信平台模块都产生加密的秘密数据值,以便非易失性存储器包括多个加密的秘密数据值的装置在当实体获得可信平台的所有权时使用。
CNB2005100595501A 2004-04-29 2005-03-29 自举具有冗余可信平台模块的可信服务器的方法和系统 Expired - Fee Related CN100390701C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/835,498 2004-04-29
US10/835,498 US7664965B2 (en) 2004-04-29 2004-04-29 Method and system for bootstrapping a trusted server having redundant trusted platform modules

Publications (2)

Publication Number Publication Date
CN1694032A CN1694032A (zh) 2005-11-09
CN100390701C true CN100390701C (zh) 2008-05-28

Family

ID=35310719

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100595501A Expired - Fee Related CN100390701C (zh) 2004-04-29 2005-03-29 自举具有冗余可信平台模块的可信服务器的方法和系统

Country Status (4)

Country Link
US (2) US7664965B2 (zh)
JP (1) JP4843246B2 (zh)
CN (1) CN100390701C (zh)
TW (1) TWI349853B (zh)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7657932B2 (en) * 2004-07-14 2010-02-02 Microsoft Corporation Extendible security token management architecture and secure message handling methods
US20060026418A1 (en) * 2004-07-29 2006-02-02 International Business Machines Corporation Method, apparatus, and product for providing a multi-tiered trust architecture
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US7099477B2 (en) * 2004-10-21 2006-08-29 International Business Machines Corporation Method and system for backup and restore of a context encryption key for a trusted device within a secured processing system
US7856249B2 (en) * 2004-11-08 2010-12-21 Sony Ericsson Mobile Communications Ab Combined mass storage and subscriber identity module providing information security and apparatus for use therewith
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8464348B2 (en) * 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US7733804B2 (en) * 2004-11-29 2010-06-08 Signacert, Inc. Method and apparatus to establish routes based on the trust scores of routers within an IP routing domain
US9450966B2 (en) * 2004-11-29 2016-09-20 Kip Sign P1 Lp Method and apparatus for lifecycle integrity verification of virtual machines
US7487358B2 (en) * 2004-11-29 2009-02-03 Signacert, Inc. Method to control access between network endpoints based on trust scores calculated from information system component analysis
US8327131B1 (en) 2004-11-29 2012-12-04 Harris Corporation Method and system to issue trust score certificates for networked devices using a trust scoring service
US7360253B2 (en) * 2004-12-23 2008-04-15 Microsoft Corporation System and method to lock TPM always ‘on’ using a monitor
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US20070079120A1 (en) * 2005-10-03 2007-04-05 Bade Steven A Dynamic creation and hierarchical organization of trusted platform modules
CN100476848C (zh) * 2006-01-18 2009-04-08 株式会社Pfu 图像读取设备、验证方法、评估系统、评估方法以及计算机程序产品
CN100517356C (zh) * 2006-01-18 2009-07-22 株式会社Pfu 图像读取设备和计算机程序产品
US8261072B2 (en) * 2006-03-24 2012-09-04 Atmel Corporation Method and system for secure external TPM password generation and use
US8019994B2 (en) * 2006-04-13 2011-09-13 Hewlett-Packard Development Company, L.P. Authentication of a request to alter at least one of a BIOS and a setting associated with the BIOS
US9122875B2 (en) * 2006-05-02 2015-09-01 International Business Machines Corporation Trusted platform module data harmonization during trusted server rendevous
EP2022240A2 (en) * 2006-05-09 2009-02-11 Interdigital Technology Corporation Secure time functionality for a wireless device
US8908867B2 (en) * 2006-07-31 2014-12-09 Lenovo (Singapore) Pte. Ltd. Automatic recovery of TPM keys
US8290164B2 (en) * 2006-07-31 2012-10-16 Lenovo (Singapore) Pte. Ltd. Automatic recovery of TPM keys
US7817799B2 (en) * 2006-09-07 2010-10-19 International Business Machines Corporation Maintaining encryption key integrity
US20080126779A1 (en) * 2006-09-19 2008-05-29 Ned Smith Methods and apparatus to perform secure boot
US8433924B2 (en) * 2006-12-18 2013-04-30 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for authentication of a core root of trust measurement chain
CN100464339C (zh) * 2007-04-25 2009-02-25 深圳兆日技术有限公司 一种多兼容性可信计算系统及方法
US20090133097A1 (en) * 2007-11-15 2009-05-21 Ned Smith Device, system, and method for provisioning trusted platform module policies to a virtual machine monitor
US8245053B2 (en) * 2009-03-10 2012-08-14 Dell Products, Inc. Methods and systems for binding a removable trusted platform module to an information handling system
ES2773042T3 (es) * 2009-05-04 2020-07-09 Nokia Solutions & Networks Oy Mecanismo para actualizar software
US8224780B2 (en) * 2010-06-15 2012-07-17 Microsoft Corporation Checkpoints for a file system
US20120297177A1 (en) * 2010-11-15 2012-11-22 Ghosh Anup K Hardware Assisted Operating System Switch
TW201241662A (en) * 2010-12-21 2012-10-16 Ibm Virtual machine validation
KR101572799B1 (ko) 2011-09-30 2015-12-01 인텔 코포레이션 프린터와 프린트 클라이언트 디바이스 사이의 보안 프린팅
US9811475B2 (en) * 2012-06-29 2017-11-07 Intel Corporation Methods and apparatus for a secure sleep state
US8938796B2 (en) 2012-09-20 2015-01-20 Paul Case, SR. Case secure computer architecture
US9344762B2 (en) * 2012-10-18 2016-05-17 Broadcom Corporation Integration of untrusted applications and frameworks with a secure operating system environment
US9870474B2 (en) * 2013-04-08 2018-01-16 Insyde Software Corp. Detection of secure variable alteration in a computing device equipped with unified extensible firmware interface (UEFI)-compliant firmware
US10013563B2 (en) * 2013-09-30 2018-07-03 Dell Products L.P. Systems and methods for binding a removable cryptoprocessor to an information handling system
US10303880B2 (en) * 2014-07-24 2019-05-28 Nuvoton Technology Corporation Security device having indirect access to external non-volatile memory
US20160242400A1 (en) * 2015-02-19 2016-08-25 Mitchell Wayne Grant Fishing tool
US9858412B2 (en) * 2015-06-25 2018-01-02 Intel Corporation Secure trusted execution environment data store
US10142107B2 (en) 2015-12-31 2018-11-27 Microsoft Technology Licensing, Llc Token binding using trust module protected keys
US10210333B2 (en) * 2016-06-30 2019-02-19 General Electric Company Secure industrial control platform
US10225075B1 (en) 2016-08-15 2019-03-05 Bluerisc, Inc. Transmitting content to promote privacy
US10735190B1 (en) 2017-11-16 2020-08-04 Amazon Technologies, Inc. Persistent TPM-based identifier and key pair
US11057240B2 (en) * 2018-12-20 2021-07-06 Rolls-Royce North American Technologies Inc. Method and process for securing an executable image
US11405222B2 (en) 2018-12-21 2022-08-02 Hewlett Packard Enterprise Development Lp Methods and systems for enrolling device identifiers (DEVIDs) on redundant hardware
TWI751962B (zh) * 2019-04-07 2022-01-01 新唐科技股份有限公司 安全裝置、安全方法、安全系統以及安全設備
US11388008B2 (en) 2019-07-16 2022-07-12 International Business Machines Corporation Trusted platform module swarm

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020083332A1 (en) * 2000-12-22 2002-06-27 Grawrock David W. Creation and distribution of a secret value between two devices
WO2002060121A1 (en) * 2000-12-27 2002-08-01 Intel Corporation A platform and method for securely transmitting authorization data
CN1440527A (zh) * 2000-06-30 2003-09-03 英特尔公司 保护引导块数据和精确地报告引导块内容

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404563A (en) * 1991-08-28 1995-04-04 International Business Machines Corporation Scheduling normally interchangeable facilities in multiprocessor computer systems
US5421006A (en) * 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US6185678B1 (en) * 1997-10-02 2001-02-06 Trustees Of The University Of Pennsylvania Secure and reliable bootstrap architecture
US6629192B1 (en) * 1999-12-30 2003-09-30 Intel Corporation Method and apparatus for use of a non-volatile storage management system for PC/AT compatible system firmware
US7117376B2 (en) * 2000-12-28 2006-10-03 Intel Corporation Platform and method of creating a secure boot that enforces proper user authentication and enforces hardware configurations
JP2004537095A (ja) * 2001-04-24 2004-12-09 ヒューレット・パッカード・カンパニー 情報セキュリティシステム
JP2002368735A (ja) * 2001-06-11 2002-12-20 Sharp Corp マスタ用ic装置、マスタ用ic装置のためのバックアップ用ic装置、マスタ用ic装置にダミー鍵を与えるダミー鍵格納装置、マスタ用ic装置とバックアップ用ic装置とのための補助装置、及び二つ以上の補助装置を用いた鍵バックアップシステム
GB2377043B (en) * 2001-06-27 2005-01-05 Hewlett Packard Co Network storage devices
US8533776B2 (en) * 2001-09-14 2013-09-10 Lenovo (Singapore) Pte Ltd. Method and system for binding a device to a planar
US7137004B2 (en) * 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
CA2469839A1 (en) * 2001-11-26 2003-06-05 Igt Pass-through live validation device and method
US7103771B2 (en) * 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US20030188162A1 (en) * 2002-03-29 2003-10-02 Brant Candelore Locking a hard drive to a host
US20030226040A1 (en) * 2002-06-03 2003-12-04 International Business Machines Corporation Controlling access to data stored on a storage device of a trusted computing platform system
US7216369B2 (en) * 2002-06-28 2007-05-08 Intel Corporation Trusted platform apparatus, system, and method
US7200758B2 (en) * 2002-10-09 2007-04-03 Intel Corporation Encapsulation of a TCPA trusted platform module functionality within a server management coprocessor subsystem
JP3748847B2 (ja) * 2002-10-30 2006-02-22 コナミ株式会社 格納装置、プログラム、ならびに、格納方法
US20050044408A1 (en) * 2003-08-18 2005-02-24 Bajikar Sundeep M. Low pin count docking architecture for a trusted platform
US7222062B2 (en) * 2003-12-23 2007-05-22 Intel Corporation Method and system to support a trusted set of operational environments using emulated trusted hardware

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1440527A (zh) * 2000-06-30 2003-09-03 英特尔公司 保护引导块数据和精确地报告引导块内容
US20020083332A1 (en) * 2000-12-22 2002-06-27 Grawrock David W. Creation and distribution of a secret value between two devices
WO2002060121A1 (en) * 2000-12-27 2002-08-01 Intel Corporation A platform and method for securely transmitting authorization data

Also Published As

Publication number Publication date
TWI349853B (en) 2011-10-01
US20050257073A1 (en) 2005-11-17
US20100070781A1 (en) 2010-03-18
CN1694032A (zh) 2005-11-09
JP2005317025A (ja) 2005-11-10
US7664965B2 (en) 2010-02-16
US8055912B2 (en) 2011-11-08
JP4843246B2 (ja) 2011-12-21
TW200604798A (en) 2006-02-01

Similar Documents

Publication Publication Date Title
CN100390701C (zh) 自举具有冗余可信平台模块的可信服务器的方法和系统
US11818274B1 (en) Systems and methods for trusted path secure communication
US10873641B2 (en) Systems and methods for recognizing a device
CN110799941B (zh) 防盗和防篡改的数据保护
CN107077574B (zh) 用于客户端设备的信任服务
JP4912879B2 (ja) プロセッサの保護された資源へのアクセスに対するセキュリティ保護方法
JP4668619B2 (ja) 装置鍵
EP1407339B1 (en) Firmware validation
US20060161790A1 (en) Systems and methods for controlling access to data on a computer with a secure boot process
US20040117318A1 (en) Portable token controlling trusted environment launch
WO2008012567A1 (en) Secure use of user secrets on a computing platform
KR102162044B1 (ko) 블록체인 기반의 사용자 인증 방법 및 그 시스템
US8683549B2 (en) Secure data storage and retrieval incorporating human participation
WO2002005475A2 (en) Generation and use of digital signatures
US8667278B2 (en) Information processing apparatus and data transmission method of information processing apparatus
CN111506915B (zh) 授权访问的控制方法、装置和系统
US9135449B2 (en) Apparatus and method for managing USIM data using mobile trusted module
US20240129736A1 (en) Mitigating against spurious deliveries in device onboarding
WO2003067850A1 (en) Verifying digital content integrity
JP5180264B2 (ja) 装置鍵
CN116388992A (zh) 针对分布式tee应用的远程认证方法及装置
JP2008187539A (ja) ディレクトリサーバ、パスワードを用いた認証方法およびプログラム
DADHICH HARDWARE ROOT OF TRUST BASED TPM: THE INHERENT OF 5IRECHAIN SECURITY

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080528