CN100456200C - 多令牌密封和解封 - Google Patents
多令牌密封和解封 Download PDFInfo
- Publication number
- CN100456200C CN100456200C CNB038041472A CN03804147A CN100456200C CN 100456200 C CN100456200 C CN 100456200C CN B038041472 A CNB038041472 A CN B038041472A CN 03804147 A CN03804147 A CN 03804147A CN 100456200 C CN100456200 C CN 100456200C
- Authority
- CN
- China
- Prior art keywords
- key
- token
- sealed
- seal
- tolerance
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Control And Other Processes For Unpacking Of Materials (AREA)
Abstract
在此描述了用于对两个或更多令牌密封对象的方法、装置和计算机可读介质。还描述了解封已对两个或更多令牌密封的对象的方法、装置和计算机可读介质。
Description
技术领域
本发明涉及多令牌密封和解封。
背景技术
现有的基于软件的安全服务都隐含地假设计算设备或平台都是可信任的。假定它们在安全的环境中执行,在此前提下它们提供应用级的安全性。这种假设对于保证现有的商务模型所需的安全级别而言是成立的,但是当前的安全功能已在提供最高级别的保护,这些级别的保护无需额外的硬件支持就能实现。
到目前为止,可信平台计算联盟(TPCA)在2001年12月发布的TCPA主规范,版本1.1中描述了一种可信平台模块(TPM)或物理令牌,其提供了更大的可信度,并且实现了现有服务的增强和新服务。TPM支持对软件过程、平台引导完整性、文件完整性和软件许可的记帐(audit)和写日志(log)。TPM提供了一个受保护的存储库,其中的信息项可被保护起来以免泄漏或被不当使用,并可提供用于验证的身份。这些特征鼓励着第三方授予平台对某些信息的访问权,而在不具有上述特征的情况下,平台将被拒绝访问这些信息。
TPM包含单独的计算引擎,由于该引擎的过程无法更改,所以这些过程可被信任。这些过程以及该子***到平台的绑定,它们结合起来能够可靠地量度并报告平台内部主计算环境的状态。TPM为平台的引导提供了信任的根基。向平台提供安全的操作***是所有者的责任,一旦OS被加载,它就可以在不可信的软件被加载之前向TPM报告不可信软件的加载情况。TPM因此可以报告量度数据,这些数据指示出平台中主软件环境的当前状态。本地或远程实体可以仅仅查询TPM就可靠地获得这些量度结果,并判断平台的行为是否使得它对于预期目的而言是可信任的。因为TPM可以证实操作***的当前状态,所以软件加载中的可信度增大了。
TPM对密封数据可以起到入口的作用,并且只有在访问权和软件环境的特定组合下才会允许这种数据的公开或使用。当然,TPM的受保护存储库可用于任何敏感数据,而不仅仅是身份信息。TPM可将这些服务输出到***级的软件安全服务(例如IPSec),所述***级的软件安全服务自身也被通常的应用程序作为服务而调用。这种布置带来了对平台身份的更大信任,并且如果需要可同时允许平台匿名。因此,可以更加信任地来使用调用身份验证的任何应用程序,并可授予这些应用程序更大的权限。
发明内容
本发明公开了一种方法,包括:请求第一令牌解封多令牌密封对象的第一密封部分,以获得一个密钥;请求第二令牌解封所述多令牌密封对象的第二密封部分,以获得一个加密对象,以及使用所述密钥和所述加密对象以从所述多令牌密封对象获得一个对象。
本发明还公开了一种方法,包括:请求第一令牌解封多令牌密封对象的第一密封部分;响应于所述第一令牌解封所述第一密封部分而接收第一密钥;请求第二令牌解封所述多令牌密封对象的第二密封部分;响应于所述第二令牌解封所述第二密封部分而接收第二密钥;使用所述第一密钥和所述第二密钥来生成解密密钥;以及通过使用所述解密密钥来解密所述多令牌密封对象的加密对象,获得所述多令牌密封对象的解密对象。
本发明还公开了一种方法,包括:请求多个令牌解封多令牌密封对象的多个密封部分;响应于解封所述多令牌密封对象的多个密封部分而接收密钥,以及使用所述密钥和加密对象来获得对象。
本发明还公开了一种方法,包括:请求计算设备的第一令牌相对于第一环境标准来密封多令牌密封对象的第一部分,以及请求计算设备的第二令牌相对于第二环境标准来密封所述多令牌密封对象的第二部分。
本发明还公开了一种设备,包括:虚拟令牌,其包含一个或多个配置寄存器以及一个或多个处理单元,所述配置寄存器记录了设备环境的度量,所述处理单元用于生成包含对第一环境标准密封的第一密钥的第一密封密钥;物理令牌,其包含一个或多个配置寄存器以及一个或多个处理单元,所述配置寄存器记录了所述设备环境的度量,所述处理单元用于生成包含对第二环境标准密封的第二密钥的第二密封密钥;以及密封组件,用于基于所述第一密钥和所述第二密钥生成第三密钥,使用所述第三密钥来加密一个对象以获得加密对象,请求所述虚拟令牌密封所述第一密钥以获得所述第一密封密钥,并请求所述物理令牌密封所述第二密钥以获得所述第二密封密钥。
本发明还公开了一种设备,包括:芯片集;耦合到该芯片集的处理器;耦合到所述芯片集的存储器,该存储器包含多条指令,所述指令被所述处理器执行时使得该处理器实现一个虚拟令牌,该虚拟令牌记录了设备环境的度量,接收用于生成解密密钥的第一密钥,并响应于接收到密封操作请求而密封所述第一密钥以符合所述虚拟令牌记录的一个或多个度量;以及耦合到所述芯片集的物理令牌,该物理令牌用于记录所述设备环境的度量,接收用于生成所述解密密钥的第二密钥,并响应于接收到密封操作请求而密封所述第二密钥以符合所述物理令牌记录的一个或多个度量。
附图说明
在附图中以示例的方式而不是以限制的方式图示了这里所描述的发明。为简单和清楚起见,附图中所示的元件未必是按照比例绘制的。例如,为了清楚起见,某些元件的尺寸可以相对于其它元件被夸大。此外,在合适的地方,在附图中用相同的标号来表示对应的或类似的元件。
图1示出了包括物理令牌和虚拟令牌的计算设备的例子。
图2示出了图1中的物理令牌和虚拟令牌的例子。
图3示出了可由图1中的计算设备来实现的可信运行环境的例子。
图4示出了图1的计算设备的密封(seal)操作的例子。
图5示出了图1的计算设备的解封(unseal)操作的例子。
图6示出了图1的计算设备的多令牌密封操作的例子。
图7示出了图1的计算设备的多令牌解封操作的例子。
图8示出了图1的计算设备的多令牌密封操作的另一个例子。
图9示出了图1的计算设备的多令牌解封操作的另一个例子。
具体实施方式
在下面的详细描述中,描述了很多具体的细节以充分地理解本发明。然而,没有这些具体细节也可以实现本发明。此外,没有具体地描述公知的方法、过程、组件和电路,以免模糊本发明。而且,给出了示例性的尺寸/模型/值/范围,但是本发明不限于这些具体的示例。
在说明书中引用“一个实施例”、“实施例”、“示例性实施例”等都表示所描述的实施例可以包括特定的特点、结构或特征,但不是每个实施例都要包括这些特定的特点、结构或特征。而且,这些短语指的不一定是同一个实施例。此外,当关于某个实施例来描述特定的特点、结构或特征时,我们认为无论是否做出明确的描述,都可以将这样的特点、结构或特征应用到其它实施例中,这种做法属于本领域技术人员的知识范围之内。
图1中所示的示例性计算设备100可以包括一个或多个处理器110。处理器110可支持一种或多种工作模式,例如实模式、保护模式、虚拟8086模式和虚拟机器模式(VMX模式)。此外,在每一种支持的工作模式中,处理器110可支持一个或多个特权级别或环。总之,处理器110的工作模式和特权级别决定了可用于执行的指令以及执行这些指令的效果。更具体地说,只有当处理器110处于适当的模式和/或特权级别时,才允许处理器110执行某些具有特权的指令。
芯片集120可包括一个或多个集成电路封装或芯片,它们将处理器110耦合到存储器130、网络接口140、物理令牌150、虚拟令牌160和计算设备100的其它I/O设备170,例如鼠标、键盘、盘驱动器、视频控制器等。芯片集120可包括存储器控制器(未示出),用于将数据写入存储器130或从中读出数据。此外,芯片集120和/或处理器110可将存储器130的某些区域定义为受保护存储器132,这些区域只有当处于特定的工作模式(例如保护模式)和特权级别(例如,0P)时才可由处理器110进行访问。
网络接口140通常为计算设备100提供通信机制,以经由网络180与一个或多个远程代理190(例如认证机构、零售商、金融机构等)通信。例如,网络接口140可包括10Mb或100Mb的以太网控制器、有线调制解调器、数字用户线(DSL)调制解调器、普通老式电话业务(POTS)调制解调器等,从而将计算设备100耦合到一个或多个远程代理190。
总的来说,计算设备100的物理令牌150包括用于各种度量、密钥和机密的受保护存储库,并可响应于来自处理器110和芯片集120的请求执行各种完整性功能。具体地说,物理令牌150可以可信方式来存储各种度量,可以可信方式来引用度量,可将机密对于特定的环境(当前的或以后的)施行密封,并可将机密对于以前施行密封的环境进行解封。
虚拟令牌160以和计算设备100的物理令牌150相类似的方式来操作。然而,由于虚拟令牌160可利用存储器130和受保护存储器132的存储能力来存储度量、密钥和机密,所以虚拟令牌160可包括更多的用于度量、密钥和机密的受保护存储库。此外,由于虚拟令牌160可以利用处理器110的处理能力来执行完整性操作,所以虚拟令牌160相比物理令牌150而言,可以更快地执行这些完整性操作。
如图2所示,物理令牌150可包括一个或多个处理单元210,它们可为计算设备100执行完整性功能。物理令牌150还可以根据非对称密码算法例如RSA密码算法来生成固定私钥220和对应的固定公钥222。在一个示例性的实施例中,物理令牌150生成固定私有/公开密钥对220、222,使得固定私钥220和对应的公钥222是独一无二的,并且一旦激活就不可改变。
也可以将物理令牌150附接到计算设备100上或合并到计算设备100当中,以向远程代理190提供某种保证,确保物理令牌150仅与一个计算设备100相关联。例如,物理令牌150可合并到芯片集120的多个芯片之一中,和/或表面安装到计算设备100的主板上。由于固定物理令牌150的独一无二性,并且它还合并到计算设备100中,所以远程代理190可以基于物理令牌150的固定公钥222而有一定把握地识别计算设备100。
除了固定私钥/公钥对220、222之外,物理令牌150还可以根据非对称密码算法来生成一个或多个辅助私有/公开密钥对230、232。在一个示例性的实施例中,尽管固定私有/公开密钥对220、222是不可改变的,但是计算设备100可以根据需要生成辅助私有/公开密钥对230、232。由此,计算设备100一般仅向一小组可信实体例如认证机构提供固定公钥222。此外,计算设备100一般使用它的辅助私有/公开密钥对230、232来进行其它大部分加密、解密和数字签名操作,以减少固定公钥222的暴露。
物理令牌150还包括一个或多个平台配置寄存器(PCR寄存器)240、242、244,它们可被用来以可信方式记录并报告度量。处理单元210可支持一种PCR引文操作,该操作返回所标识的PCR寄存器240、242、244的引文或内容。处理单元210也可以支持PCR扩展操作,所述操作在所标识的PCR寄存器240、242、244中记录接收到的度量。具体地说,PCR扩展操作可以(i)将接收到的度量联接或附加到存储在所标识的PCR寄存器240、242、244中所存储的一个度量上,以获得一个附加后的度量,(ii)散列(hash)所述附加后的度量,以获得一个更新后的度量,其代表了接收到的度量和先前由所标识的PCR寄存器240、242、244记录的度量,以及(iii)将更新后的度量存储在PCR寄存器240、242、244中。
物理令牌150的处理单元210还可支持密封和解封操作。响应于密封操作,物理令牌150生成一个密封的对象,该对象包括一个对物理令牌150密封的对象以及一个指定的设备环境。反过来说,只有当一个对象是用物理令牌150的密钥加密的并且当前的设备环境满足为该密封对象指定的环境标准时,物理令牌150才可响应于解封操作返回该密封对象的对象。
用在这里,术语“对象”应被理解为一个广义的术语,包括一个或多个位的任何组合而不论其结构、格式或表示。而且,动词“散列”以及相关的形式在此使用时指的是对一个操作数或消息执行运算,以产生一个值或一个“散列值”。理想情况下,散列操作生成一个散列值,要想从该散列值中找到具有这个散列值的消息,在计算上是不可行的,并且也不可能从该散列值中确定出与具有这个散列值的消息有关的任何有用信息。此外,散列操作在理想情况下生成散列值,使得要确定两个产生同一散列值的消息在计算上是不可能实现的。散列操作在理想情况下具有以上性质,在实际当中,单向函数例如Message Digest 5函数(MD5)和SecureHashing Algorithm(SHA-1)生成一些散列值,要想从中推导出所述消息是很困难的,在计算上是很密集的和/或在现实中是不可行的。
可用多种不同的方式来实现物理令牌150。例如,遵循可信平台模块(TPM)的规范来实现物理令牌150,所述规范在可信计算平台联盟(TCPA)主规范,版本1.1,2001年7月31日中做了详细描述。
还是参考图2,虚拟令牌160可提供虚拟结构或软件结构,这些结构提供与物理令牌150类似的功能。具体地说,虚拟令牌160可以包括一个或多个虚拟处理单元250,这些单元可为计算设备100执行完整性功能。虚拟令牌160还可以根据非对称密码算法生成固定私钥260和对应的固定公钥262,使得固定私钥260和对应的公钥262是独一无二的,并且一旦激活就不可改变。
除了固定私钥/公钥对260、262之外,虚拟令牌160也可以根据非对称密码算法生成一个或多个辅助私有/公钥对270、272。虚拟令牌160还可以包括一个或多个虚拟PCR寄存器280,这些寄存器可被用于以可信的方式来记录并报告各种度量。
图3中示出了示例性的可信运行环境300。计算设备100可以利用处理器110的工作模式和特权级别来建立可信的运行环境300。如图所示,可信运行环境300可以包括可信虚拟机内核或监控器310、一个或多个标准虚拟机(标准VM)320和一个或多个可信虚拟机(可信VM)330。运行环境300的监控器310运行在最高特权的处理器环(例如0P)上的受保护模式中,以管理虚拟机320、330之间的安全屏障和特权屏障。此外,监控器310可包括实现虚拟令牌160的功能的代码。或者,可用单独的VT软件模块来实现虚拟令牌160。
标准VM 320可包括操作***322和一个或多个应用程序324,所述操作***322在VMX模式的最高特权处理器环(例如0D)上运行,所述应用程序324在VMX模式的较低特权处理器环(例如3D)上运行。因为监控器310运行所在的处理器环比操作***322运行所在的处理器环具有更高的特权,所以操作***322不具有对计算设备100的随意控制,相反,却受到监控器310的控制和约束。具体地说,监控器310可以防止操作***322及其应用程序324访问受保护的存储器132和物理令牌150。
监控器310可以对可信内核332执行一种或多种量度,例如内核代码的散列,以获得一个或多个度量,可使得物理令牌150能用内核332的度量来扩展所标识的PCR寄存器244,并可将所述度量记录在存储于受保护存储器132中的关联PCR日志中。而且,监控器310可在受保护存储器132中建立可信VM 330,并在建立起来的可信VM 330中启动可信内核332。
类似地,可信内核332可对小应用程序(applet)或应用程序334进行一种或多种量度,例如对小应用程序的代码进行散列,以获得一个或多个度量。可信内核332接着通过监控器310使得物理令牌150用小应用程序334的度量来扩展所标识的PCR寄存器244。可信内核332还可以将所述度量记录在存储于受保护存储器132中的关联PCR日志中。而且,可信内核332可在受保护存储器132中已建立的可信VM 330中启动可信小应用程序334。
如果启动了图3中的可信运行环境300,则计算设备100可响应于此,也将对监控器310和虚拟令牌160的度量记录在监控器PCR寄存器240中,还将对硬件的度量记录在可信支持(TS)PCR寄存器242中。可响应于各种事件而启动可信运行环境300,例如***启动、应用程序请求、操作***请求等。
在一个示例性的实施例中,计算设备100如下所述地获得并记录对监控器310和虚拟令牌160的度量。处理器110散列监控器软件模块,以获得监控器度量。然后,处理器110使得物理令牌150利用所述监控器度量来扩展监控器PCR寄存器240,并将所述监控器度量记录在存储于受保护存储器132中的监控器PCR日志当中。此外,如果虚拟令牌(VT)功能被实现为单独的软件模块,则处理器110散列该VT软件模块,以获得VT度量。然后,处理器110使得物理令牌150利用所述VT度量来进一步扩展监控器PCR寄存器240,并将所述VT度量记录在监控器PCR日志中。监控器PCR寄存器240现在包括了一个既代表监控器310又代表虚拟令牌160的值。
计算设备100还可以将对硬件的度量记录在TS PCR寄存器242中,以提供对可信运行环境的硬件支持的记录。在一个示例性的实施例中,处理器110可以获得硬件标识符,例如处理器110、芯片集120和物理令牌150的处理器系列、处理器版本、处理器微代码版本、芯片集版本和物理令牌版本。然后,处理器110可以利用所获得的硬件标识符来扩展TSPCR寄存器242,并将所述硬件标识符记录在存储于受保护的存储器132中的TS PCR日志中。或者,处理器110可使用多于一个的PCR寄存器来记录硬件标识符。例如,处理器110可将每个所获得的硬件标识符存储到各个PCR寄存器240、242、244中。
现在参考图4,其中示出了示例性的密封操作。密封操作一般会使得一个密封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)生成对某个令牌(例如物理令牌150或虚拟令牌160)来说是密封的密封对象SObj。
在方框410,密封组件请求一个令牌(例如物理令牌150或虚拟令牌160)执行密封操作。在方框414,该密封组件指定用于该密封操作的公开令牌密钥SK(例如公钥222、232、262、272)。密封组件向令牌提供要密封的对象Obj(方框418),并指定对象Obj要对之密封的环境标准(方框422)。例如,在方框422,密封组件可以通过标识出该令牌对当前设备环境的一个或多个方面具有度量的一个或多个PCR寄存器(例如PCR寄存器240、242、244、280),从而指定所述环境标准。在向令牌提供上述信息之后,在方框424,密封组件请求令牌完成密封操作。
响应于完成密封操作的请求,在方框426,所述令牌生成一个密封记录SealRec,该记录指定了对象Obj对之密封的环境标准(例如PCR寄存器240、242、244、280的引文)。在一个示例性实施例中,令牌生成的密封记录SealRec中包含了该令牌固有的唯一标识符。在方框430,令牌对对象Obj和密封记录SealRec进行散列,以获得可验证对象Obj和密封记录SealRec的完整性的摘要值DV。在方框434,令牌使用非对称加密算法和公开令牌密钥SK对对象Obj、密封记录SealRec和摘要值DV进行加密,生成密封对象SObj。在方框438,令牌向密封组件提供密封对象SObj,其包括用公开令牌密钥SK加密的对象Obj、密封记录SealRec以及摘要值DV。
现在参考图5,其中示出了示例性的解封操作。解封操作一般会使得一个解封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)获取已对某个令牌(例如物理令牌150或虚拟令牌160)密封的对象Obj。
在方框510,解封组件请求一个令牌(例如物理令牌150或虚拟令牌160)执行解封操作。在方框514,解封组件指定用于解封操作的私有令牌密钥UK(例如私钥220、230、260、270)。在方框518,解封组件向令牌提供要解封的密封对象SObj。在方框522,解封组件请求令牌完成解封操作。
在方框526,令牌使用解封组件在方框514中指定的私有令牌密钥UK,解封所述密封组件SObj。如果所述私有令牌密钥UK对应于用于对密封对象SObj进行密封的公开令牌密钥SK,则在方框526,令牌就获得了对象Obj、密封记录SealRec以及摘要值DV。否则,令牌遇到错误条件和/或获得对象Obj、密封记录SealRec和摘要值DV的混乱表示。
在方框530,令牌散列所获得的对象Obj和密封记录SealRec以获得所计算的摘要值CDV。在方框534,令牌确定所获得的对象Obj和密封记录SealRec是否已被扰乱。例如,响应于所计算的摘要值CDV和所述摘要值DV之间具有预定关系(例如不相等),令牌可确定对象Obj、密封记录SealRec和/或摘要值DV已被扰乱。
响应于确定对象Obj、密封记录SealRec和/或摘要值DV已被扰乱,在方框538,令牌异常终止(abort)解封操作,并从该令牌中删除对象Obj、密封记录SealRec、摘要值DV以及所计算的摘要值CDV。否则,在方框542,令牌确定当前的设备环境是否满足为密封对象SObj指定的环境标准。例如,如果令牌由密封记录SealRec指定的PCR寄存器(例如PCR寄存器240、242、244、280)的引文和密封记录SealRec的引文具有预定关系(例如相等),并且如果从密封记录SealRec获得的唯一标识符和令牌固有的唯一标识符具有预定关系(例如相等),则令牌可确定当前的设备环境满足所述环境标准。
响应于确定当前设备环境不满足所述环境标准,在方框538,令牌异常终止解封操作,并从该令牌中删除对象Obj、密封记录SealRec、摘要值DV以及所计算的摘要值CDV。否则,在方框546,令牌向解封组件提供对象Obj。
上述示例性密封和解封操作通过非对称加密算法,使用公钥SK来密封对象Obj,并使用私钥UK来解封对象Obj。然而,令牌也可使用对称加密算法,利用单个密钥SUK对一个对象Obj进行密封和解封。例如,令牌可包括用于通过对称加密算法(例如DES、3DES、AES等等)来密封和解封对象的嵌入式密钥SUK。
图6中示出了一个示例性多令牌密封操作。所述多令牌密封操作一般会使得一个密封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)生成对两个或更多令牌(例如物理令牌150或虚拟令牌160)密封的多令牌密封对象MSObj。下面的示例性多令牌密封操作是一个组件在相对于示例性计算设备100的物理令牌150和虚拟令牌160而密封对象Obj的上下文中进行描述的。然而,应该认识到所述密封组件也可对多于两个的令牌来密封对象Obj,并且该密封组件也可对不同的令牌组合(例如两个物理令牌)密封对象Obj。
在方框610,密封组件使用随机数生成器生成包含随机唯一性的密钥K。应注意,所述随机数生成器可生成伪随机数,因此使得密钥K包含伪随机唯一性。之后,通用术语“随机”用来同时表示真随机性和伪随机性。在方框620,密封组件使用密钥K和对称加密算法来加密对象Obj,以获得加密对象EObj。
为了获得密封的加密对象SEObj,在方框630,密封组件请求虚拟令牌160使用虚拟令牌160的指定密钥SK,将加密对象EObj针对于所指定的环境标准进行密封。例如,密封组件可通过标识出虚拟令牌160的一个或多个PCR寄存器280来指定所述环境标准,并可请求虚拟令牌160使用其辅助公钥272来密封所述加密对象EObj。响应于该请求,示例性实施例中的虚拟令牌160以与上述图4相类似的方式执行密封操作。例如虚拟令牌160可响应于密封请求而生成一个密封的加密对象SEObj,其包含所述加密对象EObj、密封记录SealRec以及可验证加密对象EObj和密封记录SealRec的完整性的摘要值DV,并将密封的加密对象SEObj提供给密封组件。
为了获得密封密钥SealK,在方框640,密封组件请求物理令牌150使用物理令牌150的指定密钥SK,将密钥K对所指定的环境标准进行密封。例如,密封组件可通过标识物理令牌150的一个或多个PCR寄存器240、242、244来指定所述环境标准,并可请求物理令牌150使用其辅助公钥232来密封密钥K。在一个示例性实施例中,密封组件至少指定了包含虚拟令牌160的度量的监控PCR寄存器240,以防止密钥K被公开到不包含正确的虚拟令牌160的运行环境中。响应于所述请求,示例性实施例中的物理令牌150以与上述图4类似的方式执行密封操作。例如,物理令牌150可以响应于所述密封操作请求,生成包含密钥K、密封记录SealRec以及可验证密钥K和密封记录SealRec的完整性的摘要值DV在内的密封密钥SealK,并将密封的密钥SealK提供给密封组件。
作为请求上述密封操作的结果,密封组件获得了一个多令牌密封对象MSObj,其包含两个密封部分:密封的加密对象SEObj和密封密钥SealK。在方框650,密封组件可存储多令牌密封对象MSObj的密封部分。例如,密封组件可将密封的加密对象SEObj和密封的密钥SealK存储到机器可读介质中,例如存储器130、I/O设备170的本地硬盘,或者通过网络控制器140存储到远程网络存储设备。
图7中示出了示例性多令牌解封操作。所述多令牌解封操作一般会使得一个解封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)获取已对两个或更多令牌(例如物理令牌150或虚拟令牌160来说)密封的对象Obj。下述示例性多令牌解封操作是在一个组件在对一个已对示例性计算设备100的物理令牌150和虚拟令牌160密封的对象Obj进行解封的上下文中描述的。然而,应认识到该解封组件也可解封已对多于两个的令牌密封的对象Obj,并且该解封组件也可解封已对令牌的不同组合(例如两个物理令牌)密封的对象Obj。
在方框710,解封组件接收密封的加密对象SEObj和对应的密封密钥SealK。例如,解封组件可响应于从机器可读介质(例如存储器130、本地硬盘或远程网络存储设备)中获取密封的加密对象SEObj和对应的密封密钥SealK而接收它们。
为了获得加密对象EObj,在方框720,解封组件将密封的加密对象SEObj提供给虚拟令牌160,并请求虚拟令牌160解封所述密封的加密对象SEObj。响应于所述请求,示例性实施例中的虚拟令牌160以与图5类似的方式执行解封操作。具体地说,只有当当前设备环境满足为密封的加密对象SEObj指定的环境标准时,示例性实施例中的虚拟令牌160才向解封组件提供加密对象EObj。
为了获得密钥K,在方框730,解封组件向物理令牌150提供密封密钥SealK,并请求物理令牌150解封所述密封密钥SealK。响应于该请求,示例性实施例中的物理令牌150以和图5类似的方式执行解封操作。具体地说,只有在当前设备环境满足为密封密钥SealK指定的环境标准时,示例性实施例中的物理令牌150才向解封组件提供密钥K。
在方框740,解封组件使用密钥K和对称加密算法来解密所述加密对象EObj。作为解密该加密对象的结果,解封组件获得了对物理令牌150和虚拟令牌160密封的对象Obj。
图6和7中上述示例性多令牌密封和解封操作使用了单个对称密钥K和对称加密算法来加密对象Obj并解密对象Obj。然而,所述多令牌密封和解封操作也可使用公钥PubK来加密该对象,并使用私钥PrivK来解密对象Obj。例如,在方框610,令牌可生成私钥PrivK和对应的公钥PubK,并可将公钥PubK提供给密封组件。在方框620,密封组件可使用公钥PubK来加密对象Obj。然后,在方框640,密封组件可请求物理令牌150密封与公钥PubK对应的私钥PrivK,然后在方框740,解封组件可使用私钥PrivK来解密加密对象EObj。
而且,密封组件可将加密对象EObj对多于两个的令牌进行密封。例如,密封组件可将加密对象EObj划分成两个或更多的部分,并可将所述部分针对不同的虚拟令牌和/或物理令牌进行密封。密封组件可类似地将所述密钥进行划分以将加密对象EObj(例如对称密钥K或非对称私钥PrivK)解密成两个或更多的部分,并将所述部分对不同虚拟令牌和/或物理令牌进行密封。或者,密封组件可将对象Obj划分成多个对象Obj。密封组件然后用不同的密钥K来对每个Obj对象进行加密,以获得一组加密对象EObj,并可对不同的令牌组来密封每个加密对象EObj和关联密钥K。
图8示出了另一种示例性多令牌密封操作。所述多令牌密封操作一般会使得一个密封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)生成对两个或更多令牌(例如物理令牌150或虚拟令牌160)密封的多令牌密封对象MSObj。下面的示例性多令牌密封操作是一个组件在相对于示例性计算设备100的物理令牌150和虚拟令牌160来密封对象Obj的上下文中进行描述的。然而,应该认识到所述密封组件也可对多于两个的令牌来密封对象Obj,并且该密封组件也可对不同的令牌组合(例如两个物理令牌)密封对象Obj。
在方框810,密封组件使用随机数生成器生成第一密钥K1和第二密钥K2,密钥K1和K2都具有随机唯一性。在方框820,密封组件基于第一密钥K1、第二密钥K2和密钥生成算法而生成第三密钥K3。例如,密封组件可通过对第一密钥K1和第二密钥K2进行按位的异或(XOR)运算,从而生成第三密钥K3。然而,密封组件可使用其他密钥生成算法来从密钥K1、K2获得第三密钥K3。在方框825,密封组件使用第三密钥K3和对称加密算法来加密对象Obj,以获得加密对象EObj。
为了获得第一密封密钥SealK1,在方框830,密封组件请求虚拟令牌160使用虚拟令牌160的指定密钥SK来对于所指定的环境标准密封第一密钥K1。例如,密封组件可通过标识出虚拟令牌160的一个或多个PCR寄存器280来指定所述环境标准,并请求虚拟令牌160使用其辅助公钥272来密封第一密钥K1。响应于所述请求,示例性实施例中的虚拟令牌160以和上述图4类似的方式执行密封操作,并将包含第一密钥K1、密封记录SealRec以及可验证第一密钥K1和密封记录SealRec的完整性的摘要值DV在内的第一密封密钥SealK1提供给所述密封组件。
为了获得第二密封密钥SealK2,在方框840,密封组件请求物理令牌150使用物理令牌150的指定密钥SK来对于所指定的环境标准密封第二密钥K2。例如,密封组件可通过标识出物理令牌150的一个或多个PCR寄存器240、242、244来指定所述环境标准,并请求物理令牌150使用其辅助公钥232来密封第二密钥K2。在一个示例性实施例中,密封组件至少指定了包含虚拟令牌160的度量的PCR寄存器240,以防止向不包含正确的虚拟令牌160的运行环境公开第二密钥K2。响应于所述请求,示例性实施例中的物理令牌150以和上述图4类似的方式执行密封操作,以获得第二密封密钥SealK2。物理令牌150还将包含第二密钥K2、密封记录SealRec以及可验证第二密钥K2和密封记录SealRec的完整性的摘要值DV在内的第二密封密钥SealK2提供给所述加密对象。
密封组件现在具有了一个多令牌密封对象MSObj,其包括3个密封部分:加密对象EObj、第一密封密钥SealK1和第二密封密钥SealK2。在方框850,密封组件可存储多令牌密封对象MSObj的多个密封部分。例如,密封组件可将加密对象EObj、第一密封密钥SealK1和第二密封密钥SealK2存储到机器可读介质例如存储器130、I/O设备170的本地硬盘中,或通过网络控制器140存储到远程网络存储设备。
图9中示出了一种示例性多令牌解封操作。所述多令牌解封操作一般会使得一个解封组件(例如监控器310、内核332、可信小应用程序334、操作***322、应用324、物理令牌150和/或虚拟令牌160)获取已对两个或更多令牌(例如物理令牌150或虚拟令牌160来说)密封的对象Obj。下述示例性多令牌解封操作是在一个组件在对个已对示例性计算设备100的物理令牌150和虚拟令牌160密封的对象Obj进行解封的上下文中描述的。然而,应认识到该解封组件也可对已对多于两个的令牌密封的对象Obj进行解封,并且该解封组件也可对已对令牌的不同组合(例如两个物理令牌)密封的对象Obj进行解封。
在方框910,解封组件接收包括加密对象EObj、第一密封密钥SealK1和第二密封密钥SealK2在内的多令牌密封对象MSObj。例如,解封组件可响应于从机器可读介质例如存储器130、本地硬盘或远程网络存储设备中获取加密对象EObj和密封密钥SealK1、SealK2,从而接收它们。
在方框920,解封组件将第一密封密钥SealK1提供给虚拟令牌160,并请求虚拟令牌160解封第一密封密钥SealK1。响应于该请求,示例性实施例中的虚拟令牌160以和上述图5类似的方式进行解封操作。具体地说,只有在当前设备环境满足为第一密封密钥SealK1指定的环境标准时,示例性实施例中的虚拟令牌160才向解封组件提供第一密钥K1。
在方框930,解封组件将第二密封密钥SealK2提供给物理令牌150,并请求物理令牌150解封第二密封密钥SealK2。响应于该请求,示例性实施例中的物理令牌150以和上述图5类似的方式进行解封操作。具体地说,只有在当前设备环境满足为第二密封密钥SealK2指定的环境标准时,示例性实施例中的物理令牌150才向解封组件提供第二密钥K2。
在方框940,密封组件基于第一密钥K1、第二密钥K2和密钥生成算法而生成第三密钥K3。例如,密封组件可通过对第一密钥K1和第二密钥K2进行按位的异或(XOR)运算,从而生成第三密钥K3。然而,密封组件可使用其他密钥生成算法来从密钥K1、K2获得第三密钥K3。
在方框950,解封组件使用第三密钥K3和对称加密算法来解密加密对象EObj。作为加密对象EObj的解密结果,解封组件获得了以前对物理令牌150和虚拟令牌160密封的对象Obj。
图8和图9中上述多令牌密封和解封操作是在对两个令牌来密封对象Obj的上下文中描述的。然而,密封组件还可对多于两个的令牌来密封所述对象。例如,在方框810,密封组件可生成3个或更多的密钥,并在方框820由所生成的密钥生成加密密钥。在方框825,密封组件可使用在方框820中生成的加密密钥来加密所述对象。密封组件还可对计算设备100的各种令牌来密封用于生成所述加密密钥的密钥。
计算设备100可响应于执行机器可读介质的指令,执行密封/解封操作(图4和5)和/或多令牌密封/解封操作(图6-9)中的全部或一部分,所述机器可读介质例如是只读存储器(ROM)、随机访问存储器(RAM)、磁盘存储介质、光存储介质、闪存器件和/或电、光、声或其他形式的传播信号例如载波、红外信号、数字信号、模拟信号。而且,尽管图4-9被示出为操作序列,但是计算设备100可并行或以不同顺序来执行所示出的密封/解封操作(图4和5)和/或多令牌密封/解封操作(图6-9)。
尽管已参考示例性实施例对本发明的某些特征进行了说明,但是所述说明不应被理解成限制性的。对本发明所属领域的技术人员来说可对所述示例性实施例以及本发明的其他实施例作出许多修改,这些修改都被认为是位于本发明的精神和范围之内。
Claims (36)
1.一种方法,包括
请求第一令牌解封多令牌密封对象的第一密封部分,以获得一个密钥,
请求第二令牌解封所述多令牌密封对象的第二密封部分,以获得一个加密对象,以及
使用所述密钥和所述加密对象以从所述多令牌密封对象获得一个对象。
2.如权利要求1所述的方法,还包括通过使用所述密钥来解密所述加密对象,从而获得所述多令牌密封对象的所述对象。
3.一种方法,包括
请求第一令牌解封多令牌密封对象的第一密封部分,
响应于所述第一令牌解封所述第一密封部分而接收第一密钥,
请求第二令牌解封所述多令牌密封对象的第二密封部分,
响应于所述第二令牌解封所述第二密封部分而接收第二密钥,
使用所述第一密钥和所述第二密钥来生成解密密钥,以及
通过使用所述解密密钥来解密所述多令牌密封对象的加密对象,获得所述多令牌密封对象的解密对象。
4.如权利要求3所述的方法,其中
获得所述多令牌密封对象的解密对象包括使用所述解密密钥和非对称加密算法来解密所述多令牌密封对象的加密对象。
5.如权利要求3所述的方法,还包括
只有当所述第一令牌确定当前设备环境满足为所述第一密封部分指定的环境标准时,才响应于所述第一令牌解封所述第一密封部分而接收第一密钥,
只有当所述第二令牌确定所述当前设备环境满足为所述第二密封部分指定的环境标准时,才响应于所述第二令牌解封所述第二密封部分而接收第二密钥。
6.如权利要求3所述的方法,还包括
只有当从所述第一密钥和所述第一密封部分的第一密封记录计算出的第一值和所述第一密封部分的第一摘要值具有预定关系时,才响应于所述第一令牌解封所述第一密封部分而接收所述第一密钥,以及
只有当从所述第二密钥和所述第二密封部分的第二密封记录计算出的第二值和所述第二密封部分的第二摘要值具有预定关系时,才响应于所述第二令牌解封所述第二密封部分而接收所述第二密钥。
7.如权利要求3所述的方法,还包括
只有所述第一令牌生成了所述第一密封部分时,才响应于所述第一令牌解封所述第一密封部分而接收第一密钥,
只有所述第二令牌生成了所述第二密封部分时,才响应于所述第二令牌解封所述第二密封部分而接收第二密钥。
8.一种方法,包括
请求多个令牌解封多令牌密封对象的多个密封部分,
响应于解封所述多令牌密封对象的多个密封部分而接收一个密钥,以及
使用所述密钥和一个加密对象来获得一个对象。
9.如权利要求8所述的方法,其中“获得”包括
使用所述密钥来解密所述加密对象,以获得所述对象。
10.如权利要求8所述的方法,其中“获得”包括
使用所述密钥和对称加密算法来解密所述加密对象,以获得所述对象。
11.如权利要求10所述的方法,还包括:只有在当前设备环境满足为所述多个密封部分指定的设备标准时,才解封所述多个密封部分。
12.如权利要求10所述的方法,还包括:只有当所述多个令牌生成了所述多个密封部分时,才解封所述多个密封部分。
13.一种方法,包括
请求计算设备的第一令牌相对于第一环境标准来密封多令牌密封对象的第一部分,以及
请求计算设备的第二令牌相对于第二环境标准来密封所述多令牌密封对象的第二部分。
14.如权利要求13所述的方法,还包括
使用对称加密算法和密钥来加密一个对象,以获得加密对象,
响应于所述第一令牌密封包含所述加密对象的所述第一部分,接收密封的加密对象,以及
响应于所述第二令牌密封包含所述密钥的所述第二部分,接收密封密钥。
15.如权利要求13所述的方法,还包括
使用非对称加密算法和非对称密钥对的加密密钥来加密一对象,以获得加密对象,
响应于所述第一令牌密封包含所述加密对象的所述第一部分,接收密封的加密对象,以及
响应于所述第二令牌密封包含所述非对称密钥对的解密密钥的所述第二部分,接收密封的解密密钥。
16.如权利要求13所述的方法,还包括
接收由所述第一令牌使用其第一密钥而加密的第一密封部分,所述第一密封部分包括所述第一密钥、包含由所述第一环境标准指定的一个或多个度量的第一密封记录、以及可验证所述第一密钥和所述第一密封记录的完整性的第一摘要值,以及
接收由所述第二令牌使用其第二密钥而加密的第二密封部分,所述第二密封部分包括所述第二密钥、包含由所述第二环境标准指定的一个或多个度量的第二密封记录、以及可验证所述第二密钥和所述第二密封记录的完整性的第二摘要值。
17.如权利要求16所述的方法,其中
所述第一密封记录包括所述第一令牌的第一唯一标识符,并且
所述第二密封记录包括所述第二令牌的第二唯一标识符。
18.如权利要求13所述的方法,还包括
使用基于第一密钥和第二密钥而生成的密钥来加密一对象,
响应于所述第一令牌密封包含所述第一密钥的所述第一部分,接收第一密封密钥,以及
响应于所述第二令牌密封包含所述第二密钥的所述第二部分,接收第二密封密钥。
19.如权利要求18所述的方法,还包括
通过使用所述第一令牌的第一密钥来加密所述第一部分和由所述第一环境标准指定的度量,生成第一密封部分,以及
通过使用所述第二令牌的第二密钥来加密所述第二部分和由所述第二环境标准指定的度量,生成第二密封部分。
20.如权利要求19所述的方法,其中
所述第一令牌包括虚拟令牌,并且
所述第二令牌包括物理令牌。
21.如权利要求20所述的方法,还包括
通过标识出所述物理令牌的至少一个包含所述虚拟令牌的度量的配置寄存器,指定所述第二环境标准。
22.如权利要求13所述的方法,还包括
通过标识出所述第一令牌记录了所述计算设备的度量的一个或多个配置寄存器,指定所述第一环境标准,以及
通过标识出所述第二令牌记录了所述计算设备的度量的一个或多个配置寄存器,指定所述第二环境标准。
23.如权利要求22所述的方法,其中
“指定所述第二环境标准”包括标识出所述第二令牌的至少一个包含了所述第一令牌的度量的配置寄存器。
24.如权利要求23所述的方法,其中
所述第一令牌包括虚拟令牌,并且
所述第二令牌包括物理令牌。
25.一种设备,包括
虚拟令牌,其包含一个或多个配置寄存器以及一个或多个处理单元,所述配置寄存器记录了设备环境的度量,所述处理单元用于生成包含对第一环境标准密封的第一密钥的第一密封密钥,
物理令牌,其包含一个或多个配置寄存器以及一个或多个处理单元,所述配置寄存器记录了所述设备环境的度量,所述处理单元用于生成包含对第二环境标准密封的第二密钥的第二密封密钥,以及
密封组件,用于基于所述第一密钥和所述第二密钥生成第三密钥,使用所述第三密钥来加密一个对象以获得加密对象,请求所述虚拟令牌密封所述第一密钥以获得所述第一密封密钥,并请求所述物理令牌密封所述第二密钥以获得所述第二密封密钥。
26.如权利要求25所述的设备,其中所述密封组件通过标识出对之密封了所述第一密钥的所述虚拟令牌的一个或多个配置寄存器,从而指定所述第一环境标准,并通过标识出对之密封了所述第二密钥的所述物理令牌的一个或多个配置寄存器,从而指定所述第二环境标准。
27.如权利要求26所述的设备,其中,所述密封组件指定了用来密封所述第一密钥的所述虚拟令牌的第一公钥,并指定了用来密封所述第二密钥的所述物理令牌的第二公钥。
28.如权利要求27所述的设备,其中
所述虚拟令牌通过使用所述第一公钥来加密所述第一密钥、包含由所述第一环境标准指定的度量的第一密封记录、以及可验证所述第一密钥和所述第一密封记录的完整性的第一摘要值,生成所述第一密封密钥,并且
所述物理令牌通过使用所述第二公钥来加密所述第二密钥、包含由所述第二环境标准指定的度量的第二密封记录、以及可验证所述第二密钥和所述第二密封记录的完整性的第二摘要值,生成所述第二密封密钥。
29.如权利要求25所述的设备,还包括一个解封组件,用于请求所述虚拟令牌解封所述第一密封密钥以获得所述第一密钥,请求所述物理令牌解封所述第二密封密钥以获得所述第二密钥,基于所述第一密钥和所述第二密钥生成第三密钥,并使用所述第三密钥来解密所述加密对象。
30.如权利要求29所述的设备,其中
只有在所述虚拟令牌的一个或多个配置寄存器的度量满足所述第一环境标准时,所述虚拟令牌的处理单元才会解封所述第一密封密钥并将所述第一密钥提供给所述解封组件,并且
只有在所述物理令牌的一个或多个配置寄存器的度量满足所述第二环境标准时,所述物理令牌的处理单元才会解封所述第二密封密钥,并将用来解密所述加密对象的第二密钥提供给所述解封组件。
31.如权利要求30所述的设备,其中
所述虚拟令牌通过使用所述虚拟令牌的第一私钥来解密所述第一密封密钥,以获得所述加密对象、第一密封记录以及可验证所述加密对象和所述第一密封记录的完整性的第一摘要值,从而解封所述密封对象,并且
所述物理令牌通过使用所述物理令牌的第二私钥来解密所述第二密封密钥,以获得所述第二密钥、第二密封记录以及可验证所述第二密钥和所述第二密封记录的完整性的第二摘要值,从而解封所述密封密钥。
32.如权利要求29所述的设备,其中
只有在所述第一密封密钥的第一摘要值与从所述第一密封密钥的所述第一密钥和第一密封记录计算出的值具有预定关系时,所述虚拟令牌的处理单元才会将所述第一密钥提供给所述解封组件,并且
只有在所述第二密封密钥的第二摘要值与从所述第二密封密钥的所述第二密钥和第二密封记录计算出的值具有预定关系时,所述物理令牌的处理单元才会将所述第二密钥提供给所述解封组件。
33.一种设备,包括
芯片集,
耦合到该芯片集的处理器,
耦合到所述芯片集的存储器,该存储器包含多条指令,所述指令被所述处理器执行时使得该处理器实现一个虚拟令牌,该虚拟令牌记录了设备环境的度量,接收用于生成解密密钥的第一密钥,并响应于接收到密封操作请求而密封所述第一密钥以符合所述虚拟令牌记录的一个或多个度量,以及
耦合到所述芯片集的物理令牌,该物理令牌用于记录所述设备环境的度量,接收用于生成所述解密密钥的第二密钥,并响应于接收到密封操作请求而密封所述第二密钥以符合所述物理令牌记录的一个或多个度量。
34.如权利要求33所述的设备,其中所述物理令牌记录的所述一个或多个度量包含虚拟令牌度量,并且所述物理令牌密封所述第二密钥以至少符合所述虚拟令牌度量。
35.如权利要求33所述的设备,其中所述物理令牌记录的所述一个或多个度量包含对导致所述处理器实现所述虚拟令牌的多条指令的度量,并且所述物理令牌密封所述第二密钥以至少符合所述多条指令的度量。
36.如权利要求33所述的设备,其中
所述多条指令执行时使得所述处理器生成包含所述第一密钥和所述虚拟令牌的第一唯一标识符的第一密封密钥,并且
所述物理令牌生成包含所述第二密钥和所述物理令牌的第二唯一标识符的第二密封密钥。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/082,600 US7480806B2 (en) | 2002-02-22 | 2002-02-22 | Multi-token seal and unseal |
US10/082,600 | 2002-02-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1678967A CN1678967A (zh) | 2005-10-05 |
CN100456200C true CN100456200C (zh) | 2009-01-28 |
Family
ID=27753130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038041472A Expired - Fee Related CN100456200C (zh) | 2002-02-22 | 2003-02-05 | 多令牌密封和解封 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7480806B2 (zh) |
EP (1) | EP1540440A2 (zh) |
JP (1) | JP2005527019A (zh) |
KR (1) | KR100611687B1 (zh) |
CN (1) | CN100456200C (zh) |
AU (1) | AU2003216179A1 (zh) |
TW (1) | TWI236594B (zh) |
WO (1) | WO2003073245A2 (zh) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US7174457B1 (en) * | 1999-03-10 | 2007-02-06 | Microsoft Corporation | System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party |
US7085931B1 (en) * | 1999-09-03 | 2006-08-01 | Secure Computing Corporation | Virtual smart card system and method |
US7076669B2 (en) * | 2002-04-15 | 2006-07-11 | Intel Corporation | Method and apparatus for communicating securely with a token |
US7487365B2 (en) * | 2002-04-17 | 2009-02-03 | Microsoft Corporation | Saving and retrieving data based on symmetric key encryption |
US7890771B2 (en) | 2002-04-17 | 2011-02-15 | Microsoft Corporation | Saving and retrieving data based on public key encryption |
WO2005003969A1 (en) * | 2003-06-27 | 2005-01-13 | Sun Microsystems, Inc. | Hybrid system implementing distinct and co-existing application execution environments and methods for implementing the same |
US20050044408A1 (en) * | 2003-08-18 | 2005-02-24 | Bajikar Sundeep M. | Low pin count docking architecture for a trusted platform |
US7421588B2 (en) * | 2003-12-30 | 2008-09-02 | Lenovo Pte Ltd | Apparatus, system, and method for sealing a data repository to a trusted computing platform |
US7590867B2 (en) * | 2004-06-24 | 2009-09-15 | Intel Corporation | Method and apparatus for providing secure virtualization of a trusted platform module |
EP1632907B1 (en) * | 2004-08-24 | 2019-10-30 | Canon Kabushiki Kaisha | Data-processing system and method for controlling same, computer program, and computer-readable recording medium |
US7568225B2 (en) * | 2004-09-08 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for remote security enablement |
US7653819B2 (en) * | 2004-10-01 | 2010-01-26 | Lenovo Singapore Pte Ltd. | Scalable paging of platform configuration registers |
US8037318B2 (en) * | 2004-11-17 | 2011-10-11 | Oracle America, Inc. | System and methods for dependent trust in a computer system |
EP2194476B1 (en) * | 2005-03-22 | 2014-12-03 | Hewlett-Packard Development Company, L.P. | Method and apparatus for creating a record of a software-verification attestation |
US8429629B2 (en) * | 2005-11-30 | 2013-04-23 | Red Hat, Inc. | In-kernel virtual machine for low overhead startup and low resource usage |
US8104034B2 (en) | 2005-11-30 | 2012-01-24 | Red Hat, Inc. | Purpose domain for in-kernel virtual machine for low overhead startup and low resource usage |
US8612970B2 (en) * | 2005-11-30 | 2013-12-17 | Red Hat, Inc. | Purpose domain for low overhead virtual machines |
US7900059B2 (en) * | 2005-12-13 | 2011-03-01 | International Business Machines Corporation | Sealing of data for applications |
WO2007124091A1 (en) * | 2006-04-21 | 2007-11-01 | Interdigital Technology Corporation | Apparatus and methods for performing trusted computing integrity measurement reporting |
GB0615015D0 (en) * | 2006-07-28 | 2006-09-06 | Hewlett Packard Development Co | Secure use of user secrets on a computing platform |
GB2443264A (en) * | 2006-10-27 | 2008-04-30 | Ntnu Technology Transfer As | Integrity checking method for a device in a computer network, which controls access to data; e.g. to prevent cheating in online game |
US8935771B2 (en) * | 2006-11-06 | 2015-01-13 | Safenet, Inc. | System, method, and computer security device having virtual memory cells |
US8738531B1 (en) * | 2008-07-08 | 2014-05-27 | InfoWatch | Cryptographic distributed storage system and method |
US8122514B2 (en) * | 2008-07-30 | 2012-02-21 | Microsoft Corporation | Software enhanced trusted platform module |
US8161285B2 (en) * | 2008-09-26 | 2012-04-17 | Microsoft Corporation | Protocol-Independent remote attestation and sealing |
KR101224717B1 (ko) * | 2008-12-26 | 2013-01-21 | 에스케이플래닛 주식회사 | 소프트웨어 라이센스 보호 방법과 그를 위한 시스템, 서버,단말기 및 컴퓨터로 읽을 수 있는 기록매체 |
CN101483513B (zh) * | 2009-02-09 | 2011-01-19 | 上海爱数软件有限公司 | 一种网络备份***及其数据备份和数据恢复方法 |
US20110035808A1 (en) * | 2009-08-05 | 2011-02-10 | The Penn State Research Foundation | Rootkit-resistant storage disks |
US8774190B2 (en) * | 2010-02-08 | 2014-07-08 | Qualcomm Incorporated | Enhanced resequencing of data received over a wireless communication system |
US8353019B2 (en) * | 2010-03-26 | 2013-01-08 | Canon Kabushiki Kaisha | Security token destined for multiple or group of service providers |
US8479017B2 (en) * | 2010-06-21 | 2013-07-02 | Intel Corporation | System and method for N-ary locality in a security co-processor |
US8804158B2 (en) | 2011-05-26 | 2014-08-12 | Hewlett-Packard Development Company, L.P. | Token generation from a printer |
US8910161B2 (en) * | 2012-07-13 | 2014-12-09 | Vmware, Inc. | Scan systems and methods of scanning virtual machines |
US8995658B2 (en) | 2013-02-13 | 2015-03-31 | Honeywell International Inc. | Physics-based key generation |
US9465960B2 (en) | 2013-12-04 | 2016-10-11 | Honeywell International Inc. | Physics-based authentication |
US9503433B2 (en) * | 2014-03-27 | 2016-11-22 | Intel Corporation | Method and apparatus for cloud-assisted cryptography |
US9641337B2 (en) * | 2014-04-28 | 2017-05-02 | Nxp B.V. | Interface compatible approach for gluing white-box implementation to surrounding program |
US10417634B1 (en) * | 2014-08-29 | 2019-09-17 | Amazon Technologies, Inc. | On-line transaction verification service and apparatus |
US10776808B2 (en) * | 2017-03-21 | 2020-09-15 | Paypal, Inc. | Utilizing payment tokens to track rewards |
CN118116572A (zh) * | 2018-05-18 | 2024-05-31 | 科林达斯公司 | 用于机器人介入过程的远程通信和控制*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1116339A (zh) * | 1994-08-01 | 1996-02-07 | 英特尔公司 | 在计算机***中进行总线事项处理的方法和设备 |
WO1999063707A1 (en) * | 1998-06-05 | 1999-12-09 | Intel Corporation | Method of controlling usage of software components |
EP1055989A1 (en) * | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System for digitally signing a document |
EP1056014A1 (en) * | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System for providing a trustworthy user interface |
WO2001027723A1 (en) * | 1999-10-08 | 2001-04-19 | Hewlett-Packard Company | Trusted computing platform with biometric authentication |
US20020023032A1 (en) * | 2000-08-18 | 2002-02-21 | Hewlett-Packard Company | Trusted system |
Family Cites Families (116)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3699532A (en) | 1970-04-21 | 1972-10-17 | Singer Co | Multiprogramming control for a data handling system |
US3996449A (en) | 1975-08-25 | 1976-12-07 | International Business Machines Corporation | Operating system authenticator |
US4162536A (en) | 1976-01-02 | 1979-07-24 | Gould Inc., Modicon Div. | Digital input/output system and method |
US4037214A (en) | 1976-04-30 | 1977-07-19 | International Business Machines Corporation | Key register controlled accessing system |
US4247905A (en) | 1977-08-26 | 1981-01-27 | Sharp Kabushiki Kaisha | Memory clear system |
US4278837A (en) | 1977-10-31 | 1981-07-14 | Best Robert M | Crypto microprocessor for executing enciphered programs |
US4276594A (en) | 1978-01-27 | 1981-06-30 | Gould Inc. Modicon Division | Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same |
US4207609A (en) | 1978-05-08 | 1980-06-10 | International Business Machines Corporation | Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system |
JPS5576447A (en) | 1978-12-01 | 1980-06-09 | Fujitsu Ltd | Address control system for software simulation |
US4307447A (en) | 1979-06-19 | 1981-12-22 | Gould Inc. | Programmable controller |
US4307214A (en) * | 1979-12-12 | 1981-12-22 | Phillips Petroleum Company | SC2 activation of supported chromium oxide catalysts |
US4319323A (en) | 1980-04-04 | 1982-03-09 | Digital Equipment Corporation | Communications device for data processing system |
US4419724A (en) | 1980-04-14 | 1983-12-06 | Sperry Corporation | Main bus interface package |
US4366537A (en) | 1980-05-23 | 1982-12-28 | International Business Machines Corp. | Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys |
US4403283A (en) | 1980-07-28 | 1983-09-06 | Ncr Corporation | Extended memory system and method |
DE3034581A1 (de) | 1980-09-13 | 1982-04-22 | Robert Bosch Gmbh, 7000 Stuttgart | Auslesesicherung bei einchip-mikroprozessoren |
US4521852A (en) | 1982-06-30 | 1985-06-04 | Texas Instruments Incorporated | Data processing device formed on a single semiconductor substrate having secure memory |
JPS59111561A (ja) | 1982-12-17 | 1984-06-27 | Hitachi Ltd | 複合プロセツサ・システムのアクセス制御方式 |
US4759064A (en) | 1985-10-07 | 1988-07-19 | Chaum David L | Blind unanticipated signature systems |
US4799258A (en) * | 1984-02-13 | 1989-01-17 | National Research Development Corporation | Apparatus and methods for granting access to computers |
US4975836A (en) | 1984-12-19 | 1990-12-04 | Hitachi, Ltd. | Virtual computer system |
JPS61206057A (ja) | 1985-03-11 | 1986-09-12 | Hitachi Ltd | アドレス変換装置 |
FR2592510B1 (fr) | 1985-12-31 | 1988-02-12 | Bull Cp8 | Procede et appareil pour certifier des services obtenus a l'aide d'un support portatif tel qu'une carte a memoire |
FR2601535B1 (fr) | 1986-07-11 | 1988-10-21 | Bull Cp8 | Procede pour certifier l'authenticite d'une donnee echangee entre deux dispositifs connectes en local ou a distance par une ligne de transmission |
FR2601525B1 (fr) | 1986-07-11 | 1988-10-21 | Bull Cp8 | Dispositif de securite interdisant le fonctionnement d'un ensemble electronique apres une premiere coupure de son alimentation electrique |
FR2601476B1 (fr) | 1986-07-11 | 1988-10-21 | Bull Cp8 | Procede pour authentifier une donnee d'habilitation externe par un objet portatif tel qu'une carte a memoire |
FR2618002B1 (fr) | 1987-07-10 | 1991-07-05 | Schlumberger Ind Sa | Procede et systeme d'authentification de cartes a memoire electronique |
US5007082A (en) | 1988-08-03 | 1991-04-09 | Kelly Services, Inc. | Computer software encryption apparatus |
US5079737A (en) | 1988-10-25 | 1992-01-07 | United Technologies Corporation | Memory management unit for the MIL-STD 1750 bus |
US5434999A (en) | 1988-11-09 | 1995-07-18 | Bull Cp8 | Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal |
FR2640798B1 (fr) | 1988-12-20 | 1993-01-08 | Bull Cp8 | Dispositif de traitement de donnees comportant une memoire non volatile electriquement effacable et reprogrammable |
JPH02171934A (ja) | 1988-12-26 | 1990-07-03 | Hitachi Ltd | 仮想計算機システム |
JPH02208740A (ja) | 1989-02-09 | 1990-08-20 | Fujitsu Ltd | 仮想計算機制御方式 |
US5442645A (en) | 1989-06-06 | 1995-08-15 | Bull Cp8 | Method for checking the integrity of a program or data, and apparatus for implementing this method |
JP2590267B2 (ja) | 1989-06-30 | 1997-03-12 | 株式会社日立製作所 | 仮想計算機における表示制御方式 |
US5008935A (en) * | 1989-06-30 | 1991-04-16 | At&T Bell Laboratories | Efficient method for encrypting superblocks of data |
US5022077A (en) | 1989-08-25 | 1991-06-04 | International Business Machines Corp. | Apparatus and method for preventing unauthorized access to BIOS in a personal computer system |
JP2825550B2 (ja) | 1989-09-21 | 1998-11-18 | 株式会社日立製作所 | 多重仮想空間アドレス制御方法および計算機システム |
CA2010591C (en) | 1989-10-20 | 1999-01-26 | Phillip M. Adams | Kernels, description tables and device drivers |
CA2027799A1 (en) | 1989-11-03 | 1991-05-04 | David A. Miller | Method and apparatus for independently resetting processors and cache controllers in multiple processor systems |
US5075842A (en) | 1989-12-22 | 1991-12-24 | Intel Corporation | Disabling tag bit recognition and allowing privileged operations to occur in an object-oriented memory protection mechanism |
US5108590A (en) | 1990-09-12 | 1992-04-28 | Disanto Dennis | Water dispenser |
US5230069A (en) | 1990-10-02 | 1993-07-20 | International Business Machines Corporation | Apparatus and method for providing private and shared access to host address and data spaces by guest programs in a virtual machine computer system |
US5317705A (en) | 1990-10-24 | 1994-05-31 | International Business Machines Corporation | Apparatus and method for TLB purge reduction in a multi-level machine system |
US5287363A (en) | 1991-07-01 | 1994-02-15 | Disk Technician Corporation | System for locating and anticipating data storage media failures |
US5437033A (en) | 1990-11-16 | 1995-07-25 | Hitachi, Ltd. | System for recovery from a virtual machine monitor failure with a continuous guest dispatched to a nonguest mode |
US5255379A (en) | 1990-12-28 | 1993-10-19 | Sun Microsystems, Inc. | Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor |
US5453003A (en) | 1991-01-09 | 1995-09-26 | Pfefferle; William C. | Catalytic method |
US5319760A (en) | 1991-06-28 | 1994-06-07 | Digital Equipment Corporation | Translation buffer for virtual machines with address space match |
US5522075A (en) | 1991-06-28 | 1996-05-28 | Digital Equipment Corporation | Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces |
US5455909A (en) | 1991-07-05 | 1995-10-03 | Chips And Technologies Inc. | Microprocessor with operation capture facility |
JPH06236284A (ja) | 1991-10-21 | 1994-08-23 | Intel Corp | コンピュータシステム処理状態を保存及び復元する方法及びコンピュータシステム |
US5627987A (en) | 1991-11-29 | 1997-05-06 | Kabushiki Kaisha Toshiba | Memory management and protection system for virtual memory in computer system |
US5574936A (en) | 1992-01-02 | 1996-11-12 | Amdahl Corporation | Access control mechanism controlling access to and logical purging of access register translation lookaside buffer (ALB) in a computer system |
US5486529A (en) | 1992-04-16 | 1996-01-23 | Zeneca Limited | Certain pyridyl ketones for treating diseases involving leukocyte elastase |
US5421006A (en) | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5237616A (en) | 1992-09-21 | 1993-08-17 | International Business Machines Corporation | Secure computer system having privileged and unprivileged memories |
US5293424A (en) | 1992-10-14 | 1994-03-08 | Bull Hn Information Systems Inc. | Secure memory card |
US5796835A (en) | 1992-10-27 | 1998-08-18 | Bull Cp8 | Method and system for writing information in a data carrier making it possible to later certify the originality of this information |
JP2765411B2 (ja) | 1992-11-30 | 1998-06-18 | 株式会社日立製作所 | 仮想計算機方式 |
US5668971A (en) | 1992-12-01 | 1997-09-16 | Compaq Computer Corporation | Posted disk read operations performed by signalling a disk read complete to the system prior to completion of data transfer |
JPH06187178A (ja) | 1992-12-18 | 1994-07-08 | Hitachi Ltd | 仮想計算機システムの入出力割込み制御方法 |
US5483656A (en) | 1993-01-14 | 1996-01-09 | Apple Computer, Inc. | System for managing power consumption of devices coupled to a common bus |
US5469557A (en) | 1993-03-05 | 1995-11-21 | Microchip Technology Incorporated | Code protection in microcontroller with EEPROM fuses |
FR2703800B1 (fr) | 1993-04-06 | 1995-05-24 | Bull Cp8 | Procédé de signature d'un fichier informatique, et dispositif pour la mise en Óoeuvre. |
FR2704341B1 (fr) | 1993-04-22 | 1995-06-02 | Bull Cp8 | Dispositif de protection des clés d'une carte à puce. |
JPH06348867A (ja) | 1993-06-04 | 1994-12-22 | Hitachi Ltd | マイクロコンピュータ |
FR2706210B1 (fr) | 1993-06-08 | 1995-07-21 | Bull Cp8 | Procédé d'authentification d'un objet portatif par un terminal hors ligne, objet portatif et terminal correspondants. |
US5555385A (en) | 1993-10-27 | 1996-09-10 | International Business Machines Corporation | Allocation of address spaces within virtual machine compute system |
US5825880A (en) | 1994-01-13 | 1998-10-20 | Sudia; Frank W. | Multi-step digital signature method and system |
US5459869A (en) | 1994-02-17 | 1995-10-17 | Spilo; Michael L. | Method for providing protected mode services for device drivers and other resident software |
US5604805A (en) | 1994-02-28 | 1997-02-18 | Brands; Stefanus A. | Privacy-protected transfer of electronic information |
FR2717286B1 (fr) | 1994-03-09 | 1996-04-05 | Bull Cp8 | Procédé et dispositif pour authentifier un support de données destiné à permettre une transaction ou l'accès à un service ou à un lieu, et support correspondant. |
US5684881A (en) | 1994-05-23 | 1997-11-04 | Matsushita Electric Industrial Co., Ltd. | Sound field and sound image control apparatus and method |
US5473692A (en) | 1994-09-07 | 1995-12-05 | Intel Corporation | Roving software license for a hardware agent |
US5539828A (en) | 1994-05-31 | 1996-07-23 | Intel Corporation | Apparatus and method for providing secured communications |
JPH0883211A (ja) | 1994-09-12 | 1996-03-26 | Mitsubishi Electric Corp | データ処理装置 |
FR2725537B1 (fr) | 1994-10-11 | 1996-11-22 | Bull Cp8 | Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe |
US5903752A (en) | 1994-10-13 | 1999-05-11 | Intel Corporation | Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system |
US5606617A (en) | 1994-10-14 | 1997-02-25 | Brands; Stefanus A. | Secret-key certificates |
US5564040A (en) | 1994-11-08 | 1996-10-08 | International Business Machines Corporation | Method and apparatus for providing a server function in a logically partitioned hardware machine |
US5560013A (en) | 1994-12-06 | 1996-09-24 | International Business Machines Corporation | Method of using a target processor to execute programs of a source architecture that uses multiple address spaces |
US5555414A (en) | 1994-12-14 | 1996-09-10 | International Business Machines Corporation | Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals |
US5615263A (en) | 1995-01-06 | 1997-03-25 | Vlsi Technology, Inc. | Dual purpose security architecture with protected internal operating system |
US5764969A (en) | 1995-02-10 | 1998-06-09 | International Business Machines Corporation | Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization |
FR2731536B1 (fr) | 1995-03-10 | 1997-04-18 | Schlumberger Ind Sa | Procede d'inscription securisee d'informations dans un support portable |
US5717903A (en) | 1995-05-15 | 1998-02-10 | Compaq Computer Corporation | Method and appartus for emulating a peripheral device to allow device driver development before availability of the peripheral device |
JP3451595B2 (ja) | 1995-06-07 | 2003-09-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ |
US5684948A (en) | 1995-09-01 | 1997-11-04 | National Semiconductor Corporation | Memory management circuit which provides simulated privilege levels |
US5633929A (en) | 1995-09-15 | 1997-05-27 | Rsa Data Security, Inc | Cryptographic key escrow system having reduced vulnerability to harvesting attacks |
US5737760A (en) | 1995-10-06 | 1998-04-07 | Motorola Inc. | Microcontroller with security logic circuit which prevents reading of internal memory by external program |
US5768390A (en) * | 1995-10-25 | 1998-06-16 | International Business Machines Corporation | Cryptographic system with masking |
JP3693721B2 (ja) | 1995-11-10 | 2005-09-07 | Necエレクトロニクス株式会社 | フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法 |
US5657445A (en) | 1996-01-26 | 1997-08-12 | Dell Usa, L.P. | Apparatus and method for limiting access to mass storage devices in a computer system |
US5835594A (en) | 1996-02-09 | 1998-11-10 | Intel Corporation | Methods and apparatus for preventing unauthorized write access to a protected non-volatile storage |
US5809546A (en) | 1996-05-23 | 1998-09-15 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers |
US5729760A (en) | 1996-06-21 | 1998-03-17 | Intel Corporation | System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode |
US5740178A (en) | 1996-08-29 | 1998-04-14 | Lucent Technologies Inc. | Software for controlling a reliable backup memory |
US5844986A (en) | 1996-09-30 | 1998-12-01 | Intel Corporation | Secure BIOS |
US6012144A (en) * | 1996-10-08 | 2000-01-04 | Pickett; Thomas E. | Transaction security method and apparatus |
JPH10134008A (ja) * | 1996-11-05 | 1998-05-22 | Mitsubishi Electric Corp | 半導体装置およびコンピュータシステム |
US5852717A (en) | 1996-11-20 | 1998-12-22 | Shiva Corporation | Performance optimizations for computer networks utilizing HTTP |
US5901225A (en) | 1996-12-05 | 1999-05-04 | Advanced Micro Devices, Inc. | System and method for performing software patches in embedded systems |
US5757919A (en) | 1996-12-12 | 1998-05-26 | Intel Corporation | Cryptographically protected paging subsystem |
US5953502A (en) * | 1997-02-13 | 1999-09-14 | Helbig, Sr.; Walter A | Method and apparatus for enhancing computer system security |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6754820B1 (en) * | 2001-01-30 | 2004-06-22 | Tecsec, Inc. | Multiple level access system |
GB9905056D0 (en) * | 1999-03-05 | 1999-04-28 | Hewlett Packard Co | Computing apparatus & methods of operating computer apparatus |
GB0020488D0 (en) * | 2000-08-18 | 2000-10-11 | Hewlett Packard Co | Trusted status rollback |
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 |
US20020152392A1 (en) * | 2001-04-12 | 2002-10-17 | Motorola, Inc. | Method for securely providing encryption keys |
US7103771B2 (en) * | 2001-12-17 | 2006-09-05 | Intel Corporation | Connecting a virtual token to a physical token |
US20030126454A1 (en) * | 2001-12-28 | 2003-07-03 | Glew Andrew F. | Authenticated code method and apparatus |
US7308576B2 (en) * | 2001-12-31 | 2007-12-11 | Intel Corporation | Authenticated code module |
US7318235B2 (en) * | 2002-12-16 | 2008-01-08 | Intel Corporation | Attestation using both fixed token and portable token |
US7421588B2 (en) * | 2003-12-30 | 2008-09-02 | Lenovo Pte Ltd | Apparatus, system, and method for sealing a data repository to a trusted computing platform |
-
2002
- 2002-02-22 US US10/082,600 patent/US7480806B2/en not_active Expired - Fee Related
-
2003
- 2003-02-05 EP EP03743114A patent/EP1540440A2/en not_active Withdrawn
- 2003-02-05 KR KR1020047013142A patent/KR100611687B1/ko active IP Right Grant
- 2003-02-05 CN CNB038041472A patent/CN100456200C/zh not_active Expired - Fee Related
- 2003-02-05 AU AU2003216179A patent/AU2003216179A1/en not_active Abandoned
- 2003-02-05 WO PCT/US2003/003526 patent/WO2003073245A2/en active Application Filing
- 2003-02-05 JP JP2003571873A patent/JP2005527019A/ja active Pending
- 2003-02-21 TW TW092103652A patent/TWI236594B/zh not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1116339A (zh) * | 1994-08-01 | 1996-02-07 | 英特尔公司 | 在计算机***中进行总线事项处理的方法和设备 |
WO1999063707A1 (en) * | 1998-06-05 | 1999-12-09 | Intel Corporation | Method of controlling usage of software components |
EP1055989A1 (en) * | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System for digitally signing a document |
EP1056014A1 (en) * | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System for providing a trustworthy user interface |
WO2001027723A1 (en) * | 1999-10-08 | 2001-04-19 | Hewlett-Packard Company | Trusted computing platform with biometric authentication |
US20020023032A1 (en) * | 2000-08-18 | 2002-02-21 | Hewlett-Packard Company | Trusted system |
Also Published As
Publication number | Publication date |
---|---|
EP1540440A2 (en) | 2005-06-15 |
WO2003073245A3 (en) | 2005-04-21 |
TWI236594B (en) | 2005-07-21 |
KR20040094724A (ko) | 2004-11-10 |
JP2005527019A (ja) | 2005-09-08 |
US20030163711A1 (en) | 2003-08-28 |
TW200400434A (en) | 2004-01-01 |
WO2003073245A2 (en) | 2003-09-04 |
CN1678967A (zh) | 2005-10-05 |
KR100611687B1 (ko) | 2006-08-14 |
US7480806B2 (en) | 2009-01-20 |
AU2003216179A1 (en) | 2003-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100456200C (zh) | 多令牌密封和解封 | |
CN100566243C (zh) | 使用固定令牌和可移动令牌两者的计算设备及其方法 | |
CN100335985C (zh) | 将虚拟令牌连接到物理令牌 | |
JP4498735B2 (ja) | オペレーティングシステムおよびカスタマイズされた制御プログラムとインタフェースする安全なマシンプラットフォーム | |
JP4660188B2 (ja) | スリープ状態における攻撃からの保護 | |
CN103221961B (zh) | 包括用于保护多用户敏感代码和数据的架构的方法和装置 | |
CN101251879B (zh) | 用于保护数据的方法和装置 | |
KR100996784B1 (ko) | 공개 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체 | |
US20050021968A1 (en) | Method for performing a trusted firmware/bios update | |
US20070223704A1 (en) | Method and apparatus for authenticated, recoverable key distribution with no database secrets | |
US20050283826A1 (en) | Systems and methods for performing secure communications between an authorized computing platform and a hardware component | |
AU2020244511B2 (en) | Balancing public and personal security needs | |
US20020073316A1 (en) | Cryptographic system enabling ownership of a secure process | |
KR20030082485A (ko) | 대칭 키 암호화에 기초한 데이터의 저장 및 검색 | |
EP1837789A2 (en) | Method and apparatus for temporarily accessing content using temporary license | |
Khan et al. | A protocol for preventing insider attacks in untrusted infrastructure-as-a-service clouds | |
CN114816549B (zh) | 一种保护bootloader及其环境变量的方法及*** | |
KR100897075B1 (ko) | 배포 cd를 사용하는 장치에 서명 그룹의 다이렉트 증명개인 키들을 전달하는 방법 | |
EP3539010B1 (en) | Balancing public and personal security needs | |
Sarmenta et al. | Virtual monotonic counters and count-limited objects using a TPM without a trusted OS (extended version) | |
Batten | Trusted execution: applications and verification | |
Johnston et al. | Designing to FIPS-140 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090128 Termination date: 20190205 |