首页> 中国专利> 使用分发CD将直接证明私钥传递给设备的方法

使用分发CD将直接证明私钥传递给设备的方法

摘要

现场将直接证明私钥传递给安装在客户计算机系统中的设备可按照安全方式完成而无需设备中的大量非易失性存储。唯一伪随机值在制造时生成并存储在设备中。该伪随机值用于生成对称密钥来对保存与设备相关联的直接私钥和私钥摘要的数据结构加密。所得的加密数据结构被存储在可移动存储介质(诸如CD)上,并被分发给客户计算机系统的所有者。当设备在客户计算机系统上初始化时,系统检查系统中是否存在本地化的加密数据结构。如果否,则系统从可移动存储介质获取相关联的加密数据结构。设备使用从其所存储的伪随机值重新生成的对称密钥解密该加密数据结构,以获取直接证明私钥。如果该私钥有效,则它可用于客户计算机系统中该设备的随后的认证处理。

著录项

  • 公开/公告号CN101019368A

    专利类型发明专利

  • 公开/公告日2007-08-15

    原文格式PDF

  • 申请/专利权人 英特尔公司;

    申请/专利号CN200580023787.2

  • 申请日2005-07-08

  • 分类号H04L9/08;H04L9/32;

  • 代理机构上海专利商标事务所有限公司;

  • 代理人顾嘉运

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 19:03:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-23

    未缴年费专利权终止 IPC(主分类):H04L9/08 授权公告日:20140723 终止日期:20190708 申请日:20050708

    专利权的终止

  • 2014-07-23

    授权

    授权

  • 2007-10-10

    实质审查的生效

    实质审查的生效

  • 2007-08-15

    公开

    公开

说明书

背景

1.领域

本发明一般涉及计算机安全,尤其涉及安全地将密码密钥分发给处理系统中的设备。

2.描述

某些处理系统体系结构支持的内容保护和/或计算机安全特征要求,即特别受保护或“可信”的软件模块能够创建与处理系统中特定受保护或“可信”的硬件设备(诸如,例如图形控制器卡)的经认证的加密的通信会话。用于标识设备同时建立加密的通信会话的一种常用的方法是使用单边认证的Diffie-Helman(DH)密钥交换处理。在这种处理中,设备被分配唯一的公共/私有Rivest、Shamir和Adelman(RSA)算法密钥对或唯一的椭圆曲线密码(ECC)密钥对。然而,因为这种认证处理使用RSA或ECC密钥,因此设备具有唯一且可证实的身份,而这可能引起私密性问题。在最坏的情况中,这些问题可能导致缺乏原始设备制造商(OEM)对构建提供这种安全性的可信设备的支持。

附图简述

通过阅读本发明的以下详细描述,本发明的特征和优点将变得显而易见,附图中:

图1示出了以使用根据本发明的一个实施例操作的可信平台模块(TPM)实现的平台为特征的系统;

图2示出了包括图1的TPM的平台的第一实施例。

图3示出了包括图1的TPM的平台的第二实施例。

图4示出了以图2的TPM实现的计算机系统的示例性实施例。

图5是根据本发明的一个实施例的用于分发直接证明密钥的系统的示意图。

图6是示出根据本发明的一个实施例的分发直接证明密钥的方法的各阶段的流程图。

图7是示出根据本发明的一个实施例的设备制造设置处理的流程图。

图8是示出根据本发明的一个实施例的设备制造生产处理的流程图。

图9是根据本发明的一个实施例的客户计算机系统设置处理的流程图。

图10是根据本发明的一个实施例的客户计算机系统处理的流程图。

详细描述

使用基于直接证明的Diffie-Helman密钥交换协议来允许受保护/可信的设备来认证自己并建立与可信的软件模块的加密通信会话,这避免在处理系统中创建任何唯一身份信息,从而避免引入私密性问题。然而,在生产线上的设备中直接嵌入直接证明私钥比其它方法需要设备上的更多受保护的非易失性存储,从而增加了设备的成本。本发明的一个实施例是允许直接证明私有密钥(例如,用于签署)以安全的方式在分发光盘只读存储器(CD-ROM)上传递并随后由设备自己安装在设备中的方法。本发明中提供的方法被设计成使得设备不必为安装过程揭示身份信息。在一个实施例中,支持这种能力所需的设备存储可能从大约300-700字节减少到大约20字节。对设备实现基于直接证明的Diffie-Helman密钥交换所需的非易失性存储的数量上的这一减少可使得这种技术能被更广泛地采用。

