CN1514571A - 使用固定令牌和可移动令牌两者的证明 - Google Patents

使用固定令牌和可移动令牌两者的证明 Download PDF

Info

Publication number
CN1514571A
CN1514571A CNA2003101212131A CN200310121213A CN1514571A CN 1514571 A CN1514571 A CN 1514571A CN A2003101212131 A CNA2003101212131 A CN A2003101212131A CN 200310121213 A CN200310121213 A CN 200310121213A CN 1514571 A CN1514571 A CN 1514571A
Authority
CN
China
Prior art keywords
key
large object
binary large
token
use authority
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.)
Granted
Application number
CNA2003101212131A
Other languages
English (en)
Other versions
CN100566243C (zh
Inventor
����W��������
戴维·W·克劳罗克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN1514571A publication Critical patent/CN1514571A/zh
Application granted granted Critical
Publication of CN100566243C publication Critical patent/CN100566243C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token

Abstract

本发明描述了用于创建和使用受保护密钥二进制大对象的方法、装置和机器可读介质,其中在授权使用所述受保护密钥二进制大对象的密钥之前要求出现特定的可移动令牌。这样的受保护密钥二进制大对象可被用于在本地用户和计算设备之间建立一定水平的信任。

Description

使用固定令牌和可移动令牌两者的证明
技术领域
本发明一般地涉及用于创建和使用受保护密钥二进制大对象的方法、装置和机器可读介质。
背景技术
2002年2月22日1.1b版的可信计算平台联盟(TCPA)主规范(以下称为“TCPA SPEC”)描述了被附加于计算设备或平台和/或要不然不能从计算设备或平台上被移除的令牌或者可信平台模块(TPM)。这种固定令牌支持对软件进程、平台引导完整性、文件完整性以及软件授权的审计和日志记录。另外,固定令牌提供受保护存储器,其中项目能够受到保护而免遭暴露或不适当的使用,固定令牌还提供可以被用于证明的标识。这些特征促进了第三方准许计算设备或者平台访问信息,而这在其他情况下是会被拒绝的。
第三方可以利用远程计算设备来与使用固定令牌证明机制的计算设备建立一定水平的信任。但是,用以建立这种水平的信任的处理一般要求第三方的远程计算设备进行复杂的计算并且参与和该固定令牌有关的复杂协议。但是,平台的本地用户可能还希望与本地平台或计算设备建立类似水平的信任。然而,对于本地用户要象远程计算设备一样进行同样的复杂计算并参与和固定令牌有关的同样的复杂协议以便建立对该计算设备的信任,这是不切实际的。
发明内容
根据本发明的一个方面,提出了一种方法,包括请求固定令牌创建包括了第一密钥对和第一使用授权数据的被密封的密钥二进制大对象,其中为了使用所述第一密钥对的私有密钥需要对所述第一使用授权数据的知识,以及请求可移动令牌创建包括了所述被密封的密钥二进制大对象和第二使用授权数据的受保护密钥二进制大对象,其中为了从所述受保护密钥二进制大对象获取所述被密封的密钥二进制大对象需要对所述第二使用授权数据的知识。
根据本发明的另一个方面,提出了一种机器可读介质,包括多个指令,所述多个指令当被执行时使处理器请求可移动令牌从包括使用授权数据的受保护密钥二进制大对象提供被密封的密钥二进制大对象,向所述可移动令牌提供基于所述处理器具有的对于所述受保护密钥二进制大对象的使用授权数据的认证代码,以及仅当所述认证代码表明所述处理器的所述使用授权数据与所述受保护密钥二进制大对象的所述授权数据具有预定关系时,从所述可移动令牌接收所述被密封的密钥二进制大对象。
根据本发明的另一个方面,提出了一种计算设备,包括固定令牌、可移动令牌、可移动令牌接口和处理器,所述固定令牌包括第一处理器单元和第一受保护存储器,所述第一处理器单元响应于确定了所述第一认证代码与被密封的密钥二进制大对象的第一使用授权数据具有预定关系,将所述被密封的密钥二进制大对象的第一密钥对加载到所述第一受保护存储器中,所述可移动令牌包括第二处理单元和第二受保护存储器,所述第二处理单元响应于确定了第二认证代码与受保护密钥二进制大对象的第二使用授权数据具有预定关系,从所述受保护密钥二进制大对象返回所述被密封的密钥二进制大对象,所述可移动令牌接口使得所述可移动令牌能够被耦合到所述计算设备并能够从所述计算设备移除,所述处理器向所述可移动令牌提供对所述被密封的密钥二进制大对象的请求,所述请求包括所述受保护密钥二进制大对象和所述第二认证代码,并且所述处理器向所述固定令牌提供加载所述第一密钥对的请求,所述请求包括所述被密封的密钥二进制大对象和所述第一认证代码。
附图说明
这里所描述的本发明是通过示例而不是限制的方式图示于附图中的。为了说明的简洁和清楚,图中所示部件不一定按比例绘制。例如,为了清晰,一些部件的尺寸可能相对于其他部件被夸大。另外,在认为合适的地方,在图之间重复标号以表示对应或者类似的元素。
图1图示了包括有固定令牌和可移动令牌的示例计算设备;
图2图示了图1的示例固定令牌和示例可移动令牌;
图3图示了可利用图1的计算设备实现的示例可信环境;
图4图示了可以被图1的计算设备用于本地证明的示例的被密封的密钥二进制大对象和示例的受保护的密钥二进制大对象;
图5图示了创建图4的受保护的密钥二进制大对象的示例方法;
图6图示了加载图4的受保护的密钥二进制大对象的密钥的示例方法。
具体实施方式
在以下详细描述中,描述了很多具体细节以便提供对本发明的全面的理解。但是,本发明可以在不采用这些具体细节的条件下实现。在其他情况中,没有详细描述已知的方法、程序、组成部分以及电路以避免使本发明不清晰。另外,示例尺寸/模块/值/范围可能被给出,虽然一些实施例可以不限于这些具体示例。
说明书中提到的“一个实施例”、“实施例”、“示例实施例”等表示所描述的实施例可以包括具体特征、结构或者特性,但是每个实施例未必包括该具体特征、结构或者特性。而且,这样的措词未必指的是同一个实施例。另外,虽然具体特征、结构或者特性是结合一个实施例描述的,但是应该认为不论是否被明确地描述,本领域技术人员都知道如何使这样的特征、结构或者特性结合其他实施例起作用。
另外,术语“二进制大对象”(binarv large object,blob)常用于数据库领域,指以数据库本身不能解释的形式需要被存储于数据库中的任何随机的大块二进制数字。但是,术语“二进制大对象”用在这里意思是具有更广的范围。具体而言,术语“二进制大对象”被规定为广义的术语,它包含了不论结构、格式、表示法或者大小的一个或者多个二进制数字的任何分组。
此外,动词“散列”以及相关形式在这里被用来指基于操作数或者消息进行操作以产生值或者“散列”。理论上,散列操作生成散列,由该散列不能推算找出与该散列相关的消息,并且不能由其判断出有关与该散列相关消息的任何有用信息。另外,散列操作理论上生成散列,使得不可能通过推算判断出产生同样的散列的两个消息。尽管散列操作理论上具有以上性质,但是实际上例如消息摘要5算法(MD5)和安全散列算法1(SHA-1)的单向函数生成从其还原消息是困难的、计算上繁复并且/或者实际上不可行的散列值。
此外,术语“第一”、“第二”、“第三”等用在这里作为标记以区别类似地命名的组成部分和/或操作。具体而言,这样的术语不用来表示也不意图要表示组成部分和/或操作的顺序。另外,这样的术语不用来表示也不意图要表示一个组成部分和/或操作具有比另一个更高的重要性。
现在参照图1,示出了示例计算设备100。计算设备100可以包括一个或多个处理器1021...102P。处理器1021...102P可支持一个或者多个操作模式,例如,实模式、保护模式、虚拟8086模式以及虚拟机扩展模式(VMX模式)。另外,处理器1021...102P可以在每个所支持的操作模式中支持一个或者多个特权等级或环。一般而言,处理器1021...102P的操作模式和特权等级确定了可以用于执行的指令以及执行这样的指令的效果。更具体地说,仅当处理器1021...102P处于合适的模式和/或特权等级的时候,处理器1021...102P才可以被允许执行某些被授予特权的指令。
芯片组104可以包括一个或者多个集成电路组件或者芯片,将处理器1021...102P耦合到存储器106、网络接口108、固定令牌110、可移动令牌112以及该计算设备100的其他I/O设备114,例如,鼠标、键盘、磁盘驱动器、视频控制器等。芯片组104可以包括用于向存储器106写入数据或者从中读取数据的存储器控制器(未示出)。另外,芯片组104和/或处理器1021...102P可以将存储器106的某些区域确定为受保护存储器116。在一个实施例中,处理器1021...102P仅当处于特定操作模式(例如,保护模式)和特权等级(例如,0P)时才可以访问受保护存储器116。
网络接口108一般为计算设备100提供通信机构以通过网络120与一个或者多个远程代理1181...118R(例如,认证中心、零售商、金融机构)通信。例如,网络接口108可包括千兆位以太网控制器、有线调制解调器、数字用户线路(DSL)调制解调器、普通老式电话服务(POTS)调制解调器等来将计算设备100耦合到一个或者多个远程代理1181...118R
固定令牌110可被附加或者结合到计算设备100中以向远程代理1181...118R和/或本地用户保证固定令牌110只与计算设备100相关联。例如,固定令牌110可被结合到芯片组104的一个芯片中和/或被表面贴装到计算设备100的主板(未示出)。一般而言,固定令牌1 10可包括对量度(metric)、密钥和秘密的受保护存储,并可响应于来自处理器1021...102P以及芯片组104的请求进行各种完整性功能。在一个实施例中,固定令牌110可以以可信方式存储量度,可以以可信方式引用量度,可以将秘密密封到特定环境(当前或者将来)中,并可对密封秘密的环境解封秘密。另外,固定令牌110可以加载被密封的密钥二进制大对象的密钥并可以建立会话,使得请求者能够使用与所建立的会话相关的密钥进行操作。
可移动令牌112可通过计算设备100的可移动令牌接口122建立到处理器1021...102P的链接。可移动接口122可包括端口(例如,USB端口、IEEE 1394端口、串行端口、并行端口)、插槽(例如,读卡器、PC卡插槽等)、收发器(例如,射频收发器、红外收发器等)和/或使得可移动令牌112能够方便地被耦合到计算设备100并从其上被移除的一些其他接口机构。与固定令牌类似,可移动令牌112可以包括对密钥和秘密的受保护存储器,并可以响应于来自处理器1021...102P和芯片组104的请求完成各种完整性功能。在一个实施例中,可移动令牌112可以加载被密封的密钥二进制大对象的密钥,并可以建立会话,使得请求者能够使用与所建立的会话相关的密钥进行操作。另外,可移动令牌112可以改变与被密封的密钥二进制大对象相关的使用授权数据,并可以在确定请求者被授权接收被密封的密钥二进制大对象之后返回受保护密钥二进制大对象的被密封的密钥二进制大对象。
如图2所示,固定令牌110可以包括一个或者多个处理单元200、随机数生成器202以及受保护存储器204,其中受保护存储器204可以包括密钥206、秘密208和/或一个或多个用于量度的平台配置寄存器(PCR)寄存器210。类似地,可移动令牌112可包括一个或多个处理单元212、随机数生成器214和受保护存储器216,其中受保护存储器216可以包括密钥218和/或秘密220。处理单元200、212可以为计算设备100完成完整性功能,例如,生成和/或计算对称和非对称的密钥。在一个实施例中,处理单元200、212可以使用所生成的密钥来加密和/或标记信息。另外,处理单元200、212可基于AES(先进加密标准)、DES(数据加密标准)、3DES(三倍数据加密标准)或者以由随机数生成器202、214所生成的随机数为种子的一些其他的对称密钥生成算法来生成对称密钥。类似地,处理单元200、212可基于RSA(Rivest-Shamir-Adleman)、EC(椭圆曲线)或者以由随机数生成器202、214所生成的随机数为种子的一些其他的非对称密钥对生成算法来生成非对称密钥对。
在一个实施例中,固定令牌110和可移动令牌112都可从以其各自的随机数生成器202、214所生成的随机数为种子的对称和非对称密钥生成算法生成不可改变的对称密钥和/或非对称密钥对。一般而言,这些不可改变的密钥一旦被令牌110、112激活之后就不能被改变。由于不可改变的密钥在激活之后不能被改变,所以不可改变的密钥可被用于唯一地标识各自令牌110、112的机制的一部分。除了不可改变的密钥,处理单元200、212还可以按照非对称密钥生成算法生成一个或者多个补充的非对称密钥对。在一个示例的实施例中,尽管不可改变的非对称密钥对一旦被激活就不可被改变,计算设备100可根据需要生成补充的非对称密钥对。为了减少将不可改变的非对称密钥暴露给外界攻击,对于大多数加密、解密以及标记操作,计算设备100一般都使用其补充的非对称密钥对。具体而言,计算设备100一般仅向一组小规模的可信实体,例如,认证中心提供不可改变的公共密钥。另外,在一个实施例中计算设备100的固定令牌110从不向请求者提供不可改变的私有密钥,在利用它的一个不可改变的公共密钥和/或它的一个其他补充的非对称密钥对其加密之后,仅向请求者提供可改变的私有密钥。
因此,可以有理由向实体保证用一个补充公共密钥或一个不可改变的公共密钥加密的信息只能用相应的令牌110、112解密或者由在相应的令牌110、112授权下的实体解密。另外,可移动令牌112可向计算设备100和/或远程代理1181...118R提供一些保证,确保与可移动令牌112相关的用户出现在或者位于或者邻近计算设备100。由于可移动令牌112的唯一性以及因为假设了该用户正控制着该可移动令牌112,计算设备100和/或远程代理1181...118R可以有理由假设可移动令牌112的用户出现了或者该用户已经授权了其他人使用该可移动令牌112。
固定令牌110的一个或者多个PCR寄存器210可被用来以可信方式记录和报告量度。为此,处理单元200可支持PCR引用操作,该操作返回被标识的PCR寄存器210的引用或者其内容。处理单元200还可支持PCR扩展操作,该操作在被标识的PCR寄存器210中记录所接收的量度。具体而言,PCR扩展操作可以(1)将接收到的量度连接或者添加到被存储在被标识的PCR寄存器210中的量度上以获取被添加的量度,(2)散列该被添加的量度以获取代表了所接收的量度和先前由被识别的PCR寄存器210所记录的量度的更新的量度,并且(3)将该更新的量度存储在PCR寄存器210中。
在一个实施例中固定令牌110和可移动令牌112都提供对于在请求者和令牌110、112之间建立会话的支持。具体而言,在一个实施例中固定令牌110和可移动令牌112都履行了TCPA SPEC中所描述的针对对象的认证协议(Object-Specific Authentication Protocol,OS-AP)以建立会话。另外,固定令牌110和可移动令牌112都履行了TCPA SPEC的TPM OSAP操作,结果使令牌110、112按照OS-AP协议建立了会话。一般,OS-AP协议要求请求者提供标识令牌110、112的密钥的密钥句柄。密钥句柄仅仅是表明密钥被加载的标签以及用来定位被加载的密钥的机制。令牌110、112然后向请求者提供授权句柄,该授权句柄标识了密钥和从与该密钥相关的使用授权数据计算出的共享秘密。当使用会话时,请求者向令牌110、112提供授权句柄和消息认证代码(MAC),这两者都提供了拥有与密钥相关的使用授权数据的证据和对消息/请求的参数的证明。在一个实施例中,请求者和令牌110、112还基于滚动现时标志(nonce)范例计算认证代码,其中请求者和令牌110、112都生成了被包括在请求及其应答中的随机值或者现时标志,以便帮助防止重放攻击。
固定令牌110的处理单元200还可以支持密封操作。密封操作一般使得固定令牌110将二进制大对象密封到规定的环境,并向请求部件,例如,监视器302、内核312、可信小应用程序314、操作系统308和/或应用程序310提供被密封的二进制大对象。具体而言,请求部件可以建立对于固定令牌110的非对称密钥对的会话。请求部件还可通过所建立的会话向固定令牌110提供要被密封的二进制大对象、一个或多个标识了对其密封二进制大对象的PCR寄存器210的索引以及被标识的PCR寄存器210的期望的量度。固定令牌110可生成密封记录、证据值以及还可能生成二进制大对象对其密封的敏感数据,其中所述密封记录规定了环境标准(例如,对被标识PCR寄存器210的引用),所述证据值以后可被固定令牌110用来验证该固定令牌110创建了被密封的二进制大对象。固定令牌110还可以散列二进制大对象的一个或者多个部分以获取证明该二进制大对象的一个或多个被散列部分的完整性的摘要值。固定令牌110然后可以使用非对称加密算法和所建立的会话的公共密钥,通过对例如使用授权数据、私有密钥以及摘要值的二进制大对象敏感部分进行加密,来生成被密封的二进制大对象。固定令牌110然后可向请求部件提供被密封的二进制大对象。
固定令牌110的处理单元200还可支持解封操作。解封操作一般使得固定令牌110仅当二进制大对象是利用该固定令牌110的密钥被密封的,并且当前环境满足了对该被密封的二进制大对象规定的标准的时候,才解封二进制大对象。具体而言,请求部件可以对固定令牌110的非对称密钥对建立会话,并可以通过所建立的会话向固定令牌110提供被密封的二进制大对象。固定令牌110可以使用所建立的会话的私有密钥对该被密封的二进制大对象的一个或者多个部分解密。如果私有密钥对应被用来密封被密封的二进制大对象的公共密钥,则固定令牌110可从该二进制大对象获取被加密的数据的纯文本译文。否则,固定令牌会遇到出错状态并且/或者会得到被加密的数据的被破坏的表达。固定令牌还可散列二进制大对象的一个或者多个部分以得到该二进制大对象的计算的摘要值。响应于确定了计算的摘要值等于从被密封的二进制大对象获取的摘要值、PCR寄存器210的量度满足了由从被密封的二进制大对象获取的密封记录所规定的标准并且证据值表明固定令牌创建了被密封的二进制大对象,固定令牌110然后可以将该二进制大对象返回到请求部件。否则,固定令牌110可以放弃解封操作并从固定令牌110上擦除二进制大对象、密封记录、摘要值以及计算的摘要值。
以上示例的密封和解封操作通过非对称密码算法使用公共密钥来密封二进制大对象并使用私有密钥来解封二进制大对象。但是,固定令牌可以使用对称密码算法用单个密钥来密封二进制大对象和解封二进制大对象。例如,固定令牌110可包括被用来通过例如DES、3DES、AES和/或其他算法的对称密码算法来密封和解封二进制大对象的嵌入的密钥。
应该认识到,固定令牌110和可移动令牌112可以若干不同的方式来实现。例如,固定令牌110和可移动令牌112可以类似于TCPA SPEC中所详细描述的可信平台模块(TPM)的方式实现。但是,特征和功能显著少于TCPA SPEC的TPM的可移动令牌的低成本实现可能适于一些使用模型,例如本地证明。另外,固定令牌110和可移动令牌112可以以超出以上所描述的OS-AP协议的若干不同的方式来建立会话和/或授权其密钥的使用。
图3示出了一个示例的可信环境300。计算设备100可利用处理器1021...102P的操作模式和特权等级来建立该可信环境300。如所示的,可信环境300可以包括可信虚拟机内核或者监视器302、一个或者多个标准虚拟机(标准VM)304以及一个或者多个可信虚拟机(可信VM)306。可信环境300的监视器302在最高特权处理器环(例如0P)上在保护模式中执行,以管理虚拟机304、306之间的安全和特权屏障。
标准VM 304可包括在VMX模式的最高特权处理器环(例如,0D)上执行的操作系统308和在VMX模式的较低的特权处理器环(例如,3D)上执行的一个或者多个应用程序310。由于监视器302执行于其中的处理器环具有比操作系统308执行于其中的处理器环具有更高的特权,所以操作系统308并不具有对计算设备100的绝对控制权,而是受到监视器302的控制和约束。具体而言,监视器302可防止操作系统308及其应用程序310访问受保护存储器116以及固定令牌110。
监视器302可对内核312进行一种或者多种测量,例如对内核代码的散列,以获取一个或者多个量度,监视器302可以使固定令牌利用可信内核3 12的量度扩展被标识的PCR寄存器210,以及可以将量度记录在存储于受保护存储器116内的相关的PCR的日志中。另外,监视器302可以在受保护存储器116中建立可信VM 306并在所建立的可信VM 306中装入可信内核312。
类似地,可信内核312可以对小应用程序或应用程序314进行一种或者多种测量,例如对小应用程序代码的散列,以获取一个或者多个量度。通过监视器302,可信内核312然后可以使固定令牌110利用小应用程序314的量度扩展被标识PCR寄存器210。可信内核312还可以将量度记录在存储于受保护存储器116内的相关的PCR的日志中。另外,可信内核312可以在受保护存储器116的所建立的可信VM 306中装入可信小应用程序314。
响应于创立图3的可信环境300,计算设备100还可以记录监视器302、处理器1021...102P、芯片组104、BIOS固件(未示出)和/或计算设备100的其他硬件/软件部件的量度。另外,计算设备100可以响应于例如系统启动、应用程序请求、操作系统请求等的各种事件创立可信环境300。
现在参照图4,示出了可以被用于本地证明的被密封的密钥二进制大对象400和受保护密钥二进制大对象402。如所描绘的,被密封的密钥二进制大对象400可以包括一个或者多个完整性数据区404和一个或者多个加密数据区406。完整性数据区404可以包括公共密钥408、密封记录410,并且可能还有其他非敏感数据,例如辅助标识二进制大对象和/或加载二进制大对象的密钥的二进制大对象头。另外,加密数据区406可包括使用授权数据412、私有密钥414以及摘要值416。完整性数据区404的密封记录410可以表明非对称密钥对408、414对哪些PCR寄存器210、相应的量度、证据值以及可能的其他敏感数据密封。另外,摘要值416可证明完整性数据区404的数据并还可证明加密数据区406的数据,以帮助防止通过改变被密封的密钥二进制大对象400的一个或者多个部分来获取对加密数据区406数据的访问的攻击。在一个实施例中,摘要值416可通过对完整性数据区404、使用授权数据412和私有密钥414进行散列来生成。在一个实施例中,数据以纯文本或者不加密的形式被存储在完整性数据区404中,这样使得完整性数据区的数据被读取或者改变而不需要密钥来解密数据。另外,在一个实施例中加密数据区406的数据利用固定令牌110的公共密钥206被加密。如参照图6所详细描述的,没有与固定令牌110建立会话以使用对应于被用来对数据加密的公共密钥206的私有密钥206,请求部件就不能成功地将被密封的密钥二进制大对象400的非对称密钥对408、414加载到固定令牌110中。另外,没有向固定令牌110提供对于被密封的密钥二进制大对象400的使用授权数据412或者对具有使用授权数据412的证明以及满足了由密封记录410所规定的标准的环境,请求部件就不能成功地加载非对称密钥对408、416。
受保护密钥二进制大对象402可以包括一个或者多个完整性数据区418和一个或者多个加密数据区420。完整性数据区418可以包括非敏感数据,例如辅助标识二进制大对象的二进制大对象头。另外,加密数据区420可以包括使用授权数据422、被密封的密钥二进制大对象400和摘要值424。摘要值424可证明完整性数据区418的数据并还可证明加密数据区420的数据,以帮助防止通过改变受保护密钥二进制大对象402的一个或者多个部分来获取对加密数据区420数据的访问的攻击。在一个实施例中,摘要值424可通过对完整性数据区418、被密封的密钥二进制大对象400以及使用授权数据422进行散列而生成。在一个实施例中,数据以纯文本或者非加密的形式被存储于完整性数据区418中,这样使得完整性数据区的数据被读取或者改变而不需要密钥来解密数据。另外,在一个实施例中利用可移动令牌112的公共密钥216对加密数据区420的数据加密。如参照图6所详细描述的,没有与可移动令牌112建立会话以使用对应的私有密钥216,请求部件就不能成功地从受保护密钥二进制大对象402获取被密封的密钥二进制大对象400。另外,没有向可移动令牌112提供对于受保护密钥二进制大对象402的使用授权数据422或者具有使用授权数据422的证据,请求部件就不能成功地获取被密封的密钥二进制大对象400。
现在参照图5和图6,示出了创建受保护密钥二进制大对象402的方法和使用被密封的密钥二进制大对象的方法。一般,图5和图6的方法由请求者启动。为了简化下面的描述,假设请求者是监视器302。但是,请求者可以是例如在监视器302允许下的可信内核312和/或可信小应用程序314的其他模块。另外,以下描述假设请求者和令牌110、112已经具有标识存储于受保护存储器204、216中的密钥206、218的一个或者多个密钥句柄和相关的使用授权数据。例如,作为以前执行的密钥创建和/或密钥加载命令的结果,请求者和令牌110、112可以已经获取了这些信息。具体而言,以下描述假设请求者能够成功地建立会话以使用令牌110、112的密钥对。但是,应该认识到如果请求者没有被授权使用密钥对,则请求者将不能建立会话,从而将不能使用这样的密钥对生成对应的密钥二进制大对象并且将不能加载利用这样的密钥对创建的密钥二进制大对象的密钥对。
图5中示出了生成图4的被密封的密钥二进制大对象的方法。在框500中,监视器302和固定令牌110可为固定令牌110的非对称密钥对建立会话,所述非对称密钥对包括存储于固定令牌110的受保护存储器204中的私有密钥206和对应的公共密钥206。在框502中,监视器302可通过所建立的会话请求固定令牌110创建被密封的密钥二进制大对象400。具体而言,监视器302可以向固定令牌110提供对于被密封的密钥二进制大对象400的使用授权数据412。另外,监视器302可以向固定令牌110提供标识了固定令牌110将被密封的密钥二进制大对象400的密钥408、414密封到其中的PCR寄存器210的一个或多个索引或者标识,并可向固定令牌110提供预期被存储于被标识的PCR寄存器210中的量度。
在框504中,固定令牌110可以创建并返回所请求的被密封的密钥二进制大对象400。具体而言,固定令牌110可以生成包括了私有密钥414和对应的公共密钥408的非对称密钥对408、414,并可以将非对称密钥对408、414存储于其受保护存储器204中。另外,固定令牌110可将非对称密钥对408、414以及使用授权数据412密封到由被监视器302标识的PCR寄存器210的量度所规定的环境。密封的结果是,固定令牌110可生成标识了PCR寄存器210的密封记录410、被标识的PCR寄存器210的量度、证据值以及证明非对称密钥对408、414、使用授权数据412和密封记录410的摘要值416。固定令牌110还可通过利用所建立的会话的公共密钥206,对被密封的密钥二进制大对象400的私有密钥414、使用授权数据412、摘要值416以及任何其他敏感数据加密,来创建被密封的密钥二进制大对象400的加密数据区406。通过利用会话的公共密钥206创建加密数据区406,固定令牌110可以防止对该加密数据区406的数据的访问,因为这些数据只可利用固定令牌110控制之下的对应的私有密钥206来解密。固定令牌110然后可将所请求的被密封的密钥二进制大对象400返回给监视器302。
在框506中,监视器302和可移动令牌112可以为包括了存储于可移动令牌112的受保护存储器216中的私有密钥218和对应的公共密钥218的非对称密钥对建立会话。在框508中,监视器302可以通过所建立的会话请求可移动令牌112从被密封的密钥二进制大对象400生成具有使用授权数据422的受保护密钥二进制大对象402。具体而言,监视器302可以向可移动令牌112提供被密封的密钥二进制大对象400和使用授权数据422。
在框510中,可移动令牌112可以创建并返回所请求的受保护密钥二进制大对象402。具体而言,可移动令牌112可将使用授权数据422和被密封的密钥二进制大对象400密封到可移动令牌112。密封的结果是,可移动令牌112可以生成证明使用授权数据422和被密封的密钥二进制大对象400的摘要值424。可移动令牌112还可以通过利用所建立的会话的公共密钥218,对受保护密钥二进制大对象402的使用授权数据422、被密封的密钥二进制大对象、摘要值424以及任何其他敏感数据加密,来创建加密数据区420。通过利用会话的公共密钥218创建加密数据区420,可移动令牌112可防止对加密数据区420的数据的访问,因为这些数据只可利用可移动令牌112控制之下的对应的私有密钥218来解密。可移动令牌112然后可将所请求的受保护密钥二进制大对象402返回给监视器302。
现在参照图6,示出了加载受保护密钥二进制大对象402的非对称密钥对408、414的方法。在框600中,监视器302和可移动令牌112可为被用来创建受保护密钥二进制大对象402的可移动令牌112的非对称密钥对建立会话。在框602中,监视器302可请求可移动令牌112返回存储于受保护密钥二进制大对象402中的被密封的密钥二进制大对象400。为此,监视器302可以向可移动令牌112提供受保护密钥二进制大对象402和认证代码,该认证代码提供了拥有对受保护密钥二进制大对象402的使用授权数据422或者具有对受保护密钥二进制大对象402的使用授权数据422的知识的证据。监视器302可以若干不同的方式向可移动令牌112提供认证代码。在一个实施例中,监视器302可简单地利用所建立的会话的公共密钥218对使用授权数据422的拷贝加密,并向可移动令牌112提供其使用授权数据422的加密拷贝。
在另一个实施例中,监视器302可生成提供了拥有使用授权数据422的证据和对请求的一个或者多个参数的证明的消息认证代码(MAC)。具体而言,监视器302可以向可移动令牌112提供MAC,该MAC是通过对包括或者基于第二个使用授权数据的共享秘密和包括了请求的一个或者多个参数的消息应用HMAC算法而得到的。在题为“HMAC:用于消息认证的加密钥散列(Keyed-Hashing for Message Authentication)”的请求注释(RFC)2104中详细说明了HMAC算法。HMAC算法主要基于共享秘密和被传送的消息利用密码散列函数,例如MD5或者SHA-1算法,来生成MAC。在一个实施例中,监视器302和可移动令牌112可生成用于HMAC计算的共享秘密,该计算基于第二个使用授权数据和由监视器302和可移动令牌112为所建立的会话而生成的滚动现时标志。此外,监视器302可生成请求的参数的一个或者多个散列并利用所计算的共享秘密和参数散列作为消息通过HMAC算法计算MAC。
在框604中,可移动令牌112可以验证受保护密钥二进制大对象402和对被密封的密钥二进制大对象400的请求。在一个实施例中,可移动令牌112可计算可移动令牌112期望从监视器302接收的认证代码。具体而言,可移动令牌112可对受保护密钥二进制大对象402解密以获取受保护密钥二进制大对象402的被密封的密钥二进制大对象400和使用授权数据422。可移动令牌112然后可以使用从请求中接收到的参数和从受保护密钥二进制大对象402获取的使用授权数据422,以与监视器302同样的方式,计算认证代码或者MAC。响应于确定了所计算的认证代码或MAC与从监视器302接收到的认证代码或MAC不具有预定的关系(例如,相等),在框606中,可移动令牌112可返回出错消息,可关闭所建立的会话,可从可移动令牌112中擦去受保护密钥二进制大对象402和相关的数据,并且可停用可移动令牌112。另外,在框604中可移动令牌112可验证受保护密钥二进制大对象402没有被改变过。具体而言,可移动令牌112可基于使用授权数据422和被密封的密钥二进制大对象400计算摘要值并可确定所计算的摘要值是否与受保护密钥二进制大对象402的摘要值424具有预定关系(例如,相等)。响应于确定了所计算的摘要值不具有预定关系,在框604中可移动令牌112可返回出错消息,可关闭所建立的会话,可从可移动令牌112中擦去受保护密钥二进制大对象402和相关的数据,并且可停用可移动令牌112。
响应于确定了请求是有效的,在框608中可移动令牌112可向监视器302提供被密封的密钥二进制大对象400。在框610中,监视器302和固定令牌110然后可为被用来创建被密封的密钥二进制大对象400的固定令牌110的非对称密钥建立会话。在框612中,监视器302可请求固定令牌110加载被密封的密钥二进制大对象400的非对称密钥对408、414。为此,监视器302可向固定令牌110提供被密封的密钥二进制大对象400和认证代码或MAC,所述认证代码或MAC提供拥有与被密封的密钥二进制大对象400相关的使用授权数据412或具有与被密封的密钥二进制大对象400相关的使用授权数据412的知识的证据。在一个实施例中,监视器302可向固定令牌110提供MAC,该MAC是通过HMAC计算得到的,所述HMAC计算以与上述参照框602所描述的相同的方式使用了基于使用授权数据412的共享秘密。
在框614中,固定令牌110可验证加载被密封的密钥二进制大对象400的非对称密钥对408、414的请求。在一个实施例中,固定令牌110可计算固定令牌110期望从监视器302接收的认证代码。具体而言,固定令牌110可利用所建立的会话的私有密钥206对被密封的密钥二进制大对象400解密以获取被密封的密钥二进制大对象400的非对称密钥对408、414、使用授权数据412、密封记录410以及摘要值416。固定令牌110然后可以使用从请求接收到的参数和从第一被密封的密钥二进制大对象获取的第一个使用授权数据,以与监视器302同样的方式,计算认证代码或MAC。响应于确定了所计算的认证代码或MAC与从监视器302接收到的认证代码或MAC不具有预定关系(例如,相等),在框616中固定令牌110可返回出错消息,可关闭所建立的会话,可从固定令牌110上擦去第一个被密封的密钥二进制大对象和相关的数据,并可停用可移动令牌112。另外,在框614中固定令牌110可以验证被密封的二进制大对象400没有被改变过。具体而言,固定令牌110可基于使用授权数据412、非对称密钥对408、414以及密封记录410计算摘要值,并可确定所计算的摘要值是否与被密封的密钥二进制大对象400的摘要值416具有预定关系(例如,相等)。响应于确定了所计算的摘要值不具有预定关系,在框616中固定令牌可返回出错消息,可关闭所建立的会话,可从固定令牌110上擦去被密封的密钥二进制大对象和相关的数据,并可停用可移动令牌112。
在框618中,固定令牌110还可验证环境300适于加载被密封的密钥二进制大对象400的非对称密钥408。具体而言,固定令牌110可确定密封记录410的量度是否与PCR寄存器210的量度具有预定关系(例如,相等)并确定密封记录410的证据值是否表明固定令牌110创建了被密封的密钥二进制大对象400。响应于确定了密封记录410的量度与PCR寄存器210不具有预定关系或者确定了固定令牌110没有创建被密封的密钥二进制大对象400,在框616中,固定令牌可返回出错消息,可关闭所建立的会话,可从固定令牌110上擦去被密封的密钥二进制大对象和相关的数据,并可停用可移动令牌112。
响应于确定了请求和环境是有效的,在框620中,固定令牌110可向监视器302提供被密封的密钥二进制大对象400的公共密钥408和引用存储于固定令牌110的受保护存储器204中的非对称密钥对408、414的密钥句柄。监视器302以后可将该密钥句柄提供给固定令牌110以建立会话来使用由该密钥句柄标识的非对称密钥对408、414。
图5和图6的方法一般结果是建立非对称密钥对,该密钥对仅当可移动令牌112出现并且,可选地,环境300如由PCR寄存器210的量度所表明的那样合适的时候,才可被使用。计算设备100和/或远程代理1181...118R从而可基于被密封的密钥二进制大对象400的密钥408是否被固定令牌110成功地加载和/或解密秘密的能力来确定可移动令牌112的用户出现,所述秘密只可利用被密封的密钥二进制大对象400的密钥408被解密。
另外,用户可使用可移动令牌112来确定计算设备100满足被密封的密钥二进制大对象400的密钥被密封于其中的环境的标准。具体而言,用户可基于被密封的密钥二进制大对象400的密钥408是否被固定令牌110成功地加载和/或解密秘密的能力来确定计算设备100满足环境标准,所述秘密只可利用被密封的密钥二进制大对象400的密钥408被解密。
计算设备100可响应于执行机器可读介质的指令进行图5和图6所示的所有方法或者其一部分,其中机器可读介质是例如只读存储器(ROM)、随机访问存储器(RAM)、磁盘存储介质、光存储介质、闪存设备和/或电、光、声或其他形式的传播信号,例如,载波、红外信号、数字信号、模拟信号的介质。此外,尽管图5和图6的方法被示为系列操作,然而在一些实施例中,计算设备100可以并行或按不同次序来进行该方法的各种所示的操作。
尽管本发明的某些特征已经参考示例实施例被描述,然而该描述并不是用来在限定的意义上被解释。示例实施例以及本发明其他实施例的对于与本发明相关的领域的技术人员是显而易见的各种修改,被视为落在本发明的精神和范围之内。

Claims (31)

1.一种方法,包括
请求固定令牌创建包括了第一密钥对和第一使用授权数据的被密封的密钥二进制大对象,其中为了使用所述第一密钥对的私有密钥需要对所述第一使用授权数据的知识,以及
请求可移动令牌创建包括了所述被密封的密钥二进制大对象和第二使用授权数据的受保护密钥二进制大对象,其中为了从所述受保护密钥二进制大对象获取所述被密封的密钥二进制大对象需要对所述第二使用授权数据的知识。
2.如权利要求1所述的方法,包括
利用所述固定令牌和所述固定令牌的公共密钥,对所述第一密钥对的所述私有密钥以及所述第一使用授权数据加密,以及
利用所述加密的私有密钥和所述加密的第一使用授权数据,创建被密封的密钥二进制大对象。
3.如权利要求2所述的方法,包括
利用所述可移动令牌和所述可移动令牌的公共密钥,对所述被密封的密钥二进制大对象和所述第二使用授权数据加密,以及
利用所述加密的被密封的密钥二进制大对象和所述加密的第二使用授权数据,创建所述受保护密钥二进制大对象。
4.如权利要求1所述的方法,包括
请求所述可移动令牌从所述受保护密钥二进制大对象返回所述被密封的密钥二进制大对象,
向所述可移动令牌提供对拥有所述第二使用授权数据的证据,以及
仅当对拥有所述第二使用授权数据的所述证据是有效的时候,从所述可移动令牌获取所述被密封的密钥二进制大对象。
5.如权利要求4所述的方法,包括
请求所述固定令牌从所述被密封的密钥二进制大对象加载所述第一密钥对,以及
向所述固定令牌提供对拥有所述第一使用授权数据的证据,以及
仅当对拥有所述第一使用授权数据的所述证据是有效的时候,获取存储于所述固定令牌中的对于所述第一密钥对的密钥句柄。
6.如权利要求1所述的方法,包括
向所述可移动令牌发送请求以从所述受保护密钥二进制大对象返回所述被密封的密钥二进制大对象,所述请求包括对拥有所述第二使用授权数据的证据,以及
仅当所述可移动令牌出现并且对拥有所述第二使用授权数据的所述证据是有效的时候,从所述可移动令牌获取所述被密封的密钥二进制大对象。
7.如权利要求6所述的方法,包括
向所述固定令牌发送请求以从所述被密封的密钥二进制大对象加载所述第一密钥对,所述请求包括对拥有所述第一使用授权数据的证据,以及
仅当所述对拥有所述第一使用授权数据的所述证据是有效的并且与所述请求相关的环境满足由所述被密封的密钥二进制大对象所规定的标准的时候,获取存储于所述固定令牌中的对于所述第一密钥对的密钥句柄。
8.如权利要求3所述的方法,包括
向所述可移动令牌提供对所述受保护密钥二进制大对象的所述被密封的密钥二进制大对象的请求,所述请求提供了对拥有所述第二使用授权数据的证据,
利用所述可移动令牌使用所述可移动令牌的私有密钥,对所述受保护密钥二进制大对象的所述加密的被密封的密钥二进制大对象以及所述加密的第二使用授权数据解密,以及
响应于所述可移动令牌确定了对拥有所述第二使用授权数据的所述证据是有效的,从所述可移动令牌接收所述被密封的密钥二进制大对象。
9.如权利要求8所述的方法,还包括
响应于确定了对拥有所述第二使用授权数据的所述证据是无效的,从所述可移动令牌擦去所述受保护密钥二进制大对象和相关的数据。
10.如权利要求9所述的方法,还包括响应于确定了对拥有所述第二使用授权数据的所述证据是无效的,停用所述可移动令牌。
11.如权利要求8所述的方法,包括
向所述固定令牌提供请求以加载所述被密封的密钥二进制大对象的所述第一密钥对,所述请求提供了对拥有所述第一使用授权数据的证据,
利用所述固定令牌使用所述固定令牌的私有密钥,对所述被密封的密钥二进制大对象的所述加密的私有密钥和所述加密的第一使用授权数据解密,以及
响应于所述固定令牌确定了对拥有所述第一使用授权数据的所述证据是有效的,接收对于所述所述被密封的密钥二进制大对象的第一密钥对的密钥句柄。
12.如权利要求11所述的方法,还包括
响应于确定了对拥有所述第一使用授权数据的所述证据是无效的,从所述固定令牌擦去所述被密封的密钥二进制大对象和相关的数据。
13.如权利要求12所述的方法,还包括响应于确定了对拥有所述第一使用授权数据的所述证据是无效的,停用所述可移动令牌。
14.一种机器可读介质,包括多个指令,所述多个指令当被执行时使处理器
请求可移动令牌从包括使用授权数据的受保护密钥二进制大对象提供被密封的密钥二进制大对象,
向所述可移动令牌提供基于所述处理器具有的对于所述受保护密钥二进制大对象的使用授权数据的认证代码,以及
仅当所述认证代码表明所述处理器的所述使用授权数据与所述受保护密钥二进制大对象的所述授权数据具有预定关系时,从所述可移动令牌接收所述被密封的密钥二进制大对象。
15.如权利要求14所述的机器可读介质,其中,所述被密封的密钥二进制大对象包括第一使用授权数据,并且所述多个指令还使所述处理器
请求固定令牌从所述被密封的密钥二进制大对象加载第一密钥对,
向所述固定令牌提供基于所述处理器具有的对于所述被密封的密钥二进制大对象的第一使用授权数据的第一认证代码,以及
仅当所述第一认证代码表明所述处理器的所述第一使用授权数据与所述被密封的密钥二进制大对象的所述第一授权数据具有预定关系时,接收对于所述第一密钥对的第一密钥句柄。
16.如权利要求15所述的机器可读介质,其中,所述多个指令还使所述处理器
基于使用了第一共享秘密的第一HMAC计算,生成所述第一认证代码,所述第一共享秘密是基于所述处理器具有的对于所述被密封的密钥二进制大对象的所述第一使用授权数据,
基于使用了第二共享秘密的第二HMAC计算,生成所述认证代码,所述第二共享秘密是基于所述处理器具有的对于所述受保护密钥二进制大对象的所述使用授权数据。
17.如权利要求15所述的机器可读介质,其中,所述多个指令还使所述处理器
基于第一HMAC计算,生成所述认证代码,所述HMAC计算使用了基于所述处理器具有的对于所述被密封的密钥二进制大对象的所述第一使用授权数据的第一共享秘密以及与所述固定令牌相关的第一滚动现时标志,
基于第二HMAC计算,生成所述认证代码,所述HMAC计算使用了基于所述处理器具有的对于所述受保护密钥二进制大对象的所述使用授权数据的第二共享秘密以及与所述可移动令牌相关的第二滚动现时标志。
18.如权利要求15所述的机器可读介质,其中,所述多个指令还使所述处理器
响应于接收所述第一密钥句柄确定与所述可移动令牌相关的用户出现。
19.如权利要求15所述的机器可读介质,其中,所述多个指令还使所述处理器
响应于成功地使用由所述第一密钥句柄所标识的所述第一密钥对解密秘密,确定与所述可移动令牌相关的用户出现。
20.如权利要求14所述的机器可读介质,其中,所述被密封的密钥二进制大对象包括第一使用授权数据,并且所述多个指令还使所述处理器
向所述固定令牌提供至少一个环境量度,
请求固定令牌从所述被密封的密钥二进制大对象加载第一密钥对,
向所述固定令牌提供第一认证代码,所述第一认证代码是基于所述处理器具有的对于所述被密封的密钥二进制大对象的第一使用授权数据,以及
仅当所述第一认证代码表明所述处理器的所述第一使用授权数据与所述被密封的密钥二进制大对象的所述第一授权数据具有预定关系并且所述至少一个量度表明所述环境满足由所述被密封的密钥二进制大对象规定的标准的时候,接收对于所述第一密钥对的第一密钥句柄。
21.如权利要求20所述的机器可读介质,其中,所述多个指令还使所述处理器
响应于接收所述第一密钥句柄,确定所述环境满足由所述被密封的密钥二进制大对象所规定的所述标准。
22.如权利要求20所述的机器可读介质,其中,所述多个指令还使所述处理器
响应于成功地利用由所述第一密钥句柄所标识的所述第一密钥对解密秘密,确定所述环境满足了由所述被密封的密钥二进制大对象规定的所述标准。
23.一种计算设备,包括
固定令牌,所述固定令牌包括第一处理器单元和第一受保护存储器,所述第一处理器单元响应于确定了所述第一认证代码与被密封的密钥二进制大对象的第一使用授权数据具有预定关系,将所述被密封的密钥二进制大对象的第一密钥对加载到所述第一受保护存储器中,
可移动令牌,所述可移动令牌包括第二处理单元和第二受保护存储器,所述第二处理单元响应于确定了第二认证代码与受保护密钥二进制大对象的第二使用授权数据具有预定关系,从所述受保护密钥二进制大对象返回所述被密封的密钥二进制大对象,
可移动令牌接口,所述可移动令牌接口使得所述可移动令牌能够被耦合到所述计算设备并能够从所述计算设备移除,
处理器,所述处理器向所述可移动令牌提供对所述被密封的密钥二进制大对象的请求,所述请求包括所述受保护密钥二进制大对象和所述第二认证代码,并且所述处理器向所述固定令牌提供加载所述第一密钥对的请求,所述请求包括所述被密封的密钥二进制大对象和所述第一认证代码。
24.如权利要求23所述的计算设备,其中
所述固定令牌将响应于成功地加载所述第一密钥对,提供对于所述第一密钥对的第一密钥句柄,并且
所述处理器将响应于接收所述第一密钥句柄,确定与所述可移动令牌相关的用户出现。
25.如权利要求23所述的计算设备,其中
所述固定令牌将响应于成功地加载了所述第一密钥对,提供对于所述第一密钥对的第一密钥句柄,并且
所述处理器将响应于成功地使用由所述第一密钥句柄标识的所述第一密钥对解密秘密,确定与所述可移动令牌相关的用户出现。
26.如权利要求23所述的计算设备,其中
所述固定令牌的所述第一受保护存储器包括用于存储环境量度的寄存器,
所述处理器将向所述固定令牌提供所述环境的多个量度,并且
所述第一处理单元将仅当存储于所述寄存器中的所述量度表明所述环境满足了所述被密封的密钥二进制大对象的标准的时候,将所述第一密钥对加载到所述第一受保护存储器中。
27.如权利要求26所述的计算设备,其中
所述固定令牌将响应于成功地加载所述第一密钥对,提供对于所述第一密钥对的第一密钥句柄,并且
所述处理器将响应于接收所述第一密钥句柄,确定所述环境满足了由所述被密封的密钥二进制大对象规定的所述标准。
28.如权利要求26所述的计算设备,其中
所述固定令牌将响应于成功地加载所述第一密钥对,提供对于所述第一密钥对的第一密钥句柄,并且
所述处理器将响应于成功地使用由所述第一密钥句柄标识的所述第一密钥对解密秘密,确定所述环境满足了由所述被密封的密钥二进制大对象规定的所述标准。
29.如权利要求26所述的计算设备,其中
所述第一处理单元将响应于确定了所述环境没有满足所述被密封的密钥二进制大对象的所述标准,从所述固定令牌擦去所述被密封的密钥二进制大对象和任何相关的数据。
30.如权利要求23所述计算设备,其中
所述固定令牌包括用于创建所述被密封的密钥二进制大对象的密钥对,
所述第一处理单元只响应于通过为被用来创建所述被密封的密钥二进制大对象的所述密钥对而建立的第一会话而接收的请求,加载所述被密封的密钥二进制大对象的所述第一密钥对,并且
所述处理器将在向所述固定令牌提供加载所述第一密钥对的所述请求之前,建立所述第一会话。
31.如权利要求30所述的计算设备,其中
所述可移动令牌包括用于创建所述受保护密钥二进制大对象的密钥对,
所述第二处理单元将只响应于通过为用于创建所述受保护密钥二进制大对象的所述密钥对而建立的第二会话而接收的请求,加载所述被密封的密钥二进制大对象的所述第一密钥对,并且
所述处理器将在向所述可移动令牌提供对于所述被密封的密钥二进制大对象的所述请求之前,建立所述第二会话。
CNB2003101212131A 2002-12-16 2003-12-15 使用固定令牌和可移动令牌两者的计算设备及其方法 Expired - Fee Related CN100566243C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/321,751 US7318235B2 (en) 2002-12-16 2002-12-16 Attestation using both fixed token and portable token
US10/321,751 2002-12-16

Publications (2)

Publication Number Publication Date
CN1514571A true CN1514571A (zh) 2004-07-21
CN100566243C CN100566243C (zh) 2009-12-02

Family

ID=32507124

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2003101212131A Expired - Fee Related CN100566243C (zh) 2002-12-16 2003-12-15 使用固定令牌和可移动令牌两者的计算设备及其方法

Country Status (7)

Country Link
US (1) US7318235B2 (zh)
EP (1) EP1573468A2 (zh)
KR (1) KR100737628B1 (zh)
CN (1) CN100566243C (zh)
AU (1) AU2003290767A1 (zh)
TW (1) TWI255122B (zh)
WO (1) WO2004061628A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8090939B2 (en) 2005-10-21 2012-01-03 Hewlett-Packard Development Company, L.P. Digital certificate that indicates a parameter of an associated cryptographic token
CN101772771B (zh) * 2007-06-20 2012-11-14 诺基亚公司 用于通信系统中的远程消息证实的方法
CN111143084A (zh) * 2019-11-19 2020-05-12 厦门天锐科技股份有限公司 服务程序与界面程序的交互方法、装置、设备及介质
CN116522300A (zh) * 2023-07-04 2023-08-01 北京点聚信息技术有限公司 一种电子印章智能管理系统

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7480806B2 (en) * 2002-02-22 2009-01-20 Intel Corporation Multi-token seal and unseal
US7890771B2 (en) 2002-04-17 2011-02-15 Microsoft Corporation Saving and retrieving data based on public key encryption
US7571472B2 (en) * 2002-12-30 2009-08-04 American Express Travel Related Services Company, Inc. Methods and apparatus for credential validation
US7454622B2 (en) * 2002-12-31 2008-11-18 American Express Travel Related Services Company, Inc. Method and system for modular authentication and session management
US7181016B2 (en) * 2003-01-27 2007-02-20 Microsoft Corporation Deriving a symmetric key from an asymmetric key for file encryption or decryption
US7210034B2 (en) * 2003-01-30 2007-04-24 Intel Corporation Distributed control of integrity measurement using a trusted fixed token
US20050044408A1 (en) * 2003-08-18 2005-02-24 Bajikar Sundeep M. Low pin count docking architecture for a trusted platform
US8190893B2 (en) 2003-10-27 2012-05-29 Jp Morgan Chase Bank Portable security transaction protocol
US7797544B2 (en) * 2003-12-11 2010-09-14 Microsoft Corporation Attesting to establish trust between computer entities
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
US7318150B2 (en) * 2004-02-25 2008-01-08 Intel Corporation System and method to support platform firmware as a trusted process
US7631360B2 (en) * 2004-06-12 2009-12-08 Microsoft Corporation Hardware protection
CN104104517B (zh) * 2004-10-15 2017-11-07 弗里塞恩公司 一次性密码验证的方法和系统
US7412596B2 (en) * 2004-10-16 2008-08-12 Lenovo (Singapore) Pte. Ltd. Method for preventing system wake up from a sleep state if a boot log returned during the system wake up cannot be authenticated
US20060090078A1 (en) * 2004-10-21 2006-04-27 Blythe Michael M Initiation of an application
US7475247B2 (en) * 2004-12-16 2009-01-06 International Business Machines Corporation Method for using a portable computing device as a smart key device
US8761400B2 (en) * 2005-07-15 2014-06-24 Microsoft Corporation Hardware linked product key
US7809957B2 (en) * 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US9258124B2 (en) 2006-04-21 2016-02-09 Symantec Corporation Time and event based one time password
US8332637B2 (en) * 2006-06-06 2012-12-11 Red Hat, Inc. Methods and systems for nonce generation in a token
US20080040613A1 (en) * 2006-08-14 2008-02-14 David Carroll Challener Apparatus, system, and method for secure password reset
WO2008074366A1 (en) * 2006-12-19 2008-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Managing user access in a communications network
US20080320263A1 (en) * 2007-06-20 2008-12-25 Daniel Nemiroff Method, system, and apparatus for encrypting, integrity, and anti-replay protecting data in non-volatile memory in a fault tolerant manner
US8620818B2 (en) * 2007-06-25 2013-12-31 Microsoft Corporation Activation system architecture
US7853804B2 (en) * 2007-09-10 2010-12-14 Lenovo (Singapore) Pte. Ltd. System and method for secure data disposal
EP2260397A4 (en) * 2008-04-02 2013-05-29 Hewlett Packard Development Co CHANGING DISK DRIVE DATA
FR2929788B1 (fr) * 2008-04-08 2011-11-04 Eads Secure Networks Gestion d'utilisation securisee de terminal
US9276750B2 (en) * 2013-07-23 2016-03-01 Intel Corporation Secure processing environment measurement and attestation
US9652759B2 (en) 2014-07-11 2017-05-16 Google Inc. Hands-free transactions
US20160012426A1 (en) 2014-07-11 2016-01-14 Google Inc. Hands-free transactions with a challenge and response
US20160012430A1 (en) * 2014-07-11 2016-01-14 Google Inc. Hands-free offline communications
CN108780477B (zh) 2016-03-01 2022-10-21 谷歌有限责任公司 用于免手操交易的面部简档修改
US10474879B2 (en) 2016-07-31 2019-11-12 Google Llc Automatic hands free service requests
US10459664B1 (en) 2017-04-10 2019-10-29 Pure Storage, Inc. Virtualized copy-by-reference
US10474809B1 (en) * 2019-07-12 2019-11-12 Capital One Services, Llc Computer-based systems and computing devices configured to utilize one or more authentication servers for securing device commands transmissions and methods of use thereof
JP2022540653A (ja) * 2019-07-12 2022-09-16 エトパス,リミティド ライアビリティ カンパニー データ保護及び回復システム及び方法
US20200127850A1 (en) * 2019-12-20 2020-04-23 Intel Corporation Certifying a trusted platform module without privacy certification authority infrastructure
US11521206B2 (en) * 2020-12-07 2022-12-06 Jpmorgan Chase Bank, N.A. Systems and methods for providing immutable identifiers for aggregated data structures

Family Cites Families (145)

* Cited by examiner, † Cited by third party
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
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
JPS5823570B2 (ja) 1978-11-30 1983-05-16 国産電機株式会社 液面検出装置
US4307447A (en) 1979-06-19 1981-12-22 Gould Inc. Programmable controller
US4529870A (en) 1980-03-10 1985-07-16 David Chaum Cryptographic identification, financial transaction, and credential device
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
JPS58140862A (ja) 1982-02-16 1983-08-20 Toshiba Corp 相互排他方式
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
US4975836A (en) 1984-12-19 1990-12-04 Hitachi, Ltd. Virtual computer system
JPS61206057A (ja) 1985-03-11 1986-09-12 Hitachi Ltd アドレス変換装置
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
US4843541A (en) 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
US5007082A (en) 1988-08-03 1991-04-09 Kelly Services, Inc. Computer software encryption apparatus
US4974159A (en) 1988-09-13 1990-11-27 Microsoft Corporation Method of transferring control in a multitasking computer system
US5079737A (en) 1988-10-25 1992-01-07 United Technologies Corporation Memory management unit for the MIL-STD 1750 bus
JPH02171934A (ja) 1988-12-26 1990-07-03 Hitachi Ltd 仮想計算機システム
JPH02208740A (ja) 1989-02-09 1990-08-20 Fujitsu Ltd 仮想計算機制御方式
JP2590267B2 (ja) 1989-06-30 1997-03-12 株式会社日立製作所 仮想計算機における表示制御方式
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
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
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
US5319760A (en) 1991-06-28 1994-06-07 Digital Equipment Corporation Translation buffer for virtual machines with address space match
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
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
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.
US5628023A (en) 1993-04-19 1997-05-06 International Business Machines Corporation Virtual storage computer system having methods and apparatus for providing token-controlled access to protected pages of memory via a token-accessible view
JPH06348867A (ja) 1993-06-04 1994-12-22 Hitachi Ltd マイクロコンピュータ
US5444850A (en) 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
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
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
US5978481A (en) 1994-08-16 1999-11-02 Intel Corporation Modem compatible method and apparatus for encrypting data that is transparent to software applications
JPH0883211A (ja) 1994-09-12 1996-03-26 Mitsubishi Electric Corp データ処理装置
DE69534757T2 (de) 1994-09-15 2006-08-31 International Business Machines Corp. System und Verfahren zur sicheren Speicherung und Verteilung von Daten unter Verwendung digitaler Unterschriften
US6058478A (en) * 1994-09-30 2000-05-02 Intel Corporation Apparatus and method for a vetted field upgrade
US6741991B2 (en) * 1994-09-30 2004-05-25 Mitsubishi Corporation Data management 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
US5727061A (en) * 1995-02-13 1998-03-10 Eta Technologies Corporation Personal access management systems
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
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
US6093213A (en) * 1995-10-06 2000-07-25 Advanced Micro Devices, Inc. Flexible implementation of a system management mode (SMM) in a processor
JP3693721B2 (ja) 1995-11-10 2005-09-07 Necエレクトロニクス株式会社 フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法
US5790668A (en) * 1995-12-19 1998-08-04 Mytec Technologies Inc. Method and apparatus for securely handling data in a database of biometrics and associated data
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
AU734654B2 (en) * 1996-02-09 2001-06-21 Integrated Technologies Of America, Inc. Access control/crypto 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
US5815665A (en) 1996-04-03 1998-09-29 Microsoft Corporation System and method for providing trusted brokering services over a distributed network
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
US6175925B1 (en) * 1996-06-13 2001-01-16 Intel Corporation Tamper resistant player for scrambled contents
US6178509B1 (en) * 1996-06-13 2001-01-23 Intel Corporation Tamper resistant methods and apparatus
US6205550B1 (en) * 1996-06-13 2001-03-20 Intel Corporation Tamper resistant methods and apparatus
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
US5944821A (en) 1996-07-11 1999-08-31 Compaq Computer Corporation Secure software registration and integrity assessment in a computer system
US6199152B1 (en) * 1996-08-22 2001-03-06 Transmeta Corporation Translated memory protection apparatus for an advanced microprocessor
US5740178A (en) 1996-08-29 1998-04-14 Lucent Technologies Inc. Software for controlling a reliable backup memory
US6055637A (en) 1996-09-27 2000-04-25 Electronic Data Systems Corporation System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential
US5844986A (en) 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US5937063A (en) 1996-09-30 1999-08-10 Intel Corporation Secure boot
US5935242A (en) 1996-10-28 1999-08-10 Sun Microsystems, Inc. Method and apparatus for initializing a device
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
US6044478A (en) 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
US5987557A (en) 1997-06-19 1999-11-16 Sun Microsystems, Inc. Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU)
US6035374A (en) 1997-06-25 2000-03-07 Sun Microsystems, Inc. Method of executing coded instructions in a multiprocessor having shared execution resources including active, nap, and sleep states in accordance with cache miss latency
US6014745A (en) * 1997-07-17 2000-01-11 Silicon Systems Design Ltd. Protection for customer programs (EPROM)
US5978475A (en) 1997-07-18 1999-11-02 Counterpane Internet Security, Inc. Event auditing system
US5919257A (en) 1997-08-08 1999-07-06 Novell, Inc. Networked workstation intrusion detection system
US6282657B1 (en) * 1997-09-16 2001-08-28 Safenet, Inc. Kernel mode protection
US5935247A (en) 1997-09-18 1999-08-10 Geneticware Co., Ltd. Computer system having a genetic code that cannot be directly accessed and a method of maintaining the same
US5970147A (en) 1997-09-30 1999-10-19 Intel Corporation System and method for configuring and registering a cryptographic device
US6108644A (en) * 1998-02-19 2000-08-22 At&T Corp. System and method for electronic transactions
US6131166A (en) * 1998-03-13 2000-10-10 Sun Microsystems, Inc. System and method for cross-platform application level power management
US6473800B1 (en) * 1998-07-15 2002-10-29 Microsoft Corporation Declarative permission requests in a computer system
US6393565B1 (en) * 1998-08-03 2002-05-21 Entrust Technologies Limited Data management system and method for a limited capacity cryptographic storage unit
US20020004900A1 (en) * 1998-09-04 2002-01-10 Baiju V. Patel Method for secure anonymous communication
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US6138239A (en) * 1998-11-13 2000-10-24 N★Able Technologies, Inc. Method and system for authenticating and utilizing secure resources in a computer system
US6473508B1 (en) * 1998-12-22 2002-10-29 Adam Lucas Young Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys
US6560627B1 (en) * 1999-01-28 2003-05-06 Cisco Technology, Inc. Mutual exclusion at the record level with priority inheritance for embedded systems using one semaphore
US7111290B1 (en) * 1999-01-28 2006-09-19 Ati International Srl Profiling program execution to identify frequently-executed portions and to assist binary translation
JP4812168B2 (ja) * 1999-02-15 2011-11-09 ヒューレット・パッカード・カンパニー 信用コンピューティング・プラットフォーム
US7225333B2 (en) * 1999-03-27 2007-05-29 Microsoft Corporation Secure processor architecture for use with a digital rights management (DRM) system on a computing device
US6615278B1 (en) * 1999-03-29 2003-09-02 International Business Machines Corporation Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an OS/2 operating system environment
US6684326B1 (en) * 1999-03-31 2004-01-27 International Business Machines Corporation Method and system for authenticated boot operations in a computer system of a networked computing environment
US6529909B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Method for translating an object attribute converter in an information services patterns environment
JP3710671B2 (ja) * 2000-03-14 2005-10-26 シャープ株式会社 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法
US6678825B1 (en) * 2000-03-31 2004-01-13 Intel Corporation Controlling access to multiple isolated memories in an isolated execution environment
GB0020416D0 (en) * 2000-08-18 2000-10-04 Hewlett Packard Co Trusted system
US20020129261A1 (en) * 2001-03-08 2002-09-12 Cromer Daryl Carvis Apparatus and method for encrypting and decrypting data recorded on portable cryptographic tokens
US7631160B2 (en) * 2001-04-04 2009-12-08 Advanced Micro Devices, Inc. Method and apparatus for securing portions of memory
US20030005317A1 (en) * 2001-06-28 2003-01-02 Audebert Yves Louis Gabriel Method and system for generating and verifying a key protection certificate
US20030002668A1 (en) * 2001-06-30 2003-01-02 Gary Graunke Multi-level, multi-dimensional content protections
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
DE10158531B4 (de) * 2001-11-29 2006-09-28 Universitätsklinikum Freiburg Verfahren zur Messung der Magnetresonanz (NMR) mittels Spin-Echos
US7103771B2 (en) * 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US7475250B2 (en) * 2001-12-19 2009-01-06 Northrop Grumman Corporation Assignment of user certificates/private keys in token enabled public key infrastructure system
US20030126453A1 (en) * 2001-12-31 2003-07-03 Glew Andrew F. Processor supporting execution of an authenticated code instruction
US7308576B2 (en) * 2001-12-31 2007-12-11 Intel Corporation Authenticated code module
US7242768B2 (en) * 2002-01-14 2007-07-10 Lenovo (Singapore) Pte. Ltd. Super secure migratable keys in TCPA
US7107460B2 (en) * 2002-02-15 2006-09-12 International Business Machines Corporation Method and system for securing enablement access to a data security device
US7130999B2 (en) * 2002-03-27 2006-10-31 Intel Corporation Using authentication certificates for authorization
US7343493B2 (en) * 2002-03-28 2008-03-11 Lenovo (Singapore) Pte. Ltd. Encrypted file system using TCPA
US7028149B2 (en) * 2002-03-29 2006-04-11 Intel Corporation System and method for resetting a platform configuration register
US7165181B2 (en) * 2002-11-27 2007-01-16 Intel Corporation System and method for establishing trust without revealing identity

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8090939B2 (en) 2005-10-21 2012-01-03 Hewlett-Packard Development Company, L.P. Digital certificate that indicates a parameter of an associated cryptographic token
CN1956372B (zh) * 2005-10-21 2013-11-06 惠普开发有限公司 指示相关密码令牌的参数的数字证书
CN101772771B (zh) * 2007-06-20 2012-11-14 诺基亚公司 用于通信系统中的远程消息证实的方法
CN111143084A (zh) * 2019-11-19 2020-05-12 厦门天锐科技股份有限公司 服务程序与界面程序的交互方法、装置、设备及介质
CN111143084B (zh) * 2019-11-19 2023-05-09 厦门天锐科技股份有限公司 服务程序与界面程序的交互方法、装置、设备及介质
CN116522300A (zh) * 2023-07-04 2023-08-01 北京点聚信息技术有限公司 一种电子印章智能管理系统
CN116522300B (zh) * 2023-07-04 2023-09-08 北京点聚信息技术有限公司 一种电子印章智能管理系统

