一种用于安全发送授权数据的平台和方法

文档序号:7672586阅读:295来源:国知局
专利名称:一种用于安全发送授权数据的平台和方法
背景1.领域本发明涉及数据安全的领域。具体而言,本发明涉及一种使用暂时非对称密钥对安全地发送信息的平台和方法。
2.背景在现今的社会中,以对合法接收者明确而不含糊但对任何不合法的接受者不能理解的方式将数字数据从一个位置发送到另一个位置正成为必要。因此,这样的数据典型地通过执行某种预定加密算法的软件应用来加密并且以被加密的形式发送给合法接收者。合法接收者然后解密所发送的数据以便于使用。
数据的加密/解密通常是通过对称密钥密码术实现的。对于对称密钥密码术,在通过不安全的链路发送之前,发送者使用密钥来加密数据。一旦收到,接收者使用相同的密钥来解密该数据。尽管对称密钥密码术在计算上是简单的,但它需要复杂的密钥管理。例如,每个发送者将需要不同的对称密钥来与预期的接收者通信,由此使得如果不是不可能,则难以支持大的人数。加密/解密的另一种方法是创建两个单独的密钥(被称为“密钥对”)。密钥对的一个密钥(公共密钥)一般被用于加密,而密钥对的另一个密钥(私有密钥)一般被用于数据的解密。该方法被共同称为“非对称密钥密码术”。与非对称密钥密码术关联的一个缺点是在每个通信对话之后密钥对是不可擦除的。相反,它们被永久地指定并用于所有通信。这样,私有密钥的任何公开就降低或可能消除了任何随后或先前通信的安全性。
附图简述从对本发明的以下详述来看,本发明的特点和优点将变得明显,其中