本说明书中对本发明的“一个实施例”或“实施例”的引用意味着,结合该实施例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,在说明书各处出现的短语“在一个实施例中”的出现不必全部指的是同一实施例。

在以下描述中,某些术语用于描述本发明的一个或多个实施例的某些特征。例如,“平台”被定义为适用于发送和接收信息的任何类型的通信设备。各种平台的示例包括,但不限于或约束于计算机系统、个人数字助理、手机、机顶盒、传真机、打印机、调制解调器、路由器等。“通信链路”被宽泛地定义为适用于平台的一个或多个信息承载介质。各种类型的通信链路的示例包括但不限于或约束于电线、光纤、电缆、总线迹线或无线信号发送技术。

“质询者”指的是向另一实体请求某种真实性或权限的验证的任何实体(例如,个人、平台、系统、软件和/或设备)。正常地,这是在公开或提供所请求的信息之前执行的。“响应者”指的是被请求提供对其权限、有效性和/或身份的某种证明的任何实体。“设备制造商”可与“证书制造商”互换使用,它指的是制造或配置平台或设备的任何实体。

如此处所使用的,向质询者“证实”或“使之确信”响应者拥有或了解某些密码信息(例如,数字签名、诸如密钥等秘密等)意味着,基于向质询者公开的信息和证明,响应者具有该密码信息的可能性很高。向质询者对此进行证实而不向质询者“揭示”或“公开”该密码信息意味着,基于对质询者所公开的信息,质询者在计算上无法确定密码信息。

这样的证明在后文中被称为直接证明。术语“直接证明”指的是零知识证明,因为这些类型的证明在本领域中是公知的。具体地,如此处所引用的特定直接证明协议是于11/27/2002提交的转让给本发明的所有者的名为“System and Method forEstablishing Trust Without Revealing Identity(用于建立信任而不揭示身份的系统和方法)”的共同待审专利申请第10/306,336号的主题。直接证明定义了其中发布者定义了共享如由发布者定义的公共特征的一族多个成员的协议。发布者生成将该族表示为一个整体的族公钥和私钥对(Fpub和Fpri)。使用Fpri,发布者也可为族中的每一个别成员生成唯一的直接证明私有签署密钥(DPpri)。由个别DPpri签署的任何消息可使用族公钥Fpub来验证。然而,这样的验证仅标识该签署者是族中的成员;而不会暴露关于个别成员的任何唯一标识信息。在一个实施例中,发布者可以是设备制造商或代表。即,发布者可以是具有基于共享的特征定义设备族、生成族公钥/私钥对、以及创建DP私有密钥并将其注入设备中的能力的实体。发布者也可为族公钥生成标识密钥来源和设备族特征的证书。

现在参考图1,示出了以根据本发明的一个实施例操作的可信硬件设备(被称为“可信平台模块”或“TPM”)实现的平台为特征的系统的一个实施例。第一平台102(质询者)发送请求第二平台104(响应者)提供关于其自身的信息的请求106。响应于请求106,第二平台104提供所请求的信息108。

此外,为加强安全性,第一平台102可能需要验证所请求的信息108是来自由所选的一个或一组设备制造商(后文中称之为“设备制造商110”)制造的设备。例如,在本发明的一个实施例中,第一平台102质询第二平台104,要求它示出其具有由设备制造商110生成的密码信息(例如,签名)。质询可被包含在请求106内(如图所示)或作为单独的发送。第二平台104通过以回复的方式提供信息来回复该质询,以使第一平台102确信第二平台104具有由设备制造商110生成的密码信息而不揭示该密码信息。回复可以是所请求信息108的一部分(如图所示)或作为单独的发送。

在本发明的一个实施例中,第二平台104包括可信平台模块(TPM)115。TPM115是由设备制造商110制造的密码设备。在本发明的一个实施例中,TPM 115包括含有密封在封装内的少量片上存储器的处理器。TPM 115被配置成向第一平台102提供信息,该信息这可使其确定回复是从有效TPM发送的。所使用的信息是不会使TPM或第二平台的身份可能被确定的内容。