Also Published As

Publication number Publication date
US20040117625A1 (en) 2004-06-17
US7318235B2 (en) 2008-01-08
TW200423672A (en) 2004-11-01
KR100737628B1 (ko) 2007-07-10
KR20050085678A (ko) 2005-08-29
CN100566243C (zh) 2009-12-02
WO2004061628A3 (en) 2005-01-27
TWI255122B (en) 2006-05-11
AU2003290767A1 (en) 2004-07-29
EP1573468A2 (en) 2005-09-14
WO2004061628A2 (en) 2004-07-22

Similar Documents

Publication Publication Date Title
CN100566243C (zh) 使用固定令牌和可移动令牌两者的计算设备及其方法
CN100335985C (zh) 将虚拟令牌连接到物理令牌
CN100456200C (zh) 多令牌密封和解封
CN103026347B (zh) 多核架构中的虚拟机内存划分
US9147052B2 (en) Provisioning a computing system for digital rights management
US8689010B2 (en) Secure storage for digital rights management
US10992481B2 (en) Two-dimensional code generation method, apparatus, data processing method, apparatus, and server
WO2018071244A1 (en) Method and system for secure data storage and retrieval
EP1763721A1 (en) Systems and methods for performing secure communications between an authorized computing platform and a hardware component
US7693286B2 (en) Method of delivering direct proof private keys in signed groups to devices using a distribution CD
WO2006025952A2 (en) Method of delivering direct proof private keys to devices using a distribution cd
US20040117318A1 (en) Portable token controlling trusted environment launch
CN1925392A (zh) 一种设备合法性认证的方法
CN101441692A (zh) 实现计算机硬件和软件绑定的方法
US20090006854A1 (en) Secure time source operations for digital rights management
US8612753B2 (en) Method and apparatus for protected code execution on clients
CN108521424B (zh) 面向异构终端设备的分布式数据处理方法
US11706022B1 (en) Method for trusted data decryption based on privacy-preserving computation
CN1808456A (zh) 在便携式终端主机上添加可信平台的方法
Lee et al. How to securely record logs based on ARM trustzone
CN112787996A (zh) 一种密码设备管理方法及系统
US20220060314A1 (en) Privacy preserving fully homomorphic encryption with circuit verification
CN104915607A (zh) 一种基于移动终端的密码数据处理和交换方法
KR100897075B1 (ko) 배포 cd를 사용하는 장치에 서명 그룹의 다이렉트 증명개인 키들을 전달하는 방법
CN114244565B (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091202

Termination date: 20181215