CN100594692C - 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法 - Google Patents

信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法 Download PDF

Info

Publication number
CN100594692C
CN100594692C CN200410091068A CN200410091068A CN100594692C CN 100594692 C CN100594692 C CN 100594692C CN 200410091068 A CN200410091068 A CN 200410091068A CN 200410091068 A CN200410091068 A CN 200410091068A CN 100594692 C CN100594692 C CN 100594692C
Authority
CN
China
Prior art keywords
server unit
integrity value
territory
digital signature
request
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
CN200410091068A
Other languages
English (en)
Other versions
CN1625105A (zh
Inventor
宗藤诚治
丸山宏
F·塞利格
N·纳加拉特纳姆
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 CN1625105A publication Critical patent/CN1625105A/zh
Application granted granted Critical
Publication of CN100594692C publication Critical patent/CN100594692C/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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

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

Abstract

本发明提供了一种信息处理装置、服务器装置、信息处理装置的方法、服务器装置的方法、和装置可执行程序。该信息处理装置使用对于软件配置唯一的、且表明联网服务器的初始代码完整性的签字的完整性值。服务器装置产生用于认证该服务器装置的密钥(S810、S820、S830)。密钥中的一个由第三方认证以产生数字签字(S840)。数字签字被附加到完整性值并且签字的完整性值被传送给信息处理装置,用于允许该信息处理装置通过网络获得安全服务(S850、S860)。

Description

信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法
技术领域
本发明涉及计算机网络安全,更具体地,本发明涉及一种在联网的环境中有用的信息处理装置、服务器装置、信息处理装置的方法、服务器装置的方法、和装置可执行程序,其具有安全执行远程网络环境中的程序的手段。
背景技术
近年来,强烈需求网络***的安全性以保护网络中的秘密信息、重要信息或计算机自身不受非法攻击。为了这样的目的,已提出多种尝试,诸如Palladium(帕拉斯神像)(商标)[1]。在Palladium体系结构中,平台制造商将在新制造的PC中安装所谓的Nub(核心),同时在被称为Nub的内核中生成公钥/私钥对并获得用于证明该PC具有真正的Palladium平台的、制造者的证书。这些过程必须在制造过程期间完成,因为该过程或制造者被认作是对于在Nub和平台之间作出可信任绑定的唯一可信赖的对象。
传统的Nub***在证明方面将有两个控制点,即,证明真正的Palladium(商标)平台以及证明运行于其上的应用。以上策略与所提供的某些传统环境,诸如运行在某些类型平台上的游戏标题非常相似。
然而,在服务器技术及联网的计算机***中,需要其他具有更多灵活性的安全策略,因为服务器可能接收许多不同类型的信息处理装置(此后简称为客户机),包括计算机、PDA和有时的蜂窝电话。客户机和服务器都可能被配置成必须通过基于Palladium的平台或其他基于可信任体系结构的平台交谈,并且服务器可能包括关于向不同种类客户机提供服务的更灵活的策略。因此,需要服务器以更灵活的和独立于应用的策略来解决安全需求。
OSGi[3]规定了一种被设计用于为独立的服务提供环境的框架,并提供了用于这类服务的提供、管理和生命周期管理的功能。非常重要地,OSGi提供服务束(service bundle)的保护以不受来自其他束的干扰。同样可获得用于用户管理和编程的访问控制的服务。
通常,诸如客户机和服务器的平台包括一单个Java虚拟机实例,其中执行一单个OSGi框架实例,同时执行其所有服务。每个服务束有它自己的类装入程序,且该类装入程序被配置成避免各束类的干扰。OSGi构建在标准Java 2安全机制之上。
发明内容
在分布式计算***中,应用的某些组件需要运行在远程平台,如服务器或有时客户机中。远程平台可以应用户要求提供受保护的执行域。如果这些组件处理敏感信息,就产生了一个问题,即执行的保密性和完整性是否被适当地保护以免受运行于同一个平台上其他的程序的干扰。在这方面,以下给出了两种典型的情形:
(i)远程信息处理装置(客户机)
诸如PDA和蜂窝电话的移动客户机变得越来越强大。一个趋势是大量服务提供商,诸如在线银行、电子票务和在线游戏,试图将部分他们的应用“推”向客户机,以提供更多的功能和较好的用户体验。这些应用需要彼此隔离,因为某些应用可能具有需要对潜在的竞争者保密的敏感信息。希望在这样的客户机上运行应用的服务提供商应当验证该客户机在向服务器发送敏感数据和程序之前是否具有免受其他应用干扰的充分保护。
(ii)远程的随要求的服务器装置
网格计算环境是实现“随要求”计算的一种途径。网格计算节点通常由网格服务提供商所维护,这些提供商可能具有不同的安全策略和不同水平的安全技能。网格计算用户应该能够在向节点提交作业之前验证运行在该节点上的***软件的版本和配置,以便该用户能够对该节点提供的保护级别放心。为了解决这些问题,需要解决下述两个问题。
(a)装置可信任性
这一问题是关于用户怎样能够保证装置是用户所认为是的那样的一个装置,并且该装置将按用户所期望的那样起运行。这一问题意味着用户需要验证装置的身份和完整性。如果平台不是用户所认为的那一个,则信任关系被打破。同样地,如果平台的完整性例如通过病毒、间谍软件(spyware)、特洛伊木马、或甚至是运行在操作***之下的仿真程序所破坏,则信任关系也被打破。
(b)域分离和访问控制
远程服务器可以运行多个用于为不同应用服务的程序。每个应用必须与其他应用相隔离并防止受到其他应用的干扰。在某些情况下,应用可能希望与其他应用共享某些资源,这样,它们必须能够控制哪些数据可与其他应用共享,并能控制哪些数据需要保护。这一需求例如还被发现在多应用智能卡中并且已由Java Card体系结构和Global PlatformArchitecture[2]所处理。
本发明已实现为部分依赖于一体系结构,该体系结构通过将新颖的技术与安全硬件、安全操作***内核和开放的安全协议组合在一起以提供端到端信任关系,来使得联网平台在根本上更值得信任。本发明中所使用的完整性值,即PCR值在从***开电复位开始的、平台的引导序列中生成,并由称为TPM的硬件安全模块安全地保护以免受外部入侵。于是,本发明的完整性值是相当安全的;这些相当安全的完整性值与包括公钥和私钥的两个级别的密钥相结合,从而提供了相当安全的网络环境。一个级别的密钥称为“认可密钥”(Endorsement Key),其是硬件制造商提供的,表示安全模块的合法性;另一级别的密钥是“证明完整性密钥”(Attestation Integrity Key),其由受信第三方基于平台证书认证。这两个密钥都在安全模块中存储并使用。完整性值由证明完整性密钥所签字并被安全传送给远程实体。
本发明的一个目的在于提供具有安全执行远程平台上的程序的手段的联网环境。例如,服务提供商需要在客户机装置上执行一个应用。或者,网格计算用户可能希望向远程网格计算节点提交作业。在这些情况中,允许维持远程信息处理机器的执行的机密性和完整性。
此外,本发明的另一个目的在于提供一种用于向网络中的计算机提供高度安全性的方法,并提供用于使计算机执行用于向网络中的计算机提供高度安全性的方法的计算机可执行程序。
可信任的引导
当平台被引导时,BIOS的写保护部分(称作CRTM)“测量”BIOS映像的完整性(SHA1散列),并将该值存储到PCR中。BIOS将OS引导装入程序加载到存储器中,同时它测量引导装入程序的完整性并将其存储到PCR中。然后,跳转到OS引导装入程序。OS引导装入程序加载OS内核和任何相关的必要文件,测量它们,并将测量的值存储到PCR。然后,O/S启动它的引导进程。一旦PCR被写入,就不可能将该值改变为任意值,于是这些值将提供关于装置的完整性的极好的指标。
这样就建立了下述信任链:CRTM可被信任,因为它是在工厂中安装的并且不能被替换。BIOS映像可被信任,如果指示可信任的CRTM在测量它时已经进行更新的PCR值如所期望的那样的话。OS引导装入程序可被信任,如果可信任的BIOS在测量它时已更新的PCR寄存器如所期望的那样的话。OS内核和相关文件是可信任的,如果可信任的OS引导装入程序在测量它时已更新的PCR寄存器如所期望的那样的话。
这些PCR值以后可由远程验证器询问(或“引用”)。这一引用消息由在TMP中安全地存储和执行的证明身份密钥(此后简称AIK)进行数字签字,因而远程验证器能够信任所报告的值。验证器将这些值与已知的可信任配置值进行匹配。如果这些值匹配,则验证器事实上正与具有已知安全策略的真正的可信任域模型(Trusted Domain Platform)平台进行交谈。
这允许关于平台完整性的非常灵活的信任关系。例如,假设在一移动设备的操作***中已发现并校正了安全性缺陷。希望向该设备发送应用和数据的远程验证器只需要更新可信任PCR值的数据库即可。或者,一更实际的方案是请求受信任第三方(确认实体)维护这一数据库。如果考虑处于危险中的价值后该缺陷不是的一个严重缺陷,则服务提供商甚至可能选择信任一个未补丁的平台。不同的服务提供商可能信任不同的平台策略;银行应用会需要极其限制性的访问控制策略,而网络游戏应用可能信任不那么严格的策略。服务通过询问PCR值将了解正在实行的确切策略。
该体系结构是抽象的,因为存在很多途径来实现本发明的所谓的新颖的可信任域模型,其依赖于可用的硬件和软件、所需安全级别和其他新颖的因素。
附图说明
图1表示本网络***的一个示例性实施例;
图2示出了根据本发明的客户机的典型硬件构造;
图3示出了被配置为提供可信任域服务的服务器的典型硬件构造;
图4示出了在该服务器中创建的可信任域的示意性结构;
图5示出了该客户机和该服务器之间直到为客户机创建新域的过程;
图6示出了用于为客户机验证和分配域的示例性数据结构;
图7示出了用于产生对硬件完整性唯一的完整性值的过程;
图8示出了用于实现对服务器的可信任域访问的、客户机TPM的功能;
图9示出了在接收到来自客户机的请求后新域的创建;
图10示出了用于实例化客户机和服务器之间的新域的过程;
图11示出了每个域的基本数据保护;
图12示出了根据本发明用于保护域秘密数据的过程;
图13示出了被划分为多个阶段的GRUB(GRand统一标准引导装入程序)引导序列的细节;
图14示出了基于LSM/SELinux体系结构的可信任平台模型结构的特定实现示例;
图15示出了基于WS-安全体系结构配置的本发明的示例性实施例。标号解释:
10-网络***,12-服务器,14-网络基础架构,16-客户机,18-数据库,20-远程验证器,22-通信设备,24-CPU,26-存储器,28-硬盘,30-PCR检验器,32-总线,34-根信任部分,38-寄存器阵列,40-***(TCB),42-管理域,44-管理员,46-应用域1,48-应用域2,50-用户域,52-数据库,54-辅助存储器,56-验证列表,60-声明部分,62、64和66-WS-安全体系结构中的实体
具体实施方式
1.概述
本发明使用由TCPA 1.1提供的体系结构,TCPA 1.1是公布于2001年1月的开放工业标准(现在TCPA承认可信计算组织(TCG)是TCPA的后继组织)。TCPA/TCG定义了一个嵌入式芯片(称为可信任平台模块或TPM),其保持密码密钥和寄存器以跟踪软件的完整性(称为平台配置寄存器,或PCR)。可信任域模型需要由TCPA/TCG提供的可信任引导和平台证明能力,和由SELinux[3][4][5][6][7][8][9]强制执行的强制性访问控制策略。在下面的说明中,相同的功能部分与相同的标号相关联。当TPM被短暂检查时,AIK(后文将详细地描述)的值证明平台完整性和PCR产生于TPM模块而不是去验证平台完整性。对AIK值的认证证明了AIK被包括在TPM模块内。因此,依赖于特定的应用,完整性的值在完整性的验证后可被用于发布带有AIK的证书。在本发明中,将描述具体的实现,但并不限于所描述的实施例,本发明可以任何特定的装置实现来实现,这些装置实现包括AIK、TPM和CRTM体系结构。
1-1.可信任域模型
图1描绘了网络***10的一个示例性实施例。该网络***包括连接到诸如局域网、广域网和/或因特网的适当网络基础架构14的服务器装置(此后简称为“服务器”)12。客户机装置(此后简称为“客户机”)16也连接到网络基础架构14,以便客户机可向服务器12请求服务并可从服务器12接收其响应。客户机可包括信息处理装置,诸如PDA或笔记本型个人计算机和蜂窝电话,它们通过无线或红外线通信连接到网络基础架构14。存储设备18被连接到服务器12,以便在可信任协议下随要求提供服务。在随后的描述中,假设服务器12根据本发明被配置成可信任平台体系机构,并且客户机可以是本领域中任何已知类型的体系机构;然而,尽管并不局限于此,客户机也可被配置成可信任平台体系机构。当服务器12收到来自客户机16的请求时,服务器12创建或销毁与该客户机对应的另一域,以提供存储于服务器12中的应用服务。
1-2.平台体系机构(客户机和服务器)
图2示出了根据本发明的客户机16的典型硬件结构。客户机16可通过有线的或无线连接而被连接到网络14,并一般包括通信设备22、中央处理单元(CPU)24、存储器(ROM或RAM)26和硬盘单元28。
硬盘单元28存储引导代码、操作***和应用程序文件等。一旦被请求,存储在诸如闪存的适当存储器中的所存储的软件模块与CRTM(BIOS)一起通过总线32被读入到诸如RAM或ROM的存储器中,以向用户提供正常的功能。客户机16包括签字的完整性检验器30,其检验收到的签字的PCR值和数字签字。签字的完整性检验器30的功能被总结如下:
所引用的PCR值代表在签字时候的平台的软件配置。如果通过比较先前存储在客户机16的别处的PCR值,存在任何关于PCR值的问题(诸如当签字进行时病毒可能处于活动状态),签字的完整性检验器30能够检查与签字相关的PCR值,从而确定在特定平台配置(BIOS和OS修正、配置文件、反病毒定义文件等)中是否存在已知缺陷。如果在已存储的PCR值和最近接收的PCR值之间未发现一致关系,则客户机16终止与服务器之间的事务。
图3示出了被配置为提供可信任域服务的服务器12的典型功能结构。服务器12包括根信任部分34。根信任部分34进一步包括TPM 36、寄存器阵列38,其在其启动或复位时存储服务器的PCR值,以及CRTM。TPM36和寄存器阵列38是用于产生如下面所述由AIK签字的完整性报告(PCR)的基本部分。一旦从客户机接收到对于服务的证明请求,根信任部分34将具有AIK签字的PCR发送给该客户机,以便提供安全的域访问。
2.可信任域功能
2-1.普通协议
图4示出了在服务器12中创建的可信任域的示意性结构。服务器12基于用于利用强制性访问控制策略提供安全域服务的TCPA/TCG***40。在服务器空间中创建的域是诸如管理域、应用域和用户域的域。管理员访问管理域42以便管理可信任域服务与根信任部分(未示出)。应用域1(46)、应用域2(48)和移动用户域50是在验证了被发送给客户机的证书之后被创建的,并且允许客户机享有可信任域环境。每个域都与存储在适当存储设备52中的秘密数据和/或策略相关联,以便保护用户的隐私策略。服务器由安全操作***(有时称作可信计算基,或TCB)所控制,该操作***强制执行全***范围内的强制性访问控制策略。每个域具有它自己的自主决定的访问控制策略。
尽管TCB需要是可信任的且它应该被彻底验证,但是,假设在TCB中从来不会发现缺陷是不现实的。本发明提供了在存在任何安全性问题时更新PCB的途径。这意味着必须存在一管理实体,如果必要其可修改TCB。这需要服务器或客户机(如果必要的话)具有更新TCB的新颖机制;然而,这一机制可能是十分敏感,因为对这一管理实体上的危害可能会打破所有的安全性假设。
为了实现上述的目的,本发明引入了称作管理域42的特殊域。管理域42是被允许以下操作的唯一的域:(1)根据来自客户机的要求创建/销毁应用域,和(2)更新TCB,包括更新强制性访问策略。因为管理域被允许修改强制性访问策略,所以防止管理域的恶意拥有者绕过强制性访问策略是必要的。为了访止这一攻击,在修改强制性AC策略之前,任何当前正运行的域实例都应该被终止或挂起,其所有的执行状态以加密后的形式被存入辅助存储器54。在修改之后,整个平台复位。在重新引导服务器之后,PCR包含反映TCB新配置的新值。每个域所有者再次执行域实例化协议以确信新***配置是可信任的。只有当它是可信任的,该域所有者才提供使用该域秘密的授权。
注意,管理域42在任何时候都不能访问另一域的域秘密,因为(1)当TCB未处于可信任状态(即没有域在运行或电源是关闭的)时,如下一部分所描述的,域秘密是由TCPA芯片所保护的,以及(2)当TCB在恢复之后且有域实例在运行时处于可信任状态时,域秘密是由强制性策略保护的。它不能访问另一域的域私有数据,除非被该域所有者明确允许。在这一方面,管理域不同于Unix超级用户。
根据本发明的服务器可以容纳多个应用。每个应用运行在平台上它的受保护的执行环境或域中。这里,假设域属于它的域所有者。域所有者是决定该域的安全策略的远程客户机。在网格计算的情况下,域所有者将是网格计算服务的用户。在其上有多个应用正在运行的移动平台的情况下,域所有者将是把应用和数据推给客户机和/或移动平台或客户机的远程服务提供商(例如电子票务服务)。
在根据本发明的管理功能方面,每个非***程序运行在一个域中。该域保护数据和执行不受在该服务器或平台上的其他域的干扰。如果客户机(域所有者)决定该域可以与其他域共享它的某些资源,则它可通过设置适当的访问控制策略来实现这一点。
在本发明中,实现了两个级别的访问控制策略,即:
(1)强制性访问控制策略,其是在服务器(平台)的所有域上在全***范围内实施的,以及
(2)自主决定的访问控制策略,其可由每个域所有者或客户机来控制。
强制性策略提供了对关键数据(例如密钥)的强有力的保护,即使运行在该域中的应用具有安全性缺陷。另一方面,自主决定的策略允许在需要时应用之间的灵活的数据交换。
根据这两个访问控制级别,域具有两类受保护的数据。域秘密是由TPM的硬件所保护的,并服从强制性策略。用于在硬盘驱动器中对域的数据进行加密的加密密钥是域秘密的一个例子。另一方面,域私有数据服从自主决定的策略,并能够由其他应用共享,如果该域的自主决定的策略允许这样做的话。在移动设备的情境下,用户的地址簿会是由多个应用共享的域私有数据。
依赖于客户机的类型,可存在不同类型的域。由应用服务提供商提供的普通应用运行在应用域中。管理域42是用于执行管理任务的一基本部分。所有其他域由域所有者所“拥有”。用户域由设备用户所拥有。用户所拥有的所有数据和程序处于用户域中以确保是私有数据。
管理域在收到来自客户机或域用户的请求时,执行域的创建或销毁。图5显示了客户机和服务器之间直到对客户机的新域创建成为止的过程。如图5所示,在步骤S500,客户机向服务器发送验证请求。在步骤S510,服务器接收请求,且服务器向客户机发送作为签字的完整性值的、证明(TCG证明)的结果。
在步骤S520,接收到签字的完整性值的客户机根据签字和/或PCR值确定该证明的结果是否是可接受的。如果证明的结果是否定的,则在步骤S530终止进一步的事务。如果证明的结果是肯定的,则该过程前进到步骤S540,且客户机向服务器发送域的创建请求(此后为了说明的简便称作c-请求)。当服务器接收到c-请求时,在步骤S550,服务器为相应的客户机创建新域,同时分配唯一的域标识,以便发送该c-请求的客户机控制该新域。
图6显示用于对客户机验证和分配域的示例性数据结构。显示在图6中的数据结构例如可以存储在显示于图4中的验证列表中;然而,尽管并不限制于此,该数据结构可以存储在客户机16的别处,以便管理服务器的域的分配。当服务器接收到来自客户机的请求,该服务器向客户机发送作为签字的AIK证书以及完整性值。AIK证书可以产生于由被认证的第三方提供的公共密钥,且被认证的证书值可以预先存储在服务器的别处,或者可替代地,也可能在接收到来自客户机的请求时,从积存有被认证的数字签字即证书的远程第三方获得被认证的证书值。
图6所示的表包括列在各行的服务器标识、证书值、PCR值和域标识。PCR值是用于本发明的认证的基本的完整性值,其是由诸如服务器的平台的配置所唯一确定的。由配置唯一确定的完整性值(PCR)可以作为单个值使用或可以作为一组完整性值使用。下文中将讨论创建PCR值的细节。客户机16可以根据图6中所示的分配表享有可信任域服务。
图7显示用于产生完整性值的过程(PCR)。在图7中,描述了TPM、CPU、和所存储代码的调用中的过程。当服务器被启动或复位时,在步骤S710,清除TPM中的PCR寄存器。服务器在步骤S720将CRTM代码(BIOS)从ROM或闪存调入到另一存储器区域,并执行CRTM代码,并在步骤S740,将CRTM代码的散列值存储在PCR寄存器的任一个中,并在步骤S730调用下一执行代码。在步骤S730中调用下一代码之前,在步骤S750将计算得到的PCR值进一步存储在另一个寄存器中。扩展PCR值,直到完成建立过程中所有必需的代码,如在步骤S760-S790中所描述的那样。
PCR值代表用于初始建立的代码的完整性,且写入的PCR值直到服务器在关闭或复位之后接通电源时,才能在服务器的过程中改变为其他值。因此,PCR值确保了服务器的完整性。当本发明应用于客户端机器时,可以在客户机中进行相同的证明过程,以便网络内的安全性可以变得更为增强。在这些实施例中,客户机的实现将包括具有的TPM模块或芯片以及对客户机的适当配置。
图8显示用于实现对客户机的可信任域访问的服务器和客户机(如果客户机如此实现的话)的TPM功能。TPM执行TPM-CreateEndosementKeyPair(创建认可密钥对)、TPM-makeid(生成标识)和TPM-Quote(引用)。在步骤S810,TPM-CreateEndosementKeyPair根据已知技术生成包括私钥和公钥的认可密钥。当认可密钥生成后,在步骤S820,将负责的制造商的数字签字附加到该认可密钥。认可密钥确保TPM的可靠性。此外,在步骤S830,在TPM-makeid操作中产生用于为完整性值PCR提供数字签字的AIK,且AIK也包括私钥和公钥。当AIK公钥由第三方认证后,在步骤S840,AIK被用作认证的证书且还被用作附加到PCR的数字签字。
代码TPM-Quote生成要发送给图5中的远程客户机(TCG证明)的签字的完整性值。在步骤S860,TPM-Quote从PCR中调用并以AIK证书附加数字签字,以生成签字的PCR。代码TPM-Quote接着将签字的PCR作为请求通过如图8中所示的网络基础架构发送给远程客户机,以便客户机可以执行PCR检查操作。
2-2.具有完整性测量值的签字
如上面所述,完整性测量的结果被存储在TPM内部的PCR中,且其由所述引用功能所报告。实际上,引用功能的这一使用不限于对服务器质询的响应。使用平台完整性度量的一个途径是将该度量包括在数字签字内。为了对平台实现上述的功能,本申请的发明人们为XML签字功能部分定义了一个签字算法,其包括将签字附加到PCR值的功能。
2-3.签字功能部分(通过执行签字算法实现)
本申请的发明人们已将新的签字算法定义为代表当前PCR值(quoteInfo)的结构和如下结构的签字值的串接。
SignatureValue=quoteInfo|SignatureOnQuoteInfo
签字值的第一部分(quoteInfo)是由如下TCPA-QUOTE-INFO所定义的一48字节数据对象:
typedef struct tdTCPA_QUOTE_INFO{
TCPA_VERSION version;
BYTE fixed;
TCPA_COMPOSITE_HASH digestValue;
TCPA_NONCE externalData,
}TCPA_QUOTE_INFO;
其中version是如在TCPA 1.1b的部分4.5中所定义的TCPA版本。具体地,它的前两个八位字节可以选择为0x01和0x01。
“fixed”始终是ASCII字符串“QUOT”。“digestValue”是使用所请求的PCR索引的当前值的复合散列算法的结果。“externalData”是<SignedInfo>的规范化的八位字节流的SHA-1散列。
签字值的第二部分是对于TCPA_QUOTE_INFO数据结构的实际RSASSA-PKCS1-v1.5签字值。这一部分至少是256字节长度,因为证明密钥的长度至少是2048位。
2-4.验证算法
在所说明的特定实施例中,具有TCPA PCR值的XML签字的验证应用需要将Base64解码的<SignatureValue>分离为两部分。第一部分由八位字节串的前48字节组成,第二部分是剩余部分。验证应用验证以下事情。
第一部分包含有效的TCPA_QUOTE_INFO结构。这意味着version字段的前两个八位字节必须是0x01和0x01,且fixed字段必须是ASCII“QUOT”。
第一部分的externalData字段是规范化的<SignedInfo>的SHA-1散列值。
第二部分可以是根据所给公钥的第一部分的RSASSA-PKCS1-v1.5签字。
然后,验证应用可以对照已知可信任值验证TCPA_QUOTE_INFO结构中的PCR值(digestValue字段),如果得知该值是可信任的,则服务器可断定它正与可信任平台进行通信。否则,服务器可以根据它的策略拒绝该请求。
2-5.在JCE中实现PCR使能的签字
本发明中,上面的签字过程已被实现为Java Crypto环境(JCE)提供者中的一个新的签字算法(称作“SHA1与RSATcpa”)。这样,不需要修改应用来使用具有PCR值的签字。
3.创建和销毁域实例
图9显示了在接收到来自客户机的请求时新域的创建。当服务器接收到一个请求,服务器的适当部分,诸如验证部分或通信部分分析该请求以获得AIK证书和签字的PCR。然后,验证部分查找验证列表或表,并确定所接收到的请求应该被允许访问该服务器。服务器返回一个包括查找结果的响应包。接着,客户机根据图5的步骤S530的验证,发送用于创建新域的c-请求,以为如图9所示的客户机创建专有的新域,诸如应用域1(46)。
当客户机在服务器上创建新域实例时,确保该平台时真正是可信任的是重要的。这一信任来自于信任层,其提供平台的身份和完整性的可验证性。如图5所示,客户机首先使用服务器的PCR值验证服务器的身份和完整性,其中PCR值可以在实例化它的域之前与如图5所示的TCG证明的结果一起被传送。除非客户机对软件堆栈的版本和强制性策略的内容都满意,否则,客户机将不会继续进行。
该域实例化协议也是一个相互的验证协议,从而平台可以验证域所有者的身份。任何可信任的平台在所有者的身份被验证之前都不能授权该域秘密的使用。一旦身份和平台的完整性满足了域所有者,且客户机的身份满足了平台,客户机就执行授权协议(特定于对象的授权协议或独立于对象的授权协议)中的一个,以便客户机可以使用域秘密,其通常包含一加密密钥(根密钥)。如果该域具有存储在辅助存储器中的永久数据,则平台TCB导入使用这一加密密钥加密的外部数据。
在完成域实例中的程序的执行之后,该域实例按照图5所描述的那样被销毁。这里,该***上的所有存储器内容和临时文件都被擦除。
图10显示用于在客户机和服务器之间实例化新域的过程。在图10中描述的过程在步骤S1010和S1020中完成客户机和服务器之间的验证协议。如果验证协议成功通过,接着在步骤S1030,客户机以TCGOSAP/OIAP协议向服务器发送域启动请求(c-请求)。服务器接收到c-请求,并在步骤S1040,指示为客户机创建新的启用的域。然后,在步骤S1050,创建域的实例。
在步骤S1060,实例化后的域和客户机传送关于所提交作业和相应结果的事务。当客户机获得他的或她所希望的结果时,在步骤S1070,客户机通过TCG OSAP/OIAP协议向服务器发送对于域退出的请求。在步骤S1080,服务器接收到对于域退出的请求,并指示终止相应的域。根据本发明,服务器还向客户机发送对域关闭的确认以完成协议。
当域实例不存在时,存储在永久存储器中的全部域私有数据由域密钥进行加密。因此,当域不存在时,没有人能访问该域的私有数据。当域实例存在时,***处于安全状态,因为该域所有者已在实例化时检查了TCB的完整性。从而,域所有者知道该域私有数据由TCB适当地保护。
4.利用TCG受保护存储层次结构保护域秘密
图11显示了每个域的基本数据保护。当平台被关闭或处于一个不可信任状态时,域秘密需要被安全地保护。这是通过使用TCG的受保护存储层次结构来实现的。如图10所示,TCG的受保护对象被组织为树。根节点,称作存储根密钥(SRK)是唯一永久存储在TPM中的密钥。因为期望TPM为不昂贵的设备且具有有限的内部存储器,所以所有其他密钥被保留在TPM的外部,这是通过当他们未被使用时,对它们的父密钥进行加密而实现的。当使用一密钥时,会需要所有它的祖先密钥,如果它们没有已经被加载到TPM中的话。在本发明中,每个域被分配了在SRK之下的一个子树。这一子树保持有该域的域秘密。这意味着除非有了该子树的根密钥从而将该子树加载到TPM中,该域秘密不能使用。
每个密钥与它的授权秘密相关,其是一160位的数据。当要使用一个密钥时,TPM需要拥有这一秘密的证明。在本发明的模型中,当域所有者登录到平台时,该域所有者证明他或她知道密钥的授权秘密。使用TCG的特定于对象的授权协议(OSAP),这甚至可以在无需向TCB揭示秘密的情况下实现。
图12显示根据本发明用于保护域秘密数据的过程。该保护过程首先从步骤S1210到S1240执行新域的创建。然后在完成验证过程之后前进到步骤S1250,以获得根密钥。在所接受的域中,将对于所创建的域来说必要的、加密形式的秘密数据在步骤S1260中由根密钥解密之后从一个适当的存储区域调用到该域中,并将其提供以继续进行所请求的作业。如果必要,在步骤S1270,解密的秘密数据在预定的过程中被再次加密,并被存储到由管理域所管理的适当存储区域中,且然后在步骤S1280-S1290,销毁该域的实例以完成客户机和服务器之间的事务。
5.域分离的执行
提供域分离和执行访问控制策略可以在实际实现中以许多不同的途径来实现。例如,UNIX访问控制和Java的JAAS是提供某种级别保护的基于软件的技术。诸如WebSphere的中间件在应用级别上提供其他分离。在许多情况下,这些域分离模型提供适当级别的应用保护。然而,如果应用需要更强的保护,就需要更强的域分离机制。众所周知,复杂的软件,诸如COTS(商业上现成的)操作***和中间件趋向于具有许多安全漏洞(bug),即使在由专家仔细检查之后。看起来有两种方案来补救这一问题。
一种是使用硬件支持,并结合以非常小的、彻底被检查过的可信任软件。例如,最新的高端处理器具有比普通内核模式要高的另一特权级别。运行在这一模式下可信任微核或***管理程序(hypervisor)可以提供非常安全的各域之间的隔离。这种***管理程序只具有最少的代码,并因此包含更少的残留缺陷。
另一个方案是或通过好的软件工程和认证(诸如普通标准认证)或通过在操作***内核(有时称作访问监控器(reference monitor))中增加其他保护来坚固现有的操作***。可信任域模型体系结构根据所需的安全级别允许任何上面的方案。
本发明的可信任域体系结构可以通过适当地组合现有技术来实现。在这一部分,显示基于具有TPM芯片和Linux安全模块的PC的设计。这一实现的整体结构显示在图13中。
6-1.在引导装入程序中的Linux内核测量
IBM的TCPA使能的***当前支持测量的引导,其意义在于,BIOS的不可修改的部分测量该BIOS的剩余部分,且BIOS还测量引导设备(通常为硬盘驱动器)的MBR(主引导记录)。然而,对于目前为我们所知的任何商业的操作***,没有实现进一步的测量。
为了测量操作***的完整性。OS引导装入程序应当根据TCPA PC特定实现规范来承担起责任,因为BIOS通常不直接加载操作***。而是,BIOS将引导装入程序(其驻留在MBR中)的一部分加载到存储器中,并将控制转移给所加载的代码。为了使引导装入程序正确测量操作***的完整性,引导装入程序需要满足下述需求:
(1)如果引导装入程序具有多个阶段,执行阶段必须能够测量下一阶段,并在将控制转移给它之前扩展PCR值。
(2)在将控制转移给O/S之前,引导装入程序应该能够测量O/S映像和所有的安全性关键配置文件。这意味着引导装入程序必须具有这些文件存储于其中的文件***的至少一部分实现。
对于用于PC的Unix类操作***,现在可获得几个在GPL许可下的引导装入程序,诸如LILO(LInux装入程序)、GRUB(GRand统一引导装入程序)和XOSL(扩展操作***装入程序)。在所说明实施例中,采用了GRUB,用于本发明的可信任引导装入程序的原型化,因为它被广泛地使用,且看起来对其进行修改以使修改后的引导装入程序满足上面的需求是可行的。
6-2.GRUB中的引导序列
图13显示被划分为多个阶段即阶段1、阶段1.5、阶段2的GRUB的引导序列的细节(图14(a))。这是由于在当前PC体系结构中磁盘空间的有限大小。阶段1代码被设计为适合446字节长的MBR空间。阶段1.5包含文件***的实现,因此它显著地更大(大约10KB)且它被放置在紧邻MBR之后通常未使用空间的扇区中。由于阶段1.5现在可以访问文件***,阶段2代码和GRUB配置文件可以被放置在文件***中的任何位置。
BIOS将阶段1(MBR)数据从硬盘驱动器加载到存储器中,并跳转到阶段1的开始点。阶段1加载阶段1.5的第一扇区,并跳转到该扇区。这一阶段1.5将阶段1.5的剩余扇区加载到存储器中,并随后跳转到该些扇区。现在,阶段1.5具有文件接口,并找到阶段2并将其加载到存储器中,然后跳转到阶段2的开始地址。此时,GRUB检查配置文件并将O/S选择菜单显示给用户。在用户选择一O/S之后,GRUB将所选择的O/S映像加载到存储器中并启动该O/S引导过程。
6-3.GRUB中的测量步骤
图13还显示了用于GRUB中的测量步骤的代码(图13(b))。这一系列测量必须反映这一引导序列:阶段1必须测量阶段1.5的第一扇区,且阶段1.5的第一块必须测量阶段1.5的剩余部分。然后,阶段1.5测量阶段2,阶段2最后测量操作***。因为阶段1和阶段2的第一扇区具有严格的大小限制,将完整性测量代码***到这些阶段是本发明的主要挑战。
从MBR加载的阶段1代码必须测量阶段1.5的第一扇区。这意味着必须计算所加载扇区的散列,并调用TPM的TPM_Extend函数。然而,原始GRUB代码已经耗尽了为MBR分配的几乎所有446字节。幸运地,可以调用刚好实现这一任务的BIOS服务。而且,本发明可是实现为丢弃对较老驱动器格式的支持(与LBA模式不同的C.H.S模式)。
基本地,可信任引导的每一步骤必须1)将下一阶段数据从硬盘驱动区加载到存储器,2)测量所加载的存储器映像并使用所测量的值扩展PCR值,以及3)跳转到下一阶段的入口点。
下一阶段,阶段1.5的第一扇区具有与阶段1相同的空间限制,并以几乎与阶段1相同的方式被修改。阶段1.5的剩余部分没有这种空间限制,且更容易添加测量下一阶段即阶段2的能力。阶段2负责测量几件事情。首先,阶段2测量GRUB的配置文件(grub.conf)。这一文件用于指定将被呈现在选择菜单中的可引导O/S映像。其次,要求阶段2测量被选择进行引导的O/S映像。第三,阶段2还负责测量任何其他的安全性关键文件(配置文件、库文件等)。为了实现这些测量,grub.conf已根据本发明已下面两种方式被修改:(1)诸如“kernel”(内核)的所有加载命令自动测量目标映像,及(2)添加“测量”命令,其测量任何在其参数中指定的文件。在这些步骤中,PCR的第八个寄存器值用于测量阶段1.5、阶段2和O/S文件。
6-4.测量OS内核和配置
在上面的实现中,这一系列测量过程覆盖了OS内核、诸如OS配置文件、安全策略文件的安全性关键文件,以及诸如Java虚拟机的一些可执行程序。然而,如果测量了大量文件,则可信任配置的可能PCR值的数量将是组合的,且因此可信任PCR值的服务器侧数据库将是难于管理的。而是,OS内核被实现为负责维持较不重要的安全性关键文件和资源的完整性。这里,应用了Linux安全模块和安全增强型Linux(SELinux)。如果使用了适当的SELinux策略文件,LSM和SELinux的组合将提供更好的保护以防止对***的任何部分诸如可执行程序、库及其他数据文件的不期望的修改。
注意,在引导时间完成的完整性测量不保证在引导之后的所测量代码的完整性。如果O/S确实允许某程序修改***的已测量过的部分,则被存储在TPM中的PCR值不再反映正确的完整性状态。因此,针对OS级的非法修改的强有力保护是非常重要的。
6-5.基于LSM/SELinux和Java的强制性访问控制
在这一实施例,即可信任域模型实现中,选择了安全增强型操作***作为保护层,即Linux安全模块(LSM)和SELinux的组合。这一组合提供比传统Unix访问控制在根本上更强的访问控制。
图14中,Linux安全模块(LSM)是实现通用访问控制的Linux内核补丁。LSM将一个挂钩放置在到内核的每一重要资源的访问路径处,并允许外插模块(称作策略模块)作出访问控制决定。这对于保护Linux操作***是一重要的步骤,因为传统的Unix安全模型被认为对于提供合理的安全级别是不能胜任的。标准Unix的一个最大限制是由用户运行的每个程序继承了准予用户的所有许可(如果该用户是根用户,这尤其成问题),且因此,保护操作***不受恶意软件的进攻是十分困难的。
由NSA开发的安全增强型Linux(SELinux)是用于LSM的策略模块。它实施强制性访问控制(MAC)策略,以便可以实施全***范围的安全策略,而不管用户的疏忽操作、应用程序的安全性缺陷或恶意软件。
对这些技术进行组合,可以实施全***范围的安全策略。一域实现为一用户帐号,其被很好保护以防止受到运行在另一个用户帐号下的应用及甚至是根用户的干扰。域实例是一远程外壳。当远程所有者登录到该平台上(即创建域实例)时,可***验证模块(PAM)与TCPA芯片进行交互并对加密密钥进行解锁。
此外,如果该平台具有可移动存储器,则加密文件***是必须的。所有由一服务拥有的私有文件将被安全存储在TPM中的服务密钥加密,以便这些文件只能从该所有者的域中访问。除了具有操作***级分离之外,这一实现还具有Java级的应用分离。这可通过Java的本机访问控制机制(JAAS)或通过在OSGi中定义的允许和用户管理机制来完成。
7.其他协议-WS-安全
这一实现使用在OASIS WS-安全标准之上定义的协议。
WS-安全是关于Web服务的安全协议构建块的一组规范。它通过定义“声明”(claim)的一般概念,来为SOAP消息提供基本的安全功能,诸如完整性、机密性、验证、和授权,所述声明被表示为要在各通信方和受信任第三方之间传递的“安全令牌”(称为安全令牌服务)。
图15显示基于WS-安全体系结构而配置的本发明的示例性实施例。注意,平台完整性测量实现于包括在实体62、64和66中的每个中的、可被表示为安全令牌的声明部分60。诸如客户机的请求者62是根据本发明实现的。Web服务站点64也是根据本发明实现的。当请求者62向Web服务站点64请求Web服务时,包括签字的证书的令牌从例如Web服务站点64被发送给安全令牌服务站点66。
安全令牌服务站点66向Web服务站点64发出访问允许数据,且Web服务站点64确定来自请求者62的访问请求在可信任域服务中是否被允许。平台证书,诸如平台认证和软件认证(包含在这一令牌中的值是否是可信任的)也可以表示为由安全令牌服务发出的安全令牌。这提供了本发明的信任基础架构的可靠框架。
现有文献的公开:
非专利文献1:
http://www.microsoft.com/presspass/features/2002/jul02/0724palladiumwp.asp
非专利文献2:
全球平台规范,http://www.globalplatform.org/
非专利文献3:
开放服务网关计划(OSGi),http://www.osgi.org/
非专利文献4:
Chris Wright,Crispin Cowan,James Morris,Stephen Smalley,GregKroah-Hartman,“Linux Security Modules:General Security Support forthe Linux Kernel(Linux安全模块:对Linux内核的一般安全支持),”USENIX Security Symposium,2002。
非专利文献5:
Stephen Smalley,Chris Vance,和Wayne Salamon,“ImplementingSELinux as a Linux Security Module(将SELinux实现为Linux安全模块),”http://www.nsa.gov/selinux/module-abs.html,2001年12月。
非专利文献6:
IBM 4758PCI Cryprographic Coprocessor。
http://www.ibm.com/security/cryprocards/
非专利文献7:
可信计算平台联盟,TCPA主要规范v1.1b,2002年2月。
http://www.trustedcomputing.org/docs/main%20v1_1b.pdf
非专利文献8:
可信任计算平台联盟,TCPA特定实现规范v1.00,2001年9月。
http://www.trustedcomputing.org/docs/TCPA_PCSpecificSpecification_v100.pdf
非专利文献9:
David Safford,“Clarifying Misinformation on TCPA(澄清TCPA上的错误信息)”,2002年10月,
http://www.research.ibm.com/gsal/tcpa_rebuttal.pdf
....
已使用显示在附图中的具体实施例对本发明进行了详细说明,然而,在此本发明将概括如下:
(1)一种用于通过网络获得服务的信息处理装置,所述信息处理装置包括:
通信部分,用于接受数字签字以及根据硬件配置的至少一个完整性值;以及
***分,用于识别至少所述完整性值;
其中所述信息处理装置根据通过所述完整性值作出的所述确定,通过所述网络发送用于为所述信息处理装置创建专有域的请求。
(2)根据(1)的信息处理装置,其中所述***分相对于所存储的数字签字或所存储的所述完整性值检查所述数字签字或完整性值。
(3)根据(1)的信息处理装置,所述信息处理装置是用于通过所述网络获得服务的客户机。
(4)一种连接到网络并用于通过所述网络随请求提供所处理数据的服务器装置,所述服务器装置包括:
基于装置的信任根而被信任的信任使能部分,用于在所述服务器装置启动或复位时产生附加了数字签字的了、签字的完整性值,所述完整性值表示所述服务器的配置的完整性;以及
通信部分,用于通过所述网络接收请求并向所述网络发送所述服务器装置的签字的完整性值及所处理数据;
其中所述服务器装置在接收到响应于所述签字的完整性值的另一请求时创建新域并允许对所述服务器装置的资源的访问。
(5)根据(4)的服务器装置,其中所述服务器装置在其启动和/或复位时,创建管理域并提交对根密钥的访问,用于使能对资源的访问。
(6)根据(4)的服务器装置,其中所述服务器装置的所述资源按加密形式存储,且所述服务器装置允许通过使用所述根密钥进行解密来访问所述资源。
(7)根据(4)的服务器装置,其中被认证的证书被传送到并被存储在所述服务器装置的存储部分,以用于产生签字,或者,所述服务器装置通过远程实体询问所述被认证的证书,以用于产生所述签字。
(8)一种用于使信息处理装置通过网络执行通信的方法,所述方法使所述信息处理装置执行以下步骤:
接受根据硬件配置的签字的完整性值;
确定至少一个所述签字的完整性值是什么;以及
根据通过所述完整性值进行的所述确定,通过所述网络发送用于为所述信息处理装置创建专有域的请求。
(9)根据(8)的方法,其中所述服务器装置通过所述网络将所述签字的完整性值和所处理数据发送给发出所述请求的信息处理装置。
(10)一种用于使服务器装置通过网络执行通信的方法,所述方法使所述服务器执行以下步骤:
从存储器调用初始代码,以建立该信息处理装置来逐步地执行所述初始代码;
产生关于所述服务器装置的软件配置的保持唯一性的完整性值,并将所述完整性值存储在寄存器阵列中;
通过认证所述服务器装置的完整性,产生要被附加到所述完整性值上的数字签字;
向所述完整性值提供所述产生的数字签字;以及
发送所述完整性值以及所述数字签字,以便证明所述服务器装置的认证。
(11)根据(10)的方法,其中所述产生步骤包括以下步骤:
产生用于相对于所述软件配置的硬件完整性的、和用于对认证的证明的私钥;
响应于对所述密钥的认证,确定是否向所述完整性值提供该数字签字;以及
如果用于所述证明的密钥被认证,则向完整性值提供所述数字签字。
(12)根据(11)的方法,其中该方法还包括以下步骤:
使用用于所述证明的所述密钥创建所述数字签字。
(13)一种用于使连接到网络的服务器装置通过所述网络随要求提供所处理数据的方法,所述方法使所述服务器装置执行以下步骤:
创建管理域,其根据依赖于装置完整性的完整性值而被信任;
通过参考被认证的证书,验证所述完整性值以提供数字签字;
从所述网络接收用于访问服务器装置以获得所述服务器装置的服务的请求;
传送至少一个与数字签字相关的完整性值;以及
接受与所述请求相应的另一个用于创建专有域的请求。
(14)根据(13)的方法,其中所述管理域执行这样的步骤,即允许对根密钥的访问以便控制对所述服务器的资源的访问。
(15)根据(14)的方法,其中所述服务器装置的资源按加密形式存储,且所述方法还包括这样的步骤,即使用所述根密钥对所述资源进行解密,以允许所述信息处理装置对所述资源的访问。
(16)一种装置可执行程序,用于使所述信息处理装置执行根据(8)或(9)的方法。
(17)一种装置可执行程序,用于使所述服务器装置执行根据(10)至(15)中任一项的方法。