图2示出了具有TPM 115的第二平台104的第一实施例。对本发明的该实施例,第二平台104包括耦合至TPM 115的处理器202。一般而言,处理器202是处理信息的设备。例如,在本发明的一个实施例中,处理器202可被实现为微处理器、数字信号处理器、微控制器或甚至状态机。或者,在本发明的另一实施例中,处理器202可被实现为可编程或硬编码的逻辑,诸如现场可编程门阵列(FPGA)、晶体管-晶体管逻辑(TTL)逻辑或甚至专用集成电路(ASIC)。

此处,第二平台104还包括存储单元206以允许存储密码信息,诸如以下的一个或多个:密钥、散列值、签名、证书等。“X”的散列值可被表示为“Hash(X)”。构想了如图3中所示,这样的信息可被存储在TPM 115的内部存储器220内以代替存储单元206。密码信息可被加密,尤其当存储在TPM 115之外时。

图4示出了包括以图2的TPM 115实现的计算机系统300的平台的实施例。计算机系统300包括总线302和耦合至总线302的处理器310。计算机系统300还包括主存储器单元304和静态存储器单元306。

此处,主存储器单元304是用于存储信息和由处理器310执行的指令的易失性半导体存储器。主存储器304也可用于在处理器310执行指令期间存储临时变量或其它中间信息。静态存储器单元306是用于在更持久的特性上为处理器310存储信息和指令的非易失性半导体存储器。静态存储器306的示例包括,但不限于或约束于只读存储器(ROM)。主存储器单元304和静态存储器单元306均被耦合至总线302。

在本发明的一个实施例中,计算机系统300还包括诸如磁盘或光盘等数据存储设备308,其相应的驱动器也可被耦合至计算机系统300以便存储信息和指令。

计算机系统300也可经由总线302耦合至图形控制器设备314,它控制诸如阴极射线管(CRT)、液晶显示器(LCD)或任何平面显示器等显示器(未示出),以便向最终用户显示信息。在一个实施例中,可期望图形控制器能够与正由处理器执行的软件模块建立经认证的加密通信会话。

一般,字母数字输入设备316(例如键盘,小键盘等)可被耦合至总线302以便向处理器310传输信息和/或命令选择。另一类型的用户输入设备是光标控制单元318,诸如用于向处理器310传输方向信息和命令选择并用于控制显示器314上的光标移动的鼠标、跟踪球、触摸垫、指示笔、或光标方向键。

通信接口单元320也被耦合至总线302。接口单元320的示例包括用于耦合至形成局域网或广域网的一部分的通信链路的调制解调器、网络接口卡或其它公知的接口。以此方式,计算机系统300可经由常规网络基础架构,诸如例如公司的内联网和/或因特网被耦合至多个客户机和/或服务器。

可以理解,某些实现可期望比上述更少或更多配备的计算机系统。从而,取决于各种因素,诸如价格约束、性能要求、技术改进和/或其它情况,对各种实现,计算机系统300的配置可以有所不同。

在至少一个实施例中,即使当计算机系统中存在其它敌对软件时,计算机系统300也可支持使用存储在主存储器304和/或大容量存储设备308中并正由处理器310执行的特别保护的“可信”软件模块(例如,防篡改软件或具有运行受保护程序的能力的系统)以便执行特定活动。这些可信软件模块中的某一些要求不仅对其它平台,而且也对同一平台内的一个或多个外围设备,诸如图形控制器314的同等“可信”的受保护访问。一般而言,这样的访问要求可信软件模块能够标识设备的能力和/或特定身份,然后与设备建立加密会话以允许不能被系统中的其它软件监听或哄骗的数据的交换。

标识设备并同时建立加密会话的一种现有技术的方法是使用单边认证的Diffie-Hellman(DH)密钥交换处理。在这种处理中,设备被分配唯一的公共/私有RSA或ECC密钥对。设备持有并保护私钥,而公钥以及认证证书可被发布给软件模块。在DH密钥交换处理期间,设备使用其私钥签署消息,而软件模块可使用相应的公钥验证该消息。这允许软件模块认证消息的确来自所感兴趣的设备。