图1是实施本发明的平台的示例实施例。
图2是IC装置的示例实施例,其作为在图1的平台内采用的可信平台模块(TPM)。
图3是说明安全数据传输机理的流程图的示例实施例。
图4是一个方块图的示例实施例,该方块图用于不使用散列运算通过验证暂时凭证和EAPUK来核实暂时非对称公共密钥(EAPUK)是有效密钥。
图5是一个方块图的示例实施例,该方块图用于使用散列运算通过验证暂时凭证和EAPUK来核实EAPUK是有效密钥。
说明书本发明涉及一种用于安全发送信息如,例如授权秘密的平台和方法。一旦在装置内被加载,授权秘密使用密码运算来验证授权数据,其伴随被指向该装置的运算请求。在授权数据被验证的情况下,所述装置执行所请求的运算。如以下所述,可通过利用暂时非对称密钥对来实现安全传输。
在以下描述中,特定的术语学被用于描述本发明的各种特征。例如,“平台”包括包含处理数据的装置(例如,一个或多个包装或未包装的集成电路)的任何产品。各种类型的平台的实例包括但不局限于或限定于计算机(例如,台式机、笔记本、服务器、工作站、个人数字助理等)或任何与之关联的外围设备、无线通信装置(例如,电话手机、寻呼机等)、电视置顶盒等。“链路”被广泛地定义为逻辑或物理通信通道,如,例如电线、光纤、线缆、总线追踪(bus trace)乃至使用红外线、射频(RF)、或其它任何无线信令机构的无线信道。
此外,术语“信息”或“内容”被定义为一个或多个位的数据、地址、控制或其任何组合。“代码”包括软件或固件,当被执行时,其实施特定功能。不同类型的代码的实例包括应用程序、小应用程序或任何系列的指令。
在此,各种密码术语被用于描述本发明的其它特征。例如,“实体”是装置用来执行运算的信息。例如,实体可以是非对称密钥、对称密钥或随机数据。临时保存在所述装置的内部存储器之外的位置的实体被正常地加密。当实体被加载到装置的内部存储器中时,用于该实体的授权秘密亦被加载。“授权秘密”是所述装置保存的信息(例如,在其内部存储器中)。知道授权秘密则允许访问该实体和/或存储在内部存储器中的信息,并且/或者允许用所述装置实施的平台来执行特定操作。
“授权数据”是证明知道用于实体的授权秘密的密码运算的结果,并应伴随每个运算请求。
“身份”是特定类型的实体。对于一个实施例,身份包括标记,其在一些范围内是唯一的并被附着于对象(例如,可执行代码的分段),和/或秘密数据,其不披露统计上就不可能进行估算。例如,对于该实施例,秘密数据可包括如以下所述的永久非对称密钥对。这允许平台支持对所存内容的不同访问权利或不同运算,这依赖于请求者所授予的身份。为证明身份,密码引擎使用秘密数据对输入数据进行运算以产生输出数据,其中该输出数据在统计上不可能没有秘密数据而产生。产生输出数据的能力被视为秘密数据占有权的证明,并因此被视为身份的证明。
应理解,提出某些细节是为了提供对本发明的全面理解。然而,对本领域的普通技术人员来说,显然可通过除了所说明的那些以外的许多实施例来实施本发明。众所周知的电路不被详细提出是为了避免不必要地模糊本发明。
参考图1,所示为采用本发明的平台100的说明性实施例的示例方块图。平台100包括处理器110、存储器控制集线器(MCH)120、系统存储器130、输入/输出控制集线器(ICH)140和开始、监视并控制平台100的认证过程的集成电路(IC)装置150。
如图1中所示,处理器110表示任何类型体系结构的中央处理单元,如复杂指令集计算机(CISC)、精简指令集计算机(RSIC)、很长指令字(VLIW)或混合体系结构。在一个实施例中,处理器110与INTEL体系结构(IA)处理器如IA-32和IA-64兼容。当然,在可替换的实施例中,处理器110可包括在公用主总线105上被耦合在一起的多个处理单元。
通过主总线105耦合于处理器110,MCH 120可被集成到芯片集中,该芯片集提供存储器和输入/输出装置如系统存储器130和ICH 140的控制和配置。系统存储器130存储系统代码和数据。系统存储器典型地用动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)来实施。
ICH 140亦可与MCH 120一起或与之分开地被集成到芯片集中以执行I/O功能。如所示,ICH 140支持通过链路160与IC装置150进行的通信。还有,ICH 140支持与被耦合于其它链路的部件的通信,如有任何所选频率(例如,66兆赫“MHz”、100MHz等)的外围部件互连(PCI)总线、工业标准体系结构(ISA)总线、通用串行总线(USB)、固件集线器总线或用与简要提及的那些不同的体系结构来配置的任何其它总线。ICH 140可被耦合于非易失性存储器170(例如闪存),其包含例如基本输入/输出系统(BIOS)代码。
参考图2,IC装置150的示例实施例被示出为可信平台模块(TPM),其以被置于保护性包装200内的一个或多个集成电路为特色。例如,保护性包装200可以是任何类型的IC包装,如用于单个IC的IC包装或用于多芯片模块的包装。可替换的是,保护性包装200可包括盒(catridge)或外壳,其覆盖以集成电路等为特色的可移动子卡。
如图2中所示,TPM 150包括输入/输出(I/O)接口210、处理器220、内部存储器230(例如,易失性或非易失性的)、非对称密钥生成单元240和密码引擎250。预期的是,密码引擎250可以是处理器的一部分或与之分离的逻辑。
在此,非对称密钥生成单元240被配置成创建一个或多个(N个)暂时非对称密钥对2601-260N。每个密钥对2601-260N都包括暂时非对称私有密钥(EAPRK)2611-261N和对应的暂时非对称公共密钥(EAPUK)2621-262N。每个暂时非对称密钥对2601-260N被用于在与另一个平台进行的单个通信对话内的加密和解密运算,并可自动或通过发出经认证的软件命令而在通信对话完成之后被擦除。例如,单个通信对话可包含(i)建立与另一个平台的通信,(ii)创建新的实体(包括发送授权数据)以及(iii)终止通信。
TPM 150允许对在内部存储器230的一部分中存储的特定实体的访问,以及/或者仅基于处理器220收到授权数据而由其平台执行所选操作。
为了在传输到TPM 150期间保护授权秘密的机密性并确保其完整性,TPM 150利用了安全数据传输机理。传输的机密性是通过授权秘密的加密来保护的。同样,通过发送者核实授权秘密正被传送给TPM并且仅特定的TPM可解密该数据的能力来保护其完整性。
参考图3,所示为说明安全数据传输机理的流程图的示例实施例。一开始,平台被加载以身份和与该身份关联的凭证(方块300)。“身份凭证”可包括(i)与身份关联的秘密数据(例如,该身份的永久非对称公共密钥,被称为“身份公共密钥”)以及(ii)字母数字字符的第一序列(例如,语句“TCPA Subsystem Identity”)。该信息用证明机构的私有密钥(CAPRK)来数字签名,所述证明机构是可信的第三方,如原始设备制造商、政府机关、银行、指定的证明实体等。当然,在数字签名运算之前,至少一部分秘密数据和字母数字字符的第一序列可共同经历散列运算。
为了创建用于平台的新实体,请求者开始实体创建请求,其指定请求者希望哪个身份用于验证的目的(方块305)。例如,平台可采用构建身份的多个软件工具,每个都具有唯一的名字(或标记)。响应于收到实体创建请求,TPM生成用于新TPM实体的暂时非对称密钥对(方块310)。该暂时非对称密钥对包括暂时非对称公共密钥对(EAPUK)和暂时非对称私有密钥对(EAPRK)。
之后,如在方块315中所述,EAPUK在TPM内被内部地证明(例如,通过使用与所选身份关联的一部分秘密数据由图2的密码引擎250来执行的数字证明)。由此产生了暂时凭证。一般而言,“暂时凭证”包括EAPUK和字母数字字符的第二序列(例如,语句“TCPA TrustedPlatform Module Endorsement”),两者均可用秘密数据的一部分如与身份关联的私有密钥(被称为“身份私有密钥”)来数字签名。当然,在数字签名运算之前,EAPUK和字母数字字符的第二序列可共同经历散列运算在另一个实施例中,暂时凭证包括EAPUK、字母数字字符的第二序列和身份标记。该信息在其整体上可用身份私有密钥来数字签名,或可替换的是,该信息可经历相继或反复的散列运算以产生散列值,其中散列值用身份私有密钥来数字签名。在又一个实施例中,暂时凭证可以是用身份私有密钥来数字签名的EAPUK。
之后,EAPUK、暂时凭证、与身份关联的秘密数据(例如,至少身份公共密钥)和身份凭证在链路上被发送给请求者(方块320)。通过获得对广泛传播的证明机构的公共密钥(CAPUK)的访问,请求者可使用身份凭证来验证身份(方块325)。请求者然后验证由身份私有密钥签名的EAPUK和暂时凭证,这是因为身份凭证是以身份公共密钥为特色的(方块330)。这允许请求者现在相信EAPUK来自有效的TPM,而无需知道哪个特定的TPM。还有,这允许请求者相信仅TPM将能够解密授权秘密。
在数字签名运算不利用散列运算的情况下,如图4中所示,通过从身份凭证恢复身份公共密钥来验证暂时凭证和EAPUK(方块400)。这是由于可容易获得证明机构的公共密钥的事实。一旦恢复了身份公共密钥,可从暂时凭证恢复暂时非对称公共密钥(方块410)。所恢复的暂时非对称公共密钥然后被比较于EAPUK(方块420)。如果两个值匹配(compare),则该EAPUK是有效的并且被正确地证明(方块430)。否则,EAPUK未被证明(方块440)。
可替换的是,在数字签名运算利用散列运算的情况下,通过从身份凭证恢复身份公共密钥来验证暂时凭证和EAPUK(方块500)。一旦恢复了身份公共密钥,可从暂时凭证恢复暂时凭证的散列值(方块510)。而且,对EAPUK(并且如果可用,可能还有字母数字字符的第二序列或身份标记)执行散列运算以产生散列结果(方块520)。散列结果然后被比较于散列值(方块530)。如果散列结果匹配散列值,则该EAPUK是有效的并且被正确地证明(方块540)。否则,EAPUK未被证明(方块550)。
返回参考图3,使用EAPUK来加密授权秘密(方块335)。在一个实施例中,授权秘密的大小被设置为M位(例如,M≤160位),因此非对称密码功能能够加密授权秘密。还有,授权秘密可包含一些静态标志以允许TPM确定解密是否成功。
经加密的授权秘密在链路上与静态标志和创建实体所必要的可能的附加参数一起被发送给TPM(方块340)。一旦收到,TPM使用EAPRK来解密经加密的授权秘密,并通过例如比较静态标志来确定解密是否成功(方块345)。如果解密成功,则经解密的授权秘密被用作用于新TPM实体的授权秘密(方块350)。否则,错误被报告(方块355)。
尽管特定的示例实施例已被描述并示出于附图中,应理解,这样的实施例仅仅说明了概括性的(broad)发明而非对其的限定,并且本发明不局限于所示和所述的构造和安排,这是因为对本领域的普通技术人员来说,可进行各种其它的修改。另外,有可能以硬件、固件、软件或其组合来实施本发明或其特征的一些,其中软件被提供在处理器可读存储介质如磁、光或半导体存储介质中。
权利要求
1.一种方法,包括接收暂时非对称公共密钥和暂时凭证;使用从暂时凭证恢复的数据来核实暂时非对称公共密钥是有效的;如果暂时非对称公共密钥被确定是有效的,则使用该暂时非对称公共密钥来加密授权秘密;以及在链路上发送经加密的授权秘密。
2.权利要求1的方法,其中暂时凭证包括用身份私有密钥来数字签名的暂时非对称公共密钥的至少一副本。
3.权利要求2的方法,其中在核实暂时非对称公共密钥为有效之前,该方法进一步包括接收身份公共密钥和身份凭证。
4.权利要求3的方法,其中暂时凭证进一步包括字母数字字符的预定序列。
5.权利要求2的方法,其中核实暂时非对称公共密钥为有效包括从暂时凭证恢复暂时非对称公共密钥的副本;以及将暂时非对称公共密钥的副本与暂时非对称公共密钥进行比较。
6.权利要求5的方法,其中恢复暂时非对称公共密钥的副本包括用身份公共密钥来解密暂时凭证。
7.权利要求1的方法,其中所述链路将经加密的授权秘密发送给可信平台模块,其包括输入/输出接口、处理器、内部存储器和非对称密钥生成单元。
8.权利要求7的方法,进一步包括通过使用对应于暂时非对称公共密钥的暂时非对称私有密钥来解密经加密的授权秘密,从而恢复授权秘密,暂时非对称私有密钥和暂时非对称公共密钥两者均被临时用于单个通信阶段。
9.权利要求8的方法,其中在接收暂时非对称公共密钥和暂时凭证之前,暂时非对称公共密钥和暂时非对称私有密钥两者均由可信平台模块内的非对称密钥生成单元来创建。
10.一种方法,包括在集成电路装置内内部地创建暂时非对称公共密钥和对应的暂时非对称私有密钥;证明暂时非对称公共密钥;将暂时非对称公共密钥和暂时凭证发送给请求者以确定暂时非对称公共密钥是否有效;以及在通信对话内使用暂时非对称公共密钥来保护由请求者提供的授权秘密的机密性。
11.权利要求10的方法,其中授权秘密是使能访问集成电路装置中所存内容的任何类型的信息。
12.权利要求10的方法,其中授权秘密是使能用于包括集成电路装置的平台的所选功能性任何类型的信息。
13.权利要求10的方法,其中保护授权秘密的机密性包括使用暂时非对称公共密钥来加密授权秘密。
14.一种集成电路装置,包括内部存储器;以及非对称密钥生成单元,用于产生包括暂时非对称公共密钥和暂时非对称私有密钥的暂时非对称密钥对,暂时非对称公共密钥和暂时非对称私有密钥两者均被用于在单个通信对话期间的加密和解密。
15.权利要求14的集成电路装置,其中内部存储器包含暂时非对称密钥对和用于由非对称密钥生成单元来执行的非对称密钥密码术功能。
16.权利要求14的集成电路装置,进一步包括封装内部存储器和非对称密钥生成单元的集成电路包装。
17.权利要求16的集成电路装置,进一步包括被耦合于内部存储器并被包含在集成电路包装内的处理器;被耦合于处理器的输入/输出(I/O)接口。
18.一种平台,包括处理器;输入/输出控制集线器;以及可信平台模块(TMP),其被耦合于输入/输出控制集线器,该TPM包括内部存储器,以及非对称密钥生成单元,用于产生包括暂时非对称公共密钥和暂时非对称私有密钥的暂时非对称密钥对,暂时非对称公共密钥和暂时非对称私有密钥两者均被用于在单个通信对话期间的加密和解密。
19.权利要求18的平台,其中TPM的内部存储器包含暂时非对称密钥对和用于由非对称密钥生成单元来执行的非对称密钥密码术功能。
20.权利要求18的平台,其中TPM进一步包括包含内部存储器和非对称密钥生成单元的集成电路包装。
21.权利要求20的平台,其中TPM进一步包括被耦合于内部存储器并被包含在集成电路包装内的处理器;被耦合于处理器的输入/输出(I/O)接口。
22.一种用于由平台的可信平台模块执行的被加载到可读存储器中的程序,该程序包括用于接收暂时非对称公共密钥和暂时凭证的代码;用于使用从暂时凭证恢复的数据来核实暂时非对称公共密钥为有效的代码;如果暂时非对称公共密钥被确定是有效的,则用于使用该暂时非对称公共密钥来加密授权秘密的代码,所述授权秘密用于控制对在平台上加载的实体的访问;以及用于在链路上将经加密的授权秘密发送给平台的代码。
23.权利要求22的程序,其中暂时凭证包括在可信平台模块内被数字签名的暂时非对称公共密钥的至少一副本。
24.权利要求22的程序,其中所述凭证进一步包括字母数字字符的预定序列,用于表示暂时非对称公共密钥源自可信平台模块的所选身份。
全文摘要
在一个实施例中,平台包括处理器、输入/输出控制集线器(ICH)和可信平台模块(TPM)。被耦合于ICH的TPM包括内部存储器和非对称密钥生成单元。非对称密钥生成单元产生包括暂时非对称公共密钥和暂时非对称私有密钥的暂时非对称密钥对。
文档编号H04L9/32GK1509546SQ01822874
公开日2004年6月30日 申请日期2001年11月19日 优先权日2000年12月27日
发明者D·W·格劳罗克, D W 格劳罗克 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1