Claims (15)

1.一种用于通过网络获得服务的信息处理装置,所述信息处理装置包括:
通信部分,用于接受根据提供服务的服务器装置的硬件配置的至少一个完整性值以及对于所述完整性值的数字签字;以及
***分,用于检验至少一个所述完整性值和数字签字;
其中所述信息处理装置响应于由所述***分对所述完整性值和数字签字作出的所述检验通过,通过所述网络向所述服务器装置发送用于为所述信息处理装置创建专有域的请求,以便所述信息处理装置可响应于专有域根据所述请求被创建,通过所创建的专有域获得服务。
2.根据权利要求1的信息处理装置,其中所述***分相对于存储的数字签字或所存储的完整性值检查所述接受的数字签字或完整性值。
3.根据权利要求1的信息处理装置,所述信息处理装置是用于通过所述网络获得服务的客户机。
4.一种连接到网络并用于通过所述网络随请求提供处理数据的服务器装置,所述服务器装置包括:
基于装置的信任根而被信任的信任使能部分,用于在所述服务器装置启动或复位时产生附加了数字签字的完整性值,所述完整性值表示所述服务器的配置的完整性;以及
通信部分,用于通过所述网络接收请求并通过所述网络向发送请求的装置发送所述服务器装置的所述附加了数字签字的完整性值及所处理数据;
其中所述服务器装置在接收到响应于对所述附加了数字签字的完整性值的验证通过的另一请求时创建新域并允许发送请求的装置对所述服务器装置的资源的访问。
5.根据权利要求4的服务器装置,其中所述服务器装置还在其启动和/或复位时,创建管理域并提交对根密钥的访问,用于使能对资源的访问。
6.根据权利要求5的服务器装置,其中所述服务器装置的所述资源按加密形式存储,且所述服务器装置允许通过使用所述根密钥进行解密来访问所述资源。
7.根据权利要求4的服务器装置,其中被认证的证书被传送到并被存储在所述服务器装置的存储部分,以用于产生签字,或者,所述服务器装置通过远程实体询问所述被认证的证书,以用于产生所述签字。
8.一种用于使信息处理装置通过网络执行通信的方法,所述方法使所述信息处理装置执行以下步骤:
接受根据与所述信息处理装置通信的服务器装置的硬件配置的签字的完整性值;
检验至少一个所述签字的完整性值;以及
响应于对所述完整性值进行的所述检验通过,通过所述网络向所述服务器装置发送用于为所述信息处理装置创建专有域的请求,从而所述信息处理装置可响应于专有域根据所述请求被创建,通过所创建的专有域与所述服务器装置通信。
9.根据权利要求8的方法,其中所述服务器装置通过所述网络将所述签字的完整性值和所处理数据发送给发出所述请求的信息处理装置。
10.一种用于使服务器装置通过网络执行通信的方法,所述方法使所述服务器装置执行以下步骤:
从存储器调用初始代码,以使得该服务器装置逐步地执行所述初始代码;
在调用和逐步地执行所述初始代码的过程中,产生关于所述服务器装置的软件配置的保持唯一性的完整性值,并将所述完整性值存储在寄存器阵列中;
产生要被附加到所述完整性值上的数字签字;
向所述完整性值提供所述产生的数字签字;
向发送请求的装置发送所述完整性值以及所述数字签字,以便根据所述完整性值以及所述数字签字证明所述服务器装置的认证;以及
在接收到响应于对所述服务器装置的认证的证明的另一请求时创建新域并允许发送请求的装置对所述服务器装置的资源的访问。
11.根据权利要求10的方法,其中所述产生步骤包括以下步骤:
产生用于相对于所述软件配置的硬件完整性的、和用于对认证的证明的私钥;
响应于对所述私钥的认证,确定是否向所述完整性值提供该数字签字;以及
如果用于所述证明的私钥被认证,则向完整性值提供所述数字签字。
12.根据权利要求11的方法,其中该方法还包括以下步骤:
使用用于所述证明的所述密钥创建所述数字签字。
13.一种用于使连接到网络的服务器装置通过所述网络随要求提供处理数据的方法,所述方法使所述服务器装置执行以下步骤:
创建管理域,该管理域根据依赖于装置完整性的完整性值而被信任;
通过参考被认证的证书,验证所述完整性值以提供数字签字;
从所述网络接收用于访问服务器装置以获得所述服务器装置的服务的请求;
向发送请求的装置传送至少一个与数字签字相关的完整性值;以及
接受与所述请求相应的、响应于对所述至少一个与数字签字相关的完整性值的验证通过的另一个用于创建专有域的请求,从而所述服务器装置可通过所创建的专有域向发送请求的装置提供所处理数据。
14.根据权利要求13的方法,其中所述管理域执行这样的步骤,即允许对根密钥的访问以便控制对所述服务器的资源的访问。
15.根据权利要求14的方法,其中所述服务器装置的资源按加密形式存储,且所述方法还包括这样的步骤,即使用所述根密钥对所述资源进行解密,以允许所述信息处理装置对所述资源的访问。
CN200410091068A 2003-12-02 2004-11-16 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法 Expired - Fee Related CN100594692C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP403371/2003 2003-12-02
JP2003403371A JP4064914B2 (ja) 2003-12-02 2003-12-02 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム

Publications (2)

Publication Number Publication Date
CN1625105A CN1625105A (zh) 2005-06-08
CN100594692C true CN100594692C (zh) 2010-03-17

Family

ID=34616778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200410091068A Expired - Fee Related CN100594692C (zh) 2003-12-02 2004-11-16 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法

Country Status (3)

Country Link
US (2) US8171295B2 (zh)
JP (1) JP4064914B2 (zh)
CN (1) CN100594692C (zh)

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495361B2 (en) * 2003-12-31 2013-07-23 International Business Machines Corporation Securely creating an endorsement certificate in an insecure environment
US7644278B2 (en) * 2003-12-31 2010-01-05 International Business Machines Corporation Method for securely creating an endorsement certificate in an insecure environment
US20060294383A1 (en) * 2005-06-28 2006-12-28 Paula Austel Secure data communications in web services
US7565685B2 (en) * 2005-11-12 2009-07-21 Intel Corporation Operating system independent data management
US7571377B2 (en) * 2005-12-22 2009-08-04 International Business Machines Corporation Method and apparatus for transmitting data in an integrated circuit
CN100440892C (zh) * 2005-12-26 2008-12-03 北京航空航天大学 网格安全通信***及网格安全通信方法
JP4722730B2 (ja) * 2006-03-10 2011-07-13 富士通株式会社 セキュリティ管理プログラム、セキュリティ管理装置、およびセキュリティ管理方法
KR20090006876A (ko) * 2006-04-21 2009-01-15 인터디지탈 테크날러지 코포레이션 신뢰된 계산 무결성 측정 보고를 수행하는 장치 및 방법
US20070288989A1 (en) * 2006-06-09 2007-12-13 Nokia Corporation Method, electronic device, apparatus, system and computer program product for updating an electronic device security policy
US10049077B2 (en) * 2006-06-30 2018-08-14 Intel Corporation Handheld device for elderly people
US20100063996A1 (en) * 2006-07-03 2010-03-11 Kouichi Kanemura Information processing device, information recording device, information processing system, program update method, program, and integrated circuit
US20080046752A1 (en) 2006-08-09 2008-02-21 Stefan Berger Method, system, and program product for remotely attesting to a state of a computer system
US20080104008A1 (en) * 2006-10-31 2008-05-01 Brantley David L Common data broker method, system, and program product
US9280659B2 (en) * 2006-12-29 2016-03-08 Intel Corporation Methods and apparatus for remeasuring a virtual machine monitor
US7966039B2 (en) * 2007-02-02 2011-06-21 Microsoft Corporation Bidirectional dynamic offloading of tasks between a host and a mobile device
TWI328747B (en) * 2007-03-16 2010-08-11 Ind Tech Res Inst System and method for sharing e-service resource of digital home
US20080235513A1 (en) * 2007-03-19 2008-09-25 Microsoft Corporation Three Party Authentication
US8151262B2 (en) * 2007-03-30 2012-04-03 Lenovo (Singapore) Pte. Ltd. System and method for reporting the trusted state of a virtual machine
KR100914430B1 (ko) * 2007-05-02 2009-08-28 인하대학교 산학협력단 Xml 전자서명을 이용한 서비스 이동 관리 시스템 및관리 방법
US8064605B2 (en) * 2007-09-27 2011-11-22 Intel Corporation Methods and apparatus for providing upgradeable key bindings for trusted platform modules
US8752130B2 (en) * 2007-12-21 2014-06-10 Samsung Electronics Co., Ltd. Trusted multi-stakeholder environment
GB2455796A (en) * 2007-12-21 2009-06-24 Symbian Software Ltd Mechanism for controlling access to a key store
WO2009134270A1 (en) * 2008-05-02 2009-11-05 Hewlett-Packard Development Company, L.P. Binding data to a computing platform through use of a cryptographic module
US8074258B2 (en) * 2008-06-18 2011-12-06 Microsoft Corporation Obtaining digital identities or tokens through independent endpoint resolution
US8300829B2 (en) * 2008-06-23 2012-10-30 Nokia Corporation Verification key handling
US8112633B1 (en) * 2008-06-30 2012-02-07 Symantec Corporation Server side verification of digital signatures in streaming environments
US8572692B2 (en) 2008-06-30 2013-10-29 Intel Corporation Method and system for a platform-based trust verifying service for multi-party verification
JP2010152704A (ja) * 2008-12-25 2010-07-08 Hitachi Ltd 計算機システムの運用管理システム及び管理方法
US9805196B2 (en) 2009-02-27 2017-10-31 Microsoft Technology Licensing, Llc Trusted entity based anti-cheating mechanism
CN101527718B (zh) 2009-04-16 2011-02-16 西安西电捷通无线网络通信股份有限公司 一种建立三元对等鉴别可信网络连接架构的方法
EP2422503B1 (en) * 2009-04-20 2015-03-04 InterDigital Patent Holdings, Inc. System of multiple domains and domain ownership
CN101540676B (zh) * 2009-04-28 2012-05-23 西安西电捷通无线网络通信股份有限公司 一种适合三元对等鉴别可信网络连接架构的平台鉴别方法
US8776053B2 (en) * 2009-09-25 2014-07-08 Oracle International Corporation System and method to reconfigure a virtual machine image suitable for cloud deployment
JP5571796B2 (ja) * 2009-10-15 2014-08-13 インターデイジタル パテント ホールディングス インコーポレイテッド 加入方式のサービスにアクセスするための登録および資格証明ロールアウト
US8776245B2 (en) * 2009-12-23 2014-07-08 Intel Corporation Executing trusted applications with reduced trusted computing base
KR101580353B1 (ko) * 2010-03-02 2015-12-23 인터디지탈 패튼 홀딩스, 인크 신뢰성 있는 하드웨어 가입 모듈 간의 크리덴셜 및/또는 도메인의 마이그레이션
US8700895B1 (en) 2010-06-30 2014-04-15 Google Inc. System and method for operating a computing device in a secure mode
US9118666B2 (en) * 2010-06-30 2015-08-25 Google Inc. Computing device integrity verification
CN101888383B (zh) * 2010-06-30 2013-07-31 北京交通大学 一种可扩展的可信ssh的实现方法
US9208318B2 (en) * 2010-08-20 2015-12-08 Fujitsu Limited Method and system for device integrity authentication
US20130166869A1 (en) * 2010-09-10 2013-06-27 Hewlett-Packard Development Company, L.P. Unlock a storage device
CN101976317B (zh) * 2010-11-05 2012-12-05 北京世纪互联宽带数据中心有限公司 一种私有云计算应用中虚拟机镜像安全方法
KR101652570B1 (ko) 2010-12-06 2016-09-09 인터디지탈 패튼 홀딩스, 인크 도메인­트러스트 평가 및 도메인 정책 관리 기능들을 가지는 스마트 카드
US8880667B2 (en) * 2011-02-09 2014-11-04 Microsoft Corporation Self regulation of the subject of attestation
US9064111B2 (en) * 2011-08-03 2015-06-23 Samsung Electronics Co., Ltd. Sandboxing technology for webruntime system
US8694786B2 (en) * 2011-10-04 2014-04-08 International Business Machines Corporation Virtual machine images encryption using trusted computing group sealing
US8893225B2 (en) 2011-10-14 2014-11-18 Samsung Electronics Co., Ltd. Method and apparatus for secure web widget runtime system
JP6004408B2 (ja) 2012-03-30 2016-10-05 シンクロノス テクノロジーズ インコーポレイテッド 安全移動体フレームワーク
US9177129B2 (en) * 2012-06-27 2015-11-03 Intel Corporation Devices, systems, and methods for monitoring and asserting trust level using persistent trust log
EP2918090A4 (en) * 2012-11-08 2016-06-29 Nokia Technologies Oy PARTIAL VIRTUALIZATION OF PCR BANKS IN A MOBILE TPM
EP2997692A1 (en) * 2013-05-13 2016-03-23 Telefonaktiebolaget LM Ericsson (publ) Procedure for platform enforced secure storage in infrastructure clouds
CN104158791A (zh) * 2013-05-14 2014-11-19 北大方正集团有限公司 一种分布式环境下的安全通信认证方法及***
US9167002B2 (en) * 2013-08-15 2015-10-20 Microsoft Technology Licensing, Llc Global platform health management
US9542568B2 (en) * 2013-09-25 2017-01-10 Max Planck Gesellschaft Zur Foerderung Der Wissenschaften E.V. Systems and methods for enforcing third party oversight of data anonymization
US9396338B2 (en) * 2013-10-15 2016-07-19 Intuit Inc. Method and system for providing a secure secrets proxy
US9384362B2 (en) 2013-10-14 2016-07-05 Intuit Inc. Method and system for distributing secrets
US9444818B2 (en) 2013-11-01 2016-09-13 Intuit Inc. Method and system for automatically managing secure communications in multiple communications jurisdiction zones
US9467477B2 (en) 2013-11-06 2016-10-11 Intuit Inc. Method and system for automatically managing secrets in multiple data security jurisdiction zones
US9894069B2 (en) 2013-11-01 2018-02-13 Intuit Inc. Method and system for automatically managing secret application and maintenance
US9282122B2 (en) * 2014-04-30 2016-03-08 Intuit Inc. Method and apparatus for multi-tenancy secrets management
US9792427B2 (en) * 2014-02-07 2017-10-17 Microsoft Technology Licensing, Llc Trusted execution within a distributed computing system
TWI633458B (zh) * 2014-02-25 2018-08-21 美商凱為公司 用於對受保護的硬體資源的軟體啟用接入的半導體和電腦
CN106464493B (zh) 2014-03-16 2019-12-10 黑文技术私人有限公司 包含一次性通行码的持久性认证***
CN104951316B (zh) 2014-03-25 2018-09-21 华为技术有限公司 一种内核可信启动方法和装置
EP2950229B1 (en) * 2014-05-28 2018-09-12 Nxp B.V. Method for facilitating transactions, computer program product and mobile device
US9692599B1 (en) * 2014-09-16 2017-06-27 Google Inc. Security module endorsement
US9998449B2 (en) * 2014-09-26 2018-06-12 Qualcomm Incorporated On-demand serving network authentication
US9735968B2 (en) * 2014-10-20 2017-08-15 Microsoft Technology Licensing, Llc Trust service for a client device
JP6415353B2 (ja) 2015-03-02 2018-10-31 キヤノン株式会社 情報処理方装置、情報処理装置の制御方法、およびコンピュータプログラム
US11132674B2 (en) 2015-03-04 2021-09-28 Sizhe Tan Micro trusted network
CN105389507B (zh) * 2015-11-13 2018-12-25 小米科技有限责任公司 监控***分区文件的方法及装置
US10846409B2 (en) * 2015-11-19 2020-11-24 Nagravision S.A. Method to verify the execution integrity of an application in a target device
CN105897427A (zh) * 2016-04-01 2016-08-24 浪潮电子信息产业股份有限公司 保护设备安全的方法、装置及***
US10528739B2 (en) * 2016-04-20 2020-01-07 Sophos Limited Boot security
US20220201045A1 (en) * 2016-06-10 2022-06-23 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10148444B2 (en) * 2016-08-04 2018-12-04 Dell Products L.P. Systems and methods for storing administrator secrets in management controller-owned cryptoprocessor
KR101886176B1 (ko) * 2016-10-25 2018-08-08 시큐리티플랫폼 주식회사 소유자만 기록 가능한 부트영역을 포함하는 저장장치
US10482034B2 (en) * 2016-11-29 2019-11-19 Microsoft Technology Licensing, Llc Remote attestation model for secure memory applications
US10936711B2 (en) 2017-04-18 2021-03-02 Intuit Inc. Systems and mechanism to control the lifetime of an access token dynamically based on access token use
JP6959155B2 (ja) * 2017-05-15 2021-11-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 検証方法、検証装置およびプログラム
US20190034617A1 (en) * 2017-07-31 2019-01-31 Intel Corporation Flexible container attestation
US10635829B1 (en) 2017-11-28 2020-04-28 Intuit Inc. Method and system for granting permissions to parties within an organization
EP3495979A1 (de) * 2017-12-08 2019-06-12 Siemens Aktiengesellschaft Verfahren und bestätigungsvorrichtung zur integritätsbestätigung eines systems
CN110062016B (zh) 2018-01-18 2023-05-09 阿里巴巴集团控股有限公司 用于可信服务管理的方法及装置
US10713060B2 (en) * 2018-08-02 2020-07-14 Micron Technology, Inc. Configurable option ROM
WO2020157368A1 (en) * 2019-01-30 2020-08-06 Nokia Solutions And Networks Oy Distributed or cloud computing system information

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061790A (en) * 1996-11-20 2000-05-09 Starfish Software, Inc. Network computer system with remote user data encipher methodology
US6144959A (en) * 1997-08-18 2000-11-07 Novell, Inc. System and method for managing user accounts in a communication network

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7290288B2 (en) * 1997-06-11 2007-10-30 Prism Technologies, L.L.C. Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network
US6985953B1 (en) * 1998-11-30 2006-01-10 George Mason University System and apparatus for storage and transfer of secure data on web
KR100430147B1 (ko) 2000-03-15 2004-05-03 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 액세스 제어
JP4556308B2 (ja) * 2000-08-31 2010-10-06 ソニー株式会社 コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにプログラム提供媒体
CA2371124A1 (en) * 2001-02-09 2002-08-09 Itaru Kawakami Information processing method/apparatus and program
GB2376765B (en) * 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments with verifiable environment identities
US8005965B2 (en) * 2001-06-30 2011-08-23 International Business Machines Corporation Method and system for secure server-based session management using single-use HTTP cookies
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
GB2382419B (en) * 2001-11-22 2005-12-14 Hewlett Packard Co Apparatus and method for creating a trusted environment
US7103771B2 (en) 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US9544297B2 (en) * 2002-03-08 2017-01-10 Algorithmic Research Ltd. Method for secured data processing
US7130921B2 (en) * 2002-03-15 2006-10-31 International Business Machines Corporation Centrally enhanced peer-to-peer resource sharing method and apparatus
US7058807B2 (en) 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7216369B2 (en) * 2002-06-28 2007-05-08 Intel Corporation Trusted platform apparatus, system, and method
US20040030887A1 (en) * 2002-08-07 2004-02-12 Harrisville-Wolff Carol L. System and method for providing secure communications between clients and service providers
US8261063B2 (en) * 2003-02-03 2012-09-04 Hewlett-Packard Development Company, L.P. Method and apparatus for managing a hierarchy of nodes
US7624272B2 (en) * 2003-03-31 2009-11-24 Intel Corporation Platform information for digital signatures

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061790A (en) * 1996-11-20 2000-05-09 Starfish Software, Inc. Network computer system with remote user data encipher methodology
US6144959A (en) * 1997-08-18 2000-11-07 Novell, Inc. System and method for managing user accounts in a communication network