然而,因为这种认证处理使用RSA或ECC密钥,因此设备具有唯一且可证实的身份。可使设备以其私钥签署消息的任何软件模块可证实该特定唯一设备存在于计算机系统中。假定设备很少在处理系统之间迁移,则这也表示可证实的唯一计算机系统身份。此外,设备的公钥本身表示一恒定的唯一值;实际上是永久“cookie”。在某些情况中,这些特征可被认为是重要的私密性问题。

一种替换的方法在于2004年提交的转让给本申请的所有者的名为“AnApparatus and Method for Establishing an Authenticated Encrypted Session with aDevice Without Exposing Privacy-Sensitive Information(用于与设备建立经认证的加密会话而不暴露私有性敏感的信息的装置和方法)”的共同待审的专利申请第10/???,???号中描述。在这种方法中,以直接证明密钥代替在单边认证的Diffie-Helman处理中RSA或ECC密钥的使用。使用这种方法的设备可被认证为属于特定的一族设备,这可包括关于设备的行为或可信度的保证。该方法不暴露可用于建立表示该处理系统的唯一身份的任何唯一标识信息。

尽管这种方法工作良好,但它要求设备中的附加存储以保存直接证明私钥,这种密钥可能比RSA或ECC密钥大。为了减轻这种附加存储要求的负担,本发明的实施例定义用于当设备需要密钥时确保该设备具有直接证明私钥而无需设备中的实质上的附加存储的系统和过程。

在本发明的至少一个实施例中,设备制造商仅将128位的伪随机数存储到生产线中的设备内,大得多的直接证明私钥(DPpri)可被加密并使用分发CD来传递。其它的实施例可将长于或短于128位的数存储到设备内。这种处理确保仅有指定设备可解密并使用其分配的DPpri密钥。图5是根据本发明的一个实施例的用于分发直接证明密钥的系统500的示意图。这种系统中存在三个实体,即设备制造受保护系统502、设备制造生产系统503和客户计算机系统504。设备制造受保护系统包括用于设备506的制造之前的设置处理的处理系统。受保护系统502可由设备制造商操作,使得受保护系统针对来自设备制造位置以外(例如,它是封闭系统)的黑客的攻击受到保护。制造生产系统503可用于制造设备。在一个实施例中,受保护系统和生产系统可以是同一系统。设备506包括包含在客户计算机中的任何硬件设备(例如,存储器控制器、诸如图形控制器、I/O设备等外围设备等)。在本发明的实施例中,设备包括存储在设备的非易失性存储中的伪随机值RAND 508。

制造受保护系统包括受保护数据库510和生成功能512。受保护数据库包括用于存储由生成功能512按如下所述的方式生成的多个伪随机值(对每个要制造的设备至少有一个值)的数据结构。生成功能包括逻辑(以软件或硬件中任一种实现)以生成此处称为密钥块(keyblob)514的数据结构。密钥块514包括至少三个数据项。唯一直接证明私钥(DPpri)包括可由设备用来签署的密码密钥。DP私有摘要(digest)516(DPpri摘要包括根据诸如SHA-1等生成安全消息摘要的任何公知方法的DPpri的消息摘要。某些实施例可为兼容性的目的包括含有比特流的伪随机初始化向量(IV)518作为密钥块的一部分。如果为加密使用流密码,则IV用于在流密码中使用IV的公知方法。如果为加密使用块密码,则IV将被用作要加密的消息的一部分,因此使得加密的每一实例不同。

在本发明的实施例中,制造受保护系统生成一个或多个密钥块(如将在以下详细描述)并将密钥块存储在CD 522上的密钥块数据库520中。在一个实施例中,在单个CD上可能有多个密钥块,唯一的限制是CD的物理存储限制。CD然后经由典型的物理通道分发给计算机系统制造商、计算机分销商、消费者等。尽管CD此处被描述为存储介质,但可使用任何合适的可移动存储介质(例如,数字多功能盘(DVD)或其它介质)。

一旦CD被插入客户机计算机系统的CDROM驱动器(未示出)内之后,期望使用直接证明协议来进行认证以及与客户计算机系统504内所包含的设备506的通信会话的密钥交换的系统504可从CD上的密钥块数据库520读出所选密钥块514。密钥块数据可由设备使用来生成本地化的密钥块(如下所述)供实现直接证明协议使用。设备驱动程序软件526由客户计算机系统执行来初始化并控制设备506。

在本发明的实施例中,存在四个不同的操作阶段。图6是示出根据本发明的实施例的分发直接证明密钥的方法的各阶段的流程图600。根据本发明的实施例,某些动作可在每一阶段执行。在设备制造商处,至少存在两个阶段:设置阶段601和制造生产阶段604。设置阶段此处参考图7描述。制造生产阶段此处参考图8描述。在具有客户计算机系统的消费者处,至少存在两个阶段:设置阶段606和使用阶段608。客户计算机系统设置阶段此处参考图9描述。客户计算机系统使用阶段此处参考图10描述。

图7是示出根据本发明的实施例的设备制造设置处理的流程图700。在一个实施例中,设备制造商可使用制造受保护系统502执行这些动作。在框702处,设备制造商为要制造的每一类设备生成直接证明族密钥对(Fpub和Fpri)。每一唯一设备将具有一DPpri密钥,使得使用DPpri创建的签名可由Fpub验证。一类设备可包括任何设备的集合或子集,诸如所选生产线(即,设备类型)或基于版本号或设备的其它特征的生产线的子集。族密钥对由为其生成该密钥的一类设备使用。

对要制造的每一设备,制造受保护系统502的生成功能512执行框704到720。首先,在框704处,生成功能生成唯一伪随机值(RAND)508。在一个实施例中,RAND的长度为128位。在其它实施例中,可使用其它大小的值。在一个实施例中,多个设备的伪随机值可预先生成。在框706处,使用设备所支持的单向函数f,生成功能从该唯一RAND值中生成对称加密密钥SKEY(SKEY=f(RAND))。该单向函数可以是适于该目的的任何已知算法(例如,SHA-1、MGF1、数据加密标准(DES)、三重DES等)。在框708处,在一个实施例中,生成功能通过使用SKEY加密“空条目”(例如,少量0字节)来生成将用于引用分发CD 522上该设备的密钥块514的标识符(ID)标签(设备ID=使用SKEY加密(0..0))。在其它实施例中,可使用生成设备ID的其它方式,或可由SKEY加密其它值。

接着,在框710处,生成功能生成与设备的族公钥(Fpub)有关的DP私有签署密钥DPpri。在框713处,生成功能使用已知方法(例如,使用SHA-1或另一散列算法)对DPpri进行散列以产生DPpri摘要。在框714处,生成功能为设备构建密钥块数据结构。密钥块包括至少DPpri和DPpri摘要。在一个实施例中,密钥块还包括具有多个伪随机生成的位的随机初始化向量。这些值可使用SKEY加密以产生加密的密钥块514。在框716处,在框708处生成的设备ID和在框714处生成的加密的密钥块514可被存储在密钥块数据库520中的一条目中以便被发行给分发CD 522。在一个实施例中,密钥块数据库中的条目可由设备ID指示。在框718处,当前的RAND值可被存储在受保护数据库510中。在框720处,可删除SKEY和DPpri,因为它们将由设备在现场重新生成。可如此设计DPpri摘要的创建和由SKEY进行的随后的加密,使得DPpri的内容不能被不拥有SKEY的任何实体确定,且使得密钥块的内容在未经拥有SKEY的实体的随后检测的情况下不能被不拥有SKEY的实体修改。在其它实施例中,可使用用于提供这种秘密性和完整性保护的其它方法。在某些实施例中,可能不要求完整性保护,因此可使用仅提供秘密性的方法。在这种情况中,DPpri摘要的值将不是必需的。

在框720之后的任何时候,在框722处,RAND值的受保护数据库可被安全地上传到制造生产系统503,它将在制造处理期间将RAND值存储到设备内。一旦验证了这种上传之后,RAND值可从制造受保护系统502中安全删除。最后,在框724处,含有多个加密的密钥块的密钥块数据库可被“刻录”到公共分发CD522上。在一个实施例中,CD可沿着每一设备分发,如由设备ID字段所索引的,为每一设备使用一个密钥块数据库条目。此外,CD包括密钥检索实用软件模块,它的使用将在以下更详细描述。

图8是示出根据本发明的实施例的设备制造生产处理的流程图800。当设备在生产线中被制造时,在框802处,制造生产系统从受保护数据库中选择未使用的RAND值。所选RAND值然后可被存储到设备中的非易失性存储内。在一个实施例中,该非易失性存储包括TPM。在框804处,一旦对RAND值的存储成功之后,制造生产系统毁去受保护数据库中该设备的RAND值的任何记录。此时,RAND值的唯一副本被存储在设备中。

在一个替换实施例中,RAND值可在设备的制造期间创建,然后被发送给制造受保护系统以便计算密钥块。

在另一实施例中,RAND值可在设备上创建,且设备和制造受保护系统可订立使用不在设备外揭示DPpri密钥的方法生成DPpri密钥的协议。然后设备可创建设备ID、SKEY和密钥块。设备可将设备ID和密钥块传递给制造系统以便存储在受保护数据库510中。以这种方法,制造系统以受保护数据库中的相同信息(设备ID、密钥块)结束,而不了解RAND或DPpri的值。

图9是根据本发明的一个实施例的客户计算机系统设置处理的流程图900。客户计算机系统可执行这些动作作为引导系统的一部分。在框902处,客户计算机系统可按正常方式引导,设备的设备驱动程序526可被加载到主存储器内。当设备驱动程序被初始化并开始执行时,设备驱动程序确定在设备506的大容量存储设备308中是否已经存储了加密的本地化密钥块524。如果是,则无需执行进一步的设置处理,且设置处理在框906处结束。如果否,则处理继续至框908。在框908处,设备驱动程序引起消息对客户计算机系统的用户的显示,要求插入分发CD 522。一旦CD被计算机系统读取之后,设备驱动程序然后启动CD上存储的密钥检索实用软件(图5中未示出)。该实用软件向设备506发出获取密钥命令以启动设备的DP私钥获取过程。

作为响应,在框910处,设备使用其单向函数f来从嵌入的RAND值508重新生成对称密钥SKEY(现在供解密使用)(SKEY=f(RAND))。在框912处,设备然后通过使用SKEY来加密“空条目”(例如,少量的0字节)来生成其唯一的设备ID标签(设备ID=使用SKEY加密(0..0))。设备然后将设备ID返回给密钥检索实用软件。在框914处,密钥检索实用软件在CD上的密钥块数据库520中搜索包含匹配的设备ID的数据库条目,提取设备的加密密钥块,并将密钥块传送给设备。

在一个实施例中,如果在设备具有密钥块之后流氓软件试图向设备发送获取密钥命令,则设备不会以设备ID响应该流氓软件。相反,设备将返回出错指示符。实际上,如果设备访问了本地化的密钥块,则禁用获取密钥命令的功能。以这种方式,除非设备不含有密钥块,否则它不会揭示唯一设备ID。

在框916处,设备使用对称密钥SKEY解密加密的密钥块,以产生DPpri和DPpri摘要,并将这些值存储到其非易失性存储中(解密的密钥块=使用SKEY解密(IV、DPpri、DPpri摘要))。可丢弃初始化向量(IV)。在框918处,设备然后通过对DPpri进行散列并将结果与DPpri摘要进行比较来检查DPpri的完整性。如果比较结果良好,则设备接受DPpri作为其有效密钥。设备也可将密钥已获取标志置为真,以指示成功地获取了DP私钥。在框920处,设备选择一新IV并使用该新IV来创建新的加密的本地化密钥块(本地化密钥块=使用SKEY加密(IV2、DPpri、DPpri摘要))。该新的加密的本地化密钥块可被返回给密钥检索实用软件。在框922处,密钥检索实用软件将加密的本地化密钥块存储到客户计算机系统内的存储中(诸如,例如大容量存储设备308)。设备的DPpri现在安全地存储在客户计算机系统中。

一旦设备在设置处理期间获取了DPpri之后,设备则可使用DPpri。图10是根据本发明的一个实施例的客户计算机系统处理的流程图。客户计算机系统可在设置完成之后的任何时候执行这些动作。在框1002处,客户计算机系统可按正常方式引导,设备的设备驱动程序526可被加载到主存储器内。当设备驱动程序被初始化并开始执行时,设备驱动程序确定在设备506的大容量存储设备308中是否已经存储了加密的本地化密钥块524。如果否,则执行图9的设置处理。如果存在该设备可用的加密的本地化密钥块,则处理继续至框1006。在框1006处,设备驱动程序检索加密的本地化密钥块,并将密钥块传送给设备。在一个实施例中,密钥块的传送可通过执行加载密钥块命令完成的。

在框1008处,设备使用其单向函数f从嵌入的RAND值508重新生成对称密钥SKEY(现在供解密使用)(SKEY=f(RAND))。在框1010处,设备通过使用对称密钥SKEY来解密加密的本地化密钥块,以产生DPpri和DPpri摘要,并将这些值存储到其非易失性存储中(解密的密钥块=使用SKEY解密(IV2、DPpri、DPpri摘要))。可丢弃第二初始化向量(IV2)。在框1012处,设备通过对DPpri进行散列并将结果与DPpri摘要进行比较来检查DPpri的完整性。如果比较结果良好(例如,摘要匹配),则设备接受该DPpri作为之前获取的有效密钥,并允许其使用。设备也可将密钥已获取标志置为真,以指示成功地获取了DP私钥。在框1014处,设备选择又一IV并使用该新IV创建新的加密的本地化的密钥块(本地化密钥块=使用SKEY加密(IV3、DPpri、DPpri摘要))。该新的加密的本地化密钥块可被返回给密钥检索实用软件。在框1016处,密钥检索实用软件将加密的本地化密钥块存储到客户计算机系统内的存储中(诸如,例如大容量存储设备308)。设备的DPpri现在再次安全地存储在客户计算机系统中。

在本发明的一个实施例中,不必要一次生成所有的设备DP私钥。假定分发CD定期更新,则设备DP私钥可按需要按批生成。每次“刻录”分发CD时,它将包含迄今生成的密钥块数据库,包括已经被生成但还未分配给设备的那些设备密钥。

尽管此处讨论的操作可被描述为连续的处理,但某些操作实际上可并行或并发执行。此外,在某些实施例中,操作的顺序可被重排,而不背离本发明的精神。

此处所述的技术不限于任何特定硬件或软件配置;它们可应用于任何计算或处理环境。各种技术可以用硬件、软件或两者的组合实现。这些技术可用在可编程机器上执行的程序来实现,这些机器诸如移动或固定计算机、个人数字助理、机顶盒、手机和寻呼机、以及其它电子设备,它们均包括处理器、可由处理器读取的存储介质(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备和一个或多个输出设备。程序代码应用于使用输入设备输入的数据以执行所述功能并生成输出信息。输出信息可应用于一个或多个输出设备。本领域中的普通技术人员可以理解,发明可使用各种计算机系统配置来实现,包括微处理器系统、小型机、大型机等。本发明也可在分布式计算环境中实现,其中任务可由经由通信网络链接的远程处理设备执行。

每一程序可使用高级过程语言或面向对象的程序设计语言来实现以便与处理系统通信。然而,如有需要,程序可使用汇编语言或机器语言来实现。在任何情况中,语言可被编译或解释。

程序指令可用于使以指令编程的通用或专用处理系统执行此处所述的操作。或者,操作可由包含用于执行操作的硬连线逻辑的特定硬件组件,或由已编程的计算机组件和自定义硬件组件的任何组合执行。此处所述的方法可作为程序产品来提供,程序产品可包括其上存储有可用于对处理系统或其它电子设备编程来执行该方法的指令的机器可读介质。如此处所使用的,术语“机器可读介质”应包括能够存储或编码指令序列以便由机器执行并使机器执行此处所述的任何一种方法的任何介质。术语“机器可读介质”从而应包括但不限于,固态存储器、光盘和磁盘、以及编码数据信号的载波。而且,本领域中,通常以一种或另一种形式(例如,程序、过程、进程、应用程序、模块、逻辑等)将软件说成是采取动作或导致结果。这样的表示仅是陈述处理系统对软件的执行使得处理器执行动作或产生结果的简写形式。

尽管参考说明性实施例描述了本发明,但本描述不旨在以限制的含义解释。说明性实施例的各种修改以及本发明的其它实施例对本发明所属的领域中的技术人员而言是显而易见的,它们被认为位于本发明的精神和范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号