Also Published As

Publication number Publication date
US20120185694A1 (en) 2012-07-19
JP4064914B2 (ja) 2008-03-19
JP2005167589A (ja) 2005-06-23
US20050120219A1 (en) 2005-06-02
US8560857B2 (en) 2013-10-15
CN1625105A (zh) 2005-06-08
US8171295B2 (en) 2012-05-01

Similar Documents

Publication Publication Date Title
CN100594692C (zh) 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法
US8856544B2 (en) System and method for providing secure virtual machines
US7305553B2 (en) Manifest-based trusted agent management in a trusted operating system environment
CN101300583B (zh) 用于可信赖移动电话的简单可伸缩和可配置安全启动
US7577840B2 (en) Transferring application secrets in a trusted operating system environment
US7711960B2 (en) Mechanisms to control access to cryptographic keys and to attest to the approved configurations of computer platforms
US8789037B2 (en) Compatible trust in a computing device
US20090319793A1 (en) Portable device for use in establishing trust
Löhr et al. Patterns for secure boot and secure storage in computer systems
US20030097578A1 (en) Operating system upgrades in a trusted operating system environment
US20090138699A1 (en) Software module management device and program
KR20110050488A (ko) 티켓 인증 보안 설치 및 부트
KR20080008361A (ko) 소프트웨어 기반 보안 코프로세서를 제공하는 방법, 장치및 처리 시스템
CN111199058B (zh) 用于确保数据的完整性和机密性的***和方法
CN113301107B (zh) 节点计算平台及其实现方法、计算机可读存储介质
EP3792802B1 (en) A processor system with a communication interface
EP3792801B1 (en) A processor system
Wu et al. The mobile agent security enhanced by trusted computing technology
Maruyama et al. Trusted platform on demand (TPod)
JP2006040146A (ja) ファイル実行システムとその方法
CN117708828A (zh) 用于多操作***的软件源管控方法及装置、电子设备

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: 20100317

CF01 Termination of patent right due to non-payment of annual fee