处理器安全的制作方法

文档序号:6360186阅读:137来源:国知局
专利名称:处理器安全的制作方法
技术领域
本发明涉及对在处理器上执行的代码进行认证。
背景技术
公开密钥密码(cryptography)涉及生成非对称密钥对,通常称之为公开密钥和私有密钥。这样称呼是因为私有密钥由上述密码方案的实施方所保密,同时将公开密钥分配给一个或多个其他方(然而它不需要在自由或任意可用的意义上“公开”——在很多情况下,仍然谨慎地限制公开密钥的分配)。如图I中所示意性示出的,一般是基于输入到密钥生成函数102的大量随机数来生成公开和私有密钥对。公开密钥K’和私有密钥K依据该生成函数和随机数而因此数学上彼此相关,但是由于该函数的性质,因此从公开密钥K’导出或推断出私有密钥K实际上 是不可行的。密钥生成函数的一个示例是RSA(Rivest, Shamir和Adleman)算法。适用于密钥生成函数102的该算法和其他合适的算法的细节对于本领域技术人员是熟悉的。公开密钥密码出现了两种类型。第一种是公开密钥加密,据此发送方使用公开密钥来加密消息并且接收方使用私有密钥来解密消息,因此使消息的信息内容对于除了私有密钥的持有者外的任何人保密。第二种是认证,据此某一信息的供应者使用私有密钥来“签名”该信息。然后,公开密钥的任何持有者均可验证该信息确实来源于私有密钥的持有者,并且因此该信息是可靠的。非对称或公开密钥技术的特有特征在于,用于加密或签名信息的密钥与用于解密或认证信息的密钥是不同的。以下涉及后一种用于认证的公开密钥密码。如图2中所示意性示出的,为了对将运行在处理器上的其他软件的可靠性进行验证,可由安全引导过程(procedure)来使用这样的技术。图2示出了集成电路(IC)或“芯片”形式的处理器204。处理器芯片204包括中央处理单元(CPU) 206和第一非易失性片上存储器208,以及可选地包括第二非易失性片上存储器210。另外,CPU 206可操作地耦合至非易失性片外存储器212。第一片上存储器208是主引导存储器,其存储主引导代码。CPU 206是硬连线的,以便处理器一旦启动或重启,CPU 206便从主引导存储器208自动地开始执行主引导代码。主引导代码被执行时,实施处理器启动和运行所需的基本初始化。主引导存储器208优选地采用安全只读存储器(ROM)的形式,该只读存储器被安排为不可由客户或用户来改变,例如,一次性可编程存储器,其中的数据成分一旦经编程就永久性地熔合,从而不能重写存储器。片外存储器212可用于存储次级引导代码。主引导代码据此包括这样的过程其一旦已合适地配置处理器,则自动地激发次级引导代码的执行来提供进一步的“软件”引导功能。次级引导代码允许处理器204的一些引导功能由客户(例如,用户终端的制作者,所述用户终端诸如其中将结合芯片的无线移动蜂窝装置)“现场(in the field)”编程,相反主引导代码来自芯片本身的制造商的预编程,并且不应该是由客户或用户可改变的。片外存储器212还可用于存储用于在处理器上运行的应用程序和/或数据文件。片外存储器212例如可以是诸如外部闪存的可擦除可编程存储器(EPROM)。可替代地或此外,次级片上存储器210可用于存储次级引导代码、其他应用程序和/或数据文件。次级片上存储器210例如可以是诸如片上闪存的EEPR0M。另外,可以从磁性存储介质或甚至从诸如因特网的网络来取回应用程序和数据。生产处理器是供应给客户用于在诸如用户终端的产品中使用的处理器的实例(instance)。生产处理器往往经配置以仅对使用生产密钥所签名的软件进行认证,将装置锁定为仅运行已经使用这些安全生产密钥所正式签名的代码。具体地,引导代码经配置以在允许其他代码执行前验证所述其他代码已经被可靠地签名。例如,次级引导代码可经配置以在允许应用程序加载和执行前验证所述应用程序已经被可靠地签名。如图2所示,签名过程包括将私有密钥和应用程序代码两者输入密码函数202中,其基于私有密钥输出具有密码签名的代码。密码函数202是诸如哈希函数的单向函数,其 细节对于本领域技术人员将是熟悉的。安装在片外存储器212 (或次级片上存储器210)上的是应用程序的该经签名的版本。引导代码包括或具有相应公开密钥的知识,并且经配置以在允许将应用程序加载并运行在处理器上(并且仅在验证的条件下才这样做)之前使用公开密钥来验证该签名的可靠性。因此,处理器可以验证它正在执行已被授权用于在该处理器上使用的软件,即,来源于上述持有私有密钥并且因此被授权为处理器供应应用程序的一方(一般是芯片的设计者或制造商,或他们的授权合作者)。类似的过程也可用于认证数据文件。尽管如此,能够解锁个别生产处理器从而其可运行试用软件是可取的。这应该以避免危害尚未被明确解锁的装置的方式来进行。习惯上,这往往使用秘密后门来进行。然而,由于隐匿不是足够的安全措施——“隐匿的”秘密后门机制可能成为公知的,并且如果这样的话,那么处理器的每个实例的安全均会受到危害,因此该方法有缺陷。另外可以根本不提供进行解锁的特征,使得不可能为特定装置提供试用软件。在这样的情况下,允许试用软件的唯一方法将是泄露私有生产密钥,其将会由于所涉及的安全过程而十分昂贵,并且还将会冒着包括生产密钥并由此危害处理器的每个实例的安全的风险。已经提出涉及在制造装置时存储芯片ID的安全数据库的方法。然而,考虑到进行制造的环境,安全地维护这些数据库将具有先天上的困难。可取的是提供可以被解锁以运行未经签名的试用软件的处理器,但是不会显著地危害处理器的每个实例的安全。

发明内容
根据本发明的一个方面,提供一种系统包括包括处理器和存储器的装置,所述存储器存储经安排以由所述处理器一旦启动或重启便自动地执行的引导代码,其中所述引导代码包括可操作以验证附加代码是否经认证用于在所述处理器上执行的代码认证过程;以及单独的安全单元,所述单独的安全单元包括私有解锁密钥和密码逻辑,所述密码逻辑经配置以使用所述私有解锁密钥来签名部分数据,从而生成经签名的解锁文件用于供应至存储位置;其中所述处理器经安排以从所述存储位置访问所述解锁文件,使得所述解锁文件对于所述处理器是可用的,而无需要求所述处理器和所述安全单元之间的连接;以及,其中所述引导代码进一步包括经配置以检查所述存储位置中所述解锁文件的可用性的解锁认证过程,并且如果可用则基于其签名来验证所述解锁文件是否经认证用于在所述处理器上使用,以使得在验证所述解锁文件的条件下对所述引导认证过程去除限制。因此,本发明修改安全引导代码来查找和认证经签名的解锁文件。如果存在所述经签名的解锁文件,则所述安全引导将对所述认证过程去除限制,以优选地接受采用相比生产密钥具有较低安全级别的开发密钥所签名的代码和数据,或甚至可能完全绕过所述认证过程。由诸如软件狗的安全单元来生成所述解锁文件。常规的安全软件狗必须保持插入到装置中以允许其运行具体的软件。只要将软件狗连接至所述装置,则其使得软件运行以及不再运行——在所述软件狗已经断开连接后,所述软件将不在所述装置上运行。·
然而,本发明的所述安全单元生成解锁文件,其存储到可由所述处理器访问但是与所述安全单元分开的位置,并且因此对于所述处理器可用而所述安全单元不需要物理地连接至所述处理器。这样,一旦已经生成所述解锁文件,即使所述安全单元并没有物理地存在,但是因为所述解锁文件被签名和认证所以安全仍然得以维持,因此可对所述引导认证过程去除限制。在优选实施例中,所述处理器具有受限制模式和去除限制模式,并且通过硬件设定或由硬件所保护的其他机制来设置为所述受限制模式,所述代码认证过程经配置以在所述受限制模式中以较高安全级别进行操作以及在去除限制模式中以较低安全级别进行操作;并且在这样的实施例中,所述解锁认证过程经配置以通过覆写硬件设定或其他受硬件保护的机制并且因此启用所述去除限制模式来实施所述去除限制。例如,可由一个或多个熔丝锁存器来将所述处理器设置为所述受限制模式,并且可通过覆写所述一个或多个熔丝锁存器来配置所述解锁认证过程以实施所述除去限制。因此,所述处理器可包括具有在硬件中所选择的(例如,通过熔合在所述处理器上一个或多个熔丝锁存器中的设定)至少两个(或更多个)安全级别的安全机制。然而,为了降低所述安全级别,本发明通过使用经认证的解锁文件有利地允许硬件设定随后被覆与。在具体的优选实施例中,所述解锁文件可包括所述装置或处理器的标识符,例如所述处理器的芯片ID。有利地,这意味着所述解锁文件绑定为仅解锁所述装置或处理器的特定实例,使得所述解锁文件的存在性不会危害其他实例的安全。优选地,可以通过在便携式安全单元和与正被解锁的所述装置分开的计算机终端之间的交互来生成所述解锁文件。这是有利的,因为这意味着一旦生成,则所述解锁文件即可被供应给上述装置而所述安全单元无需物理地存在于所述装置的位置处。然而,因为所述解锁与芯片标识符绑定,因此所述解锁文件可以不危害所述处理器的任何其他实例的安全,并且可以以非安全的方式从所述计算机终端被运送或传送至所述装置,例如经过诸如因特网的相对非安全的公开网络。因此在实施例中,所述计算机终端可经安排以经由网络供应所述经签名的解锁文件至所述存储位置,例如经由诸如因特网的互联网。
所述计算机终端可以远离所述装置,例如分开至少200米远。所述计算机终端可在地理上远离所述装置,例如分开至少10公里。所述计算机终端可操作以通过所述交互的方式来发起所述经签名的解锁文件的所述生成。所述发起可以包括从所述计算机终端供应所述标识符的所述拷贝给所述便携式
安全单元。所述计算机终端可以经安排以经由网络从所述处理器接收所述标识符的所述拷贝,例如经由诸如因特网的互联网。所述交互可以包括所述便携式安全单元与所述计算机终端物理地配对。在实施例中,可以使用插入到PC中的安全软件狗来生成该解锁文件。在这样的情况下,向所述软件狗反馈将要被解锁的所述芯片的所述芯片ID,并且所述软件狗返回经签名的解锁文件。用于签名该文件的私有解锁密钥在所述软件狗内保密。 因为不能从所述软件狗中读取或者以其他方式提取所述私有解锁密钥,同时所述软件狗的内部装置被安全地封装在防拆封的封装中,因此该软件狗将不会危害其他装置的安全。还应该仅提供少量的软件狗给具有适当的合法限制的可信合作伙伴。另外,在一个具体的有利实施例中,对软件狗进行预编程以在其必须被“充值”之前允许小数目( 100)的解锁事件,所述“充值”例如通过被返回到所述软件狗提供商或从所述提供商接收充值文件。但是除此之外,优选地所述软件狗应当仅允许非常有限的I/o(优选地仅签名所述解锁文件和接收重新充值)。因此在实施例中,所述便携式安全单元可以包括计数器,其经安排以便将所述密码逻辑限制到生成有限数目的解锁文件。所述系统可以包括重新充值设施,其允许经授权的提供商重新充值所述计数器。所述重新充值设施可以经安排以远程供应经签名的重新充值文件给所述便携式安全单元,所述重新充值文件采用私有重新充值密钥所签名;以及所述密码逻辑可以经配置以使用相应的公开重新充值密钥来验证所述重新充值文件是否是采用所述私有重新充值密钥所签名,并且在这样对所述经签名的重新充值文件进行验证的条件下重新充值所述计数器。所述密码逻辑可以经配置以防止对于同一个标识符生成多个解锁证书。在另外的实施例中,可以采用私有代码密钥对所述附件代码进行签名,所述代码认证过程可以经配置以使用与所述私有代码密钥相对应的公开代码密钥来验证所述附加代码,以及所述解锁认证过程可以经配置以使用与所述私有解锁密钥相对应的公开解锁密钥来验证所述解锁文件。可以采用所述私有代码密钥的较高安全实例和所述私有代码密钥的较低安全实例之一来对所述附加代码进行签名;以及,在所述较高安全级别,所述代码认证过程可以要求使用与第一私有密钥的所述较高安全实例相对应的所述公开代码密钥的实例来验证所述附加代码;以及,在所述较低安全级别,所述代码认证过程可以允许使用与所述第一私有密钥的较低安全实例相对应的所述公开代码密钥的实例来验证所述附加代码。所述引导代码可以包括主引导代码和次级引导代码,所述主引导代码存储在嵌入所述处理器上的只读存储器中;以及,所述处理器可以硬连线以一旦所述处理器启动或者重启则执行所述主引导代码,所述主引导代码可以包括初步认证过程,其经配置以验证所述次级引导代码是否经认证用于在所述处理器上执行,以及所述次级引导代码可以包括所述代码认证过程和解锁认证过程。可以采用第一阶段私有代码密钥来对次级引导代码进行签名,可以采用第二阶段私有代码密钥来对所述附加代码进行签名,所述初步认证过程可以经配置以使用与所述第一阶段私有代码密钥相对应的第一阶段公开代码密钥来验证所述次级引导代码,以及所述次级引导代码可以经配置以使用与所述第二阶段私有代码密钥相对应的第二阶段公开代码密钥来验证所述附加代码。所述附加代码可以包括数据认证过程,其经配置以验证数据是否经认证用于在所述处理器上加载。可以采用私有数据密钥来对所述数据进行签名,并且所述数据认证过程可以经配置以使用与所述私有数据密钥相对应的公开数据密钥来验证所述数据。所述密码逻辑可以包括密码处理器和存储器,所述存储器存储经安排用于在所述密码处理器上执行的密码函数。所述私有解锁密钥可以物理地密封在所述便携式安全单元中。所述私有解锁密钥可以经安排以不可外部寻址。所述便携式安全单元可以包括USB软件狗和智能卡之一。根据本发明的另一个方面,提供一种对包括处理器和存储器的装置进行解锁的方法,所述存储器存储经安排以由所述处理器一旦启动或者重启便自动地执行的引导代码,其中所述引导代码包括可操作以对附加代码是否经认证用于在所述处理器上执行进行验证的代码认证过程,所述方法包括在单独的安全单元内使用私有解锁密钥来签名部分数据,从而生成经签名的解锁文件;以及供应所述解锁文件至所述处理器可访问的存储位置,使得所述解锁文件对于所述处理器是可用的,而无需要求所述处理器和所述安全单元之间的连接;以及其中所述引导代码进一步包括解锁认证过程,并且所述方法进一步包括,一旦引导便执行所述代码认证过程以对在所述存储位置中的所述解锁文件的可用性进行检查,并且如果可用则基于其签名来验证所述解锁文件是否经认证用于所述处理器,使得在验证所述解锁文件的条件下对所述引导认证过程去除限制。所述方法可以包括根据以上任何系统特征的进一步的步骤。


为了更好地理解本发明和示出如何实施本发明,通过示例的方式对以下附图加以参考,其中图I是公开密钥和私有密钥对生成过程的示意性框图,图2是用于认证和运行经签名的次级代码的处理器系统的示意性框图,图3是用于认证解锁文件来对未经签名的次级代码的运行进行解锁的处理器系统的示意性框图,以及图4是用于生成经签名的解锁文件的过程的示意性框图。
具体实施例方式在以下实施例中,本发明修改安全引导代码以查找和认证包括当前芯片(处理器)的ID的经签名的解锁文件。如果存在,安全引导和潜在的任何其他有安全意识的应用程序将接受没有采用安全的生产强度密钥所签名的其他代码和数据(但取而代之的是仅要求采用低安全的开发强度密钥来签名)。图3示出类似于关于图2所描述的处理器204,其包括CPU 206和存储主引导代码的主引导存储器208。处理器204耦合至存储次级引导代码以及其他应用程序和/或数据的外部存储器212。可替代地,次级引导代码可存储在次级片上存储器210中,和/或其他应用程序或数据可存储在磁性存储介质中或从因特网取回,但在以下示例中假设这些都存储在外部闪存形式的片外存储器212中。将要运行在经锁定的生产装置302上的任何软件代码均由私有生产密钥所签名,从而指示它的可靠性(假设它确实是可靠的)。引导代码经安排以便一旦处理器204启动或重启便由CPU 206自动地执行,并且当如此执行时,使用相应的公开生产密钥来验证签名的可靠性。 实际上,在优选实施例中有生产密钥的多个阶段,如下所讨论的。采用第一阶段私有生产密钥A来签名次级引导代码。CPU 206是硬连线的,使得一旦处理器启动或重启便从主引导存储器208自动地开始执行主引导代码。主引导代码经安排,以便当以这样的方式执行时,使用相应的第一阶段公开生产密钥A’来对次级引导代码的可靠性进行验证。主引导代码仅在次级引导代码经验证已经采用正确的第一阶段私有生产密钥A所可靠地签名的情况下允许其执行。采用第二阶段私有生产密钥B来签名应用程序。次级引导代码包括负责加载应用程序的引导代码部分,并且经安排以便当被执行时使用相应的第二阶段生产密钥B’来对其正试图加载的任何应用程序的可靠性进行验证。次级引导代码因此将仅加载这样的应用程序已验证对它们已经采用正确的第二阶段私有生产密钥B所可靠地签名。另外,将采用第三阶段私有生产密钥C来对应用程序所要求的任何数据进行签名。处理器上运行的任何安全应用程序均应该经安排以使用相应的第三阶段公开生产密钥C’来验证数据的可靠性。应用程序因此将仅对这样的数据进行操作已验证对它们已经采用正确的第三阶段私有生产密钥C所可靠地签名。数据就以上所使用的意义而言意味着信息而非程序代码自身的指令。处理器204安装在装置302形式的生产平台内,装置302例如用于在诸如移动终端、无线数据卡或其他用户设备的产品中使用的电路板。诸如外部闪存212或RF前端(未示出)的其他部件可以安装在相同的装置302内并且可操作地耦合至处理器204。处理器204包括诸如电熔丝或激光熔丝的熔丝堆316。在具体的优选实施例中,这些熔丝包括至少这样一个熔丝当其被熔断时,设置处理器204为受限制的生产模式,否则将其设置为去除限制的开发模式。对于上述的生产密钥对的所述阶段的每一个来说,还提供相应的开发密钥对。引导代码和应用程序经配置以便检查处理器204的模式,并且如果开发模式被使能,那么在每个阶段都首先试图使用开发密钥来认证下一个阶段。如果基于开发密钥的认证不成功,那么回复到基于生产密钥的认证。另一方面,在生产模式中只有采用生产密钥所签名的代码和数据可被成功地验证和运行。也就是说,在开发模式中,主引导代码最初尝试使用第一阶段公开开发密钥Adev’来验证次级引导代码是否采用相应的第一阶段私有开发密钥Adev所可靠地签名。如果没有,然后主引导代码尝试使用第一阶段公开生产密钥Apm/来验证次级引导代码是否采用第一阶段私有生产密钥Aprod所可靠地签名。如果任意一次验证检查成功,那么主引导代码允许次级引导代码执行,但是如果两次均不成功,那么主引导代码阻止次级引导代码执行。这可能导致引导被挂起并且可能生成异常(exception)。依次,假设第一阶段认证过程成功,那么次级引导代码尝试使用第二阶段公开开发密钥Bdev’来验证它将要加载的任何应用程序是否已经采用相应的第二阶段私有开发密钥Bd6v所可靠地签名。如果没有任何应用程序已经被可靠地签名,则次级引导代码接下来尝试使用第二阶段公开生产密钥Bpm/来验证应用程序是否已经采用第二阶段私有开发密钥Bprod所可靠地签名。如果对于应用程序的任意一次验证检查成功,那么第二引导代码允许应用程序执行,但是如果应用程序两次检查失败,那么次级引导代码阻止应用程序执行。如果任何所执行的应用程序要求数据,则它可以进一步要求数据文件被认证。因此在这种情况下,应用程序首先尝试使用第三阶段公开开发密钥Cdev’来验证数据文件是否已经采用相应的第三阶段私有开发密钥Cdev所可靠地签名。如果没有,那么应用程序尝试使用第三阶段公开生产密钥CPr。/来验证数据文件是否已经采用第三阶段私有生产密钥Cprod 所可靠地签名。如果任意一次验证检查成功,那么应用程序允许数据文件加载,但是如果两次均不成功,那么应用程序不加载数据文件。另一方面在生产模式中,在熔丝堆316中所熔断的相关的单个熔丝或数个熔丝将过程限制为,仅尝试使用公开生产密钥Apm/ ,Bpro/、CpMd’来验证可靠性,并且因此只有采用相应的私有生产密钥ApMd、Bprod, Cprod所签名的代码或数据将被成功验证。在生产模式中采用私有开发密钥Ad6V、Bd6V或Cd6v所签名的任何代码或数据都将被拒绝,这是因为基于公开开发密钥Adev’、Bdev’或Cdev’的检查被禁用。由供应商,诸如板或芯片的制造商或者委托制造板或芯片的某人,来提供在生产模式(生产平台)中具有处理器204的装置302。装置302被提供给客户,诸如上述的用户设备的制造者(即,工业客户而非最终用户)。例如客户可以是OEM(原始设备制造商)。由具有使用在实际产品中的目的的供应商来提供生产平台。另一方面开发平台用于测试。一般因为私有开发密钥被制作为更易于得到,因此开发密钥的安全性低于生产密钥。然而,在制造中处理器204的大多数实例将熔合进入生产模式中。仅很少的保留在开发模式中的实例将被分配,因此开发密钥可被制作为更易于得到而不会危害处理器204的很多实例的安全。尽管如此,允许客户在生产平台上测试新的代码是可取的,但仅是在生成平台中已经被特别“经解锁”用于这种测试的一些个别的实例上。例如,可期望的是,在原始开发测试之后的阶段和/或在不同于客户主要开发地点的位置,在“现场”的生产装置上测试新的软件。解锁优选地包括使处理器回到开发模式中,从而处理器可再来验证仅使用较低安全的开发密钥所签名的软件,并且不要求生产密钥。然而可替代地,其他实施例被设想,诸如绕过整个认证过程中的一些或所有。在优选实施例中,使用软件狗(dongle)306生成经签名的解锁文件来达到解锁。如图3中所示,生产装置或平台302的CPU 206例如通过装置302中的通用I/O端口(未示出)或测试接口来耦合至与CPU 206分开的诸如台式或膝上型PC的本地计算机终端303。另外,提供可在地理上远离CPU 206、装置302和它的本地终端303,但经由诸如因特网的网络307连接的远程计算机终端304。远程计算机终端304包括软件狗306可插入其中的端口,诸如USB端口。当计算机终端304地理上远离CPU 206时,设想它们将一般位于不同的城镇或地理区域,或者甚至不同的国家或大洲中,并且因此分开数公里、数十公里、数百公里或更远的量级的距离。这将意味着超过了局域网(LAN)的范围之外。然而,在其他情况下,远程终端304可以只是位于同一个办公室或复合型公司(complex)的不同的区域,在这个意义上的远程是超过本地或点对点(ad-hoc)连接的范围(例如,由USB 2.0规定的最大线缆长度是5米、蓝牙4. 0具有达到200m的范围以及Wi-Fi具有一般100_200m的可变范围)。如图3和4中所示,软件狗306自身包括密码逻辑308,例如以出于是运行密码函数402的目的而特别包括的其自己的处理器的形式。这样的处理器有时可称之为密码处理器(cryptoprocessor)。在一个具体示例中,密码处理器包括用于连接至远程计算机终端304的USB接口 314;基础CPU 310 ;以及小的、安全的嵌入式存储器312,其存储被安排用于在CPU310上执行的密码函数。软件狗的存储器312还存储私有解锁密钥U,其与开发和生 产密钥相异。可替代地,私有解锁密钥U可写入被嵌入在软件狗306中的单独的熔丝锁存器组中,和/或密码逻辑308可在硬连线电路中实现。另外,处理器204包括芯片标识符(ID),其唯一地识别芯片(实际上,唯一的芯片标识符可以事实上是具有非常低的与另一个芯片的标识符一致的可能性的多位随机数——这是在本领域中如果出现术语“唯一”的常见用法)。该芯片ID优选地写入被包括在处理器204上并耦合至CPU 206的熔丝锁存器堆316中,或者否则至少可由本地计算机终端303访问(可访问,但不能被改变)。这些熔丝锁存器可以是例如电熔丝或激光熔丝。可替代地,芯片ID原则上可包括在安全的主ROM 208中(尽管一般其实用性很小)。如果期望解锁特定的生产平台来测试一些试用代码,则供应芯片ID给远程计算机终端304,并且然后在远程计算机终端304上执行工具,该远程计算机终端304供应芯片ID给软件狗306的密码逻辑308。如图4中所示意性示出的,密码逻辑308采用芯片ID和潜在的其他信息作为输入。密码逻辑308使用私有解锁密钥U来签名该信息(包括芯片ID)并且因此生成经签名的解锁文件,该解锁文件返回到在远程计算机终端304上运行的工具。该工具转而从远程计算机终端304供应解锁文件给生产装置302上的处理器204。然后处理器204存储解锁文件至外部存储器212 (或真正地至另一个存储器诸如次级片上存储器210)。优选地解锁文件可经由网络307和本地计算机终端303传送至生产装置302,例如通过email ;或在其他实施例中,解锁文件甚至可在诸如磁盘或记忆棒的便携式存储介质上通过邮寄或快递来运送。类似地,芯片ID最初可经由网络307和装置302的本地终端303,或可替代地通过邮寄或快递甚或口头地提供给远程计算机终端304和软件狗306。因此有利地,系统经安排使得生产装置302不需要物理连接至软件狗306或存在于与软件狗306相同的地点。图4中所示的一切均可在不同于生产装置302的地点远程完成。这很重要,因为客户可能在一个国家或大洲中的城市诸如圣何塞,同时制造商可能在例如亚洲或欧洲的另一个国家。这样可以从软件狗306通过非安全的网络或其他非安全的运送方式来供应解锁文件,但是因为解锁文件与芯片ID绑定,因此该解锁文件不能用来解锁预期以外的任何其他装置,并因此不会危害处理器204的任何其他实例的安全。
当处理器204启动或重启,它自动开始从主引导存储器208执行主引导代码,并且然后从片外存储器212 (或次级片上存储器210)执行次级引导代码。次级引导代码经配置以检查经签名的解锁文件的可用性。例如,其可经配置以检查次级片上存储器210和/或外部存储器212中的一个或多个预定的存储器位置。如果可靠,如前面的段落中所讨论的,解锁文件将已经采用正确的私有解锁密钥U所签名。次级引导代码包括或具有与私有解锁密钥U相对应的公开解锁密钥U,的知识,并且经配置以如果存在解锁文件,则使用该公开解锁密钥U,来验证解锁文件的可靠性。该认证过程还以解锁文件的芯片ID与处理器204的熔丝堆316上的芯片ID相匹配为条件。如果不匹配,解锁文件可以是被可靠地签名的,但其用于处理器的不同实例。在解锁文件被验证为可靠的并且基于其芯片ID而被用于处理器204的当前实例的条件下,次级引导代码使处理器204进入“经解锁”模式,据此它通过重新允许采用较低安全的开发密钥Bdev和Cdev所签名的应用程序和数据得以被认证和运行,来去除对验证过 程的限制,有效地使处理器204回到开发模式(除了次级引导代码仍然不得不采用第一阶段生产密钥Aprad而不是第一阶段开发密钥Ad6v来签名以外)。可替代地,经解锁模式甚至可绕过上述描述的一些或所有认证过程(或忽略认证过程的结果),从而为了测试的目的,可运行或加载未经签名的次级引导代码、应用程序和/或数据文件。另一方面如果认证文件不存在或没有被验证为可靠的,或芯片ID不匹配;那么处理器204未被解锁、去除限制未被实施、并且因此仍然要求基于生产密钥的认证过程,从而只有采用私有生产密钥Bprad所签名的应用程序可以运行,并且只有采用私有生产密钥Cprod所签名的数据才能加载用于数据处理。受制于下列需要条件的其中之一得到满足,可在处理器204上执行这样的应用程序和/或可加载数据(i)代码和/或数据经验证为分别采用较高安全级别的私有密钥Bprod和/或Cprod所可靠地签名;或(ii)处理器已经由通过私有解锁密钥U所签名的经认证解锁文件的存在所解锁,并且代码和/或数据经验证为分别采用较低安全级别的私有密钥Bdev和/或Cd6v所可靠地签名。在一个具体的优选实施例中,密码逻辑308包括计数器404,其经安排以维护信用值,并且每次生成解锁文件(“解锁事件”)时递减。可在用于在密码处理器上执行的固件中或在硬连线电路中实施计数器功能。向客户提供充值至一定初始值例如上百量级的计数器404,并且该计数器404经安排以一旦递减至零,则阻止任何进一步的解锁事件。软件狗的计数器404可经安排使得仅可通过将其返回供应商处才得以重新充值(如果真发生的话)。信用值自身由另一个私有密钥所再次签名以确保安全,同时密码逻辑308经安排以验证计数值的可靠性以使得只有由供应商才能对其重新充值。计数器还可以通过从供应商处接收经签名的重新充值文件来进行重新充值,同时密码逻辑308经安排以在允许重新充值前验证重新充值文件的可靠性。在那样的情况下,重新充值还可在客户的地点远程实施。不论哪种方式,计数器404均不能自由地重新充值。为了避免解锁事件的浪费,在进一步的实施例中,密码逻辑308可经配置以例如通过在其相关联的存储器312中存储经解锁芯片ID的列表,来禁止对同一芯片ID生成多个解锁文件。可替代地,为了达到类似的目的,如果解锁事件针对已经被解锁的芯片ID,则密码逻辑308可防止计数器404递减(尽管如果针对该芯片ID的原始解锁文件已经被故意撤销或损坏的话,该解决方案可能安全性较低)。如提到的,请注意次级引导代码经配置使得处理器的解锁是以包含在解锁文件中的芯片ID是否与处理器204的芯片ID相匹配为条件的。这防止同一个解锁文件被拷贝并用于解锁处理器的多个实例。只有已经明确地被选择用于解锁的处理器的具体实例才可以成功地使用解锁文件。还要注意,主引导代码经安排使得其不能被客户或用户所绕过或修改,同时主引导存储器208优选地被硬连线为引导代码的最初来源。一旦主引导代码已经认证次级引导代码,则次级引导代码就像主引导代码一样是可信的并且因此也不能被绕过。另外,软件狗306经安排使得其内部内容(除了诸如重新充值的特定安全操作以外)不能被读取或修改——它的内部存储器是不可寻址的或者在其他方面不可从USB接口或类似装备所访问 的。优选地,应由生产平台302或处理器204的制造商或供应商以及由被给予软件狗的用户,来将软件狗306的每个实例物理地锁藏在保险柜或类似设备中,并且应该仅分配少量的软件狗306给有限数目的可信客户。因为每个软件狗仅可以解锁特定的生产装置302、只有很少的软件狗将投入流通并且每个软件狗均仅可解锁很少的最终设备,因此大多数生产处理器的安全将不会受危害。优选地使用标准的PKI (公开密钥设施)技术来分配公开密钥给客户。该解决方案的优点在于,产品的制造者(客户)可迅速地在现场解锁个别装置而不会给其他装置的安全带来危险。这使用可信的PKI原理来进行。具体地,关键的“机密”仅是用于签名解锁文件(在具有有限数目应用程序的软件狗中或在安全开发中心的进行签名的服务器中是安全的)和重新充值软件狗(保存在安全开发中心并且和生产密钥一样小心对待)的私有密钥。对私有密钥的所有使用和密钥生成,优选地应该采用诸如签名仪式、审计跟踪和证据等预防措施。在另外的实施例中,经签名以形成解锁文件的信息可以不仅包括芯片ID还包括指示,该指示识别私有解锁密钥U的多个版本中哪个已经用来签名解锁文件。假如解锁密钥对U的一个版本受到危害,那么提供机制以撤销该版本。在该情况下,将分配新的公开解锁密钥U’给客户,并且所有另外的软件狗306都将经配置以采用新的私有解锁密钥U来签名解锁文件。在解锁文件中相应的指示将对于处理器204识别应该使用哪个版本公开解锁密钥U’来认证它。将理解,仅通过示例的方式描述了以上实施例。例如,本发明不限于“软件狗”的任何具体物理形式诸如USB单元,并且更通常地可以任何便携式安全单元的形式来实施。例如在可替代的实施例中,便携式安全单元可以采用智能卡的形式。在另一个替代选择中,远程服务器可取代便携式安全单元,经经配置以签名解锁文件。安全单元可输出解锁文件用于供应至安全单元自身之外的处理器可访问的任何存储位置,无论是在与处理器相同的芯片上或片外,以及是诸如闪存的电子存储介质或诸如硬盘驱动器的磁性存储介质,或其他。另外,虽然为优选的,但本发明不限于用于连续地验证次级引导代码、应用程序和此外的数据的可靠性的多阶段开发。例如可替代地,主引导代码、次级引导代码和/或应用程序可基于相同的密钥对来实施它们的认证,或者单个的自包含(self-contained)引导ROM可直接认证应用程序和/或数据。另外,本发明不限于上面所讨论的基于开发和生产密钥的具体安全模式。在其他实施例中可以仅有一组密钥,并且依据解锁文件的处理器去除限制包括一旦引导,则绕过至少一部分认证过程。可替代地,可以有多级别的去除限制,例如超过一组开发密钥和一组生产密钥,并且不同级别的解锁文件允许对去除限制的不同级别加以访问。在该情况下,解锁文件中的经签名信息可以不仅包括芯片ID而且包括识别解锁文件的级别的指示。因此不同类型的安全受限制和去除限制的模式均是可能的。另外,这些模式不需要必须由熔丝锁存器来设置,并且更通常地可以通过任意设定来进行设置,例如另一种硬件设定诸如物理密封的(physically-sealed)的数字或机械交换机,或者另一种由硬件所保护的机制诸如在一次性可编程(OTP)存储器中的代码或数据。在该上下文中硬件设定意味着不能由客户使用外部运行或在处理器204自身上运行的软件来更改的任何设定。
此外,本发明不限于涉及主引导代码和次级引导代码的情况。在可替代的实施例中,引导代码可以仅包括主引导代码,该主引导代码包括可操作以加载其他非引导应用程序的加载器,其受制于那些应用程序的认证或经认证解锁文件的存在。因此本文所使用的短语“主”引导代码不必然隐含次级引导代码的存在,而更通常是指,在处理器的启动或重启时必须总是被执行的引导代码。在不需要次级引导的情况下,主引导代码可实现解锁文件认证。另外,本发明不限于在远程计算机终端304上远程生成解锁文件。在另外的替代选择中,可在本地计算机终端303上或者甚至通过将软件狗直接插入装置302的合适端口来生成解锁文件。在后一种情况下,虽然通过将软件狗306连接至装置302来生成解锁文件,但甚至在软件狗306随后已经断开连接之后,对于处理器来说解锁文件仍保持为可用的。另外,本发明不限于所描述的涉及供应商和客户的场景。在其他的用于示例的场景中,生产装置可从第一部门供应给同一组织的第二部门,并且随后解锁文件会允许第二部门来解锁生产平台。此外注意,术语“解锁文件”不限于任何具体的文件结构。一般而言,解锁文件可以是其中部分信息采用私有解锁密钥所签名的任何文件、证书或其他数据项。如所述的,信息可以包括芯片ID以及可选地包括对于私有解锁密钥的哪个版本被使用和/或解锁文件的安全级别的指示。不排除包括在该信息中包括进一步要素的选项。然而在另外的实施例中,标识符无需是经熔合的芯片ID,而可以是芯片204或装置302的另一种类型的标识符。可替代地,考虑到全局解锁文件的可能性,解锁文件中经签名的信息根本不必然需要包括芯片或装置标识符(虽然该实施例可能造成大多数应用程序中的不良安全风险)。关于术语的另一个点,注意本领域中有时可使用术语“认证”来指代通过签名来标记代码或数据为可靠的行为,或者作为随后对可靠性进行验证的简要写法。通过注意该情形来避免混淆——由分配代码或数据的一方来实施签名,并且在代码或数据已经签名后由处理器来实施验证。此外,虽然以上已依据单个的中央处理单元来进行描述,但这不排除处理器阵列的多核中央处理单元的可能性。类似地,在指代上述具体存储器的场合,不排除可在多个分离的存储器单元或区域中实现该存储器。对于完整性,还要注意在代码或数据的存储位置与CPU之间可以安排有DMA引擎和/或缓存机制(未示出)。此外,一个或多个存储器可实现为单独的程序或数据存储器,或可替代地程序代码和数据可存储在一个或多个共享存储器中。对于得到本文公开内容的技术人员来说,本发明的其他使用和配置可以是明显的。本发明不受所描述的实施例所限制,而仅由随附的权利要求 所限制。
权利要求
1.一种系统,包括 包括处理器和存储器的装置,所述存储器存储经安排以由所述处理器一旦启动或重启便自动执行的引导代码,其中所述引导代码包括可操作以验证附加代码是否经认证用于在所述处理器上执行的代码认证过程;以及 包括私有解锁密钥和密码逻辑的单独的安全单元,所述密码逻辑经配置以使用所述私有解锁密钥来签名部分数据,从而生成经签名的解锁文件用于供应至存储位置; 其中所述处理器经安排以从所述存储位置访问所述解锁文件,使得所述解锁文件对于所述处理器是可用的,而无需要求所述处理器和所述安全单元之间的连接;以及 其中所述引导代码进一步包括解锁认证过程,所述解锁认证过程经配置以对在所述存储位置中的所述解锁文件的可用性进行检查,并且如果可用,则基于其签名来验证所述解锁文件是否经认证用于在所述处理器上使用,以便在验证所述解锁文件的条件下对所述引导认证过程去除限制。
2.根据权利要求I所述的系统,其中所述处理器具有受限制模式和去除限制模式,并且通过硬件设定或由硬件所保护的其他机制来设置为所述受限制模式,所述代码认证过程经配置以在所述受限制模式中以较高安全级别进行操作,以及在所述去除限制模式中以较低安全级别进行操作;以及 其中所述解锁认证过程经配置以通过覆写所述硬件设定或其他受硬件保护的机制并且因此启用所述去除限制模式来实施所述去除限制。
3.根据权利要求2所述的系统,其中所述处理器由一个或多个熔丝锁存器设置为所述受限制模式,所述解锁认证过程经配置以通过覆写所述一个或多个熔丝锁存器来实施所述去除限制。
4.根据以上任何一项权利要求所述的系统,其中 所述装置包括所述装置和所述处理器中的至少一个的标识符; 所述密码逻辑经配置以使用所述私有解锁密钥来对包括所述标识符的拷贝的部分数据进行签名,从而生成所述经签名的解锁文件;以及 所述解锁认证过程经配置以基于所述解锁文件的签名和所述标识符来验证所述解锁文件是否经认证用于在所述处理器上使用。
5.根据权利要求4所述的系统,其中 所述处理器具有嵌入式芯片标识符; 所述密码逻辑经配置以使用所述私有解锁密钥来对包括所述芯片标识符的拷贝的部分数据进行签名,从而生成所述经签名的解锁文件;以及 所述解锁认证过程经配置以基于所述解锁文件的签名和芯片标识符来验证所述解锁文件是否经认证用于在所述处理器上使用。
6.根据权利要求5所述的系统,其中所述芯片标识符被写入所述处理器的熔丝锁存器中。
7.根据以上任何一项权利要求所述的系统,其中所述安全单元是便携式安全单元。
8.根据权利要求7所述的系统,包括单独的计算机终端,其可操作以与所述便携式安全单元交互并由此接收所述经签名的解锁文件,并且供应所述经签名的解锁文件至所述存储位置。
9.根据权利要求8所述的系统,其中所述计算机终端经安排以经由网络供应所述经签名的解锁文件至所述存储位置。
10.根据权利要求9所述的系统,其中所述计算机终端经安排以经由互联网供应所述经签名的解锁文件至所述存储位置。
11.根据权利要求8、9或10所述的系统,其中所述计算机终端远离所述装置,其分开至少200米。
12.根据权利要求11所述的系统,其中所述计算机终端在地理上远 离所述装置,其分开至少10公里。
13.根据权利要求8至12任何一项所述的系统,其中所述计算机终端可操作以通过所述交互的方式来发起所述经签名的解锁文件的所述生成。
14.根据权利要求4和13所述的系统,其中所述发起包括从所述计算机终端供应所述标识符的所述拷贝给所述便携式安全单元。
15.根据权利要求14所述的系统,其中所述计算机终端经安排以经由网络从所述处理器接收所述标识符的所述拷贝。
16.根据权利要求15所述的系统,其中所述计算机终端经安排以经由互联网从所述处理器接收所述标识符的所述拷贝。
17.根据权利要求8至16任何一项所述的系统,其中所述交互包括所述便携式安全单元与所述计算机终端物理地配对。
18.根据权利要求7至17任何一项所述的系统,其中所述便携式安全单元包括计数器,所述计数器经安排以便将所述密码逻辑限制到生成有限数目的解锁文件。
19.根据权利要求18所述的系统,包括重新充值设施,其允许经授权的提供者来重新充值所述计数器。
20.根据权利要求19所述的系统,其中所述重新充值设施经安排以远程供应经签名的重新充值文件给所述便携式安全单元,所述重新充值文件采用私有重新充值密钥所签名;以及所述密码逻辑经配置以使用相应的公开重新充值密钥来验证所述重新充值文件是否采用所述私有重新充值密钥所签名,并且在这样对所述经签名的重新充值文件进行验证的条件下重新充值所述计数器。
21.根据权利要求18、19或20所述的系统,其中所述密码逻辑经配置以防止对于同一个标识符生成多个解锁文件。
22.根据以上任何一项权利要求所述的系统,其中所述附加代码采用私有代码密钥所签名,所述代码认证过程经配置以使用与所述私有代码密钥相对应的公开代码密钥来验证所述附加代码,并且所述解锁认证过程经配置以使用与所述私有解锁密钥相对应的公开解锁密钥来验证所述解锁文件。
23.根据权利要求2和22所述的系统,其中 所述附加代码采用所述私有代码密钥的较高安全实例和所述私有代码密钥的较低安全实例之一所签名; 在所述较高安全级别,所述代码认证过程要求使用与第一私有密钥的所述较高安全实例相对应的所述公开代码密钥的实例来验证所述附加代码;以及 在所述较低安全级别,所述代码认证过程能使用与所述第一私有密钥的所述较低安全实例相对应的所述公开代码密钥的实例来验证所述附加代码。
24.根据以上任何一项权利要求所述的系统,其中 所述引导代码包括主引导代码和次级引导代码,所述主引导代码存储在嵌入所述处理器上的只读存储器中;以及 所述处理器硬连线以一旦所述处理器启动或者重启,则执行所述主引导代码,所述主引导代码包括初步认证过程,其经配置以验证所述次级引导代码是否经认证用于在所述处理器上执行,以及所述次级引导代码包括所述代码认证过程和解锁认证过程。
25.根据权利要求22和24所述的系统,其中所述次级引导代码采用第一阶段私有代码密钥所签名,所述附加代码采用第二阶段私有代码密钥所签名,所述初步认证过程经配置以使用与所述第一阶段私有代码密钥相对应的第一阶段公开代码密钥来验证所述次级引导代码,以及所述次级引导代码经配置以使用与所述第二阶段私有代码密钥相对应的第二阶段公开代码密钥来验证所述附加代码。
26.根据以上任何一项权利要求所述的系统,其中所述附加代码包括数据认证过程,其经配置以验证数据是否经认证用于在所述处理器上加载。
27.根据权利要求22和26所述的系统,其中所述数据采用私有数据密钥所签名,并且所述数据认证过程经配置以使用与所述私有数据密钥相对应的公开数据密钥来验证所述数据。
28.根据以上任何一项权利要求所述的系统,其中所述密码逻辑包括密码处理器和存储器,所述存储器存储经安排用于在所述密码处理器上执行的密码函数。
29.根据权利要求7或其任何一项从属权利要求所述的系统,其中所述私有解锁密钥物理地密封在所述便携式安全单元内。
30.根据权利要求7或其任何一项从属权利要求所述的系统,其中所述私有解锁密钥经安排以不可外部寻址。
31.根据权利要求7或其任何一项从属权利要求所述的系统,其中所述便携式安全单元包括USB软件狗和智能卡之一。
32.—种对包括处理器和存储器的装置进行解锁的方法,所述存储器存储经安排以由所述处理器一旦启动或者重启便自动执行的引导代码,其中所述引导代码包括可操作以验证附加代码是否经认证用于在所述处理器上执行的代码认证过程,所述方法包括 在单独的安全单元内使用私有解锁密钥来签名部分数据,从而生成经签名的解锁文件;以及 供应所述解锁文件至所述处理器可访问的存储位置,使得所述解锁文件对于所述处理器是可用的,而无需要求所述处理器和所述安全单元之间的连接;以及 其中所述引导代码进一步包括解锁认证过程,并且所述方法进一步包括一旦引导便执行所述代码认证过程,以对在所述存储位置中的所述解锁文件的可用性进行检查,并且如果可用,则基于其签名来验证所述解锁文件是否经认证用于在所述处理器上使用,以便在验证所述解锁文件的条件下对所述引导认证过程去除限制。
33.根据权利要求32所述的方法,其中所述处理器具有受限制模式和去除限制模式,并且通过硬件设定或者由硬件所保护的其他机制来设置为所述受限制模式,所述代码认证过程经配置以在所述受限制模式中以较高安全级别进行操作,以及在所述去除限制模式中以较低安全级别进行操作;以及 其中所述去除限制包括覆写所述硬件设定或其他受硬件保护的机制并且因此启用所述去除限制模式。
34.根据权利要求33所述的方法,其中通过一个或多个熔丝锁存器将所述处理器设置为所述受限制模式,并且所述去除限制包括覆写所述一个或多个熔丝锁存器。
35.根据权利要求32至34任何一项所述的方法,其中 所述装置包括所述装置和所述处理器中的至少一个的标识符; 使用所述私有解锁密钥来对包括所述标识符的拷贝的部分数据进行签名,来生成所述解锁文件;以及 基于所述解锁文件的签名和所述标识符来验证所述解锁文件是否经认证用于在所述处理器上使用。
36.根据权利要求35所述的方法,其中 所述处理器具有嵌入式芯片标识符; 使用所述私有解锁密钥来对包括所述芯片标识符的拷贝的部分数据进行签名,来生成所述解锁文件;以及, 所述解锁认证过程经配置以基于所述解锁文件的签名和芯片标识符来验证所述解锁文件是否经认证用于在所述处理器上使用。
37.根据权利要求36所述的方法,其中将所述芯片标识符写入所述处理器的熔丝锁存器中。
38.根据权利要求32至37任何一项所述的方法,其中在便携式安全单元中生成所述解锁文件。
39.根据权利要求38所述的方法,包括通过与所述便携式安全单元交互来在单独的计算机终端处接收所述经签名的解锁文件,并且从所述计算机终端供应所述经签名的解锁文件至所述存储位置。
40.根据权利要求39所述的方法,其中经由网络从所述计算机终端供应所述经签名的解锁文件至所述存储位置。
41.根据权利要求40所述的系统,其中经由互联网从所述计算机终端供应所述经签名的解锁文件至所述存储位置。
42.根据权利要求39、40、41所述的方法,其中从所述计算机终端远程供应所述经签名的解锁文件至所述存储位置,其分开至少200米。
43.根据权利要求42所述的方法,其中所述计算机终端在地理上远离所述存储位置,其分开至少10公里。
44.根据权利要求39至43任何一项所述的方法,包括通过所述交互的方式来发起所述经签名的解锁文件的所述生成。
45.根据权利要求35和44所述的方法,其中所述发起包括从所述计算机终端供应所述标识符的所述拷贝给所述便携式安全单元。
46.根据权利要求45的所述方法,其中由所述计算机终端经由网络从所述处理器接收所述标识符的所述拷贝。
47.根据权利要求46所述的方法,其中由所述计算机终端经由互联网从所述处理器接收所述标识符的所述拷贝。
48.根据权利要求39至47任何一项所述的方法,其中所述交互包括所述便携式安全单元与所述计算机终端物理地配对。
49.根据权利要求38至48任何一项所述的方法,包括对所述便携式安全单元内的计数器进行操作,以便限制由所述便携式安全单元所生成的解锁文件的数目。
50.根据权利要求49所述的方法,包括在经授权的提供商的控制下重新充值所述计数器。
51.根据权利要求50所述的方法,包括远程供应经签名的重新充值文件给所述便携式安全单元,所述重新充值文件采用私有重新充值密钥所签名;以及使用所述便携式安全单元内相应的公开重新充值密钥来验证所述重新充值文件是否采用所述私有重新充值密钥所签名,并且在这样对所述经签名的重新充值文件进行验证的条件下重新充值所述计数器。
52.根据权利要求49、50或51所述的方法,包括阻止对于同一个标识符生成多个解锁文件。
全文摘要
包括处理器的装置,该处理器经安排以一旦启动或重启便自动执行引导代码。引导代码包括代码认证过程,以验证附加代码是否经认证用于在处理器上执行。单独的安全单元包括私有解锁密钥和密码逻辑,该密码逻辑经配置以使用私有解锁密钥来签名部分数据,从而生成经签名的解锁文件用于供应至存储位置。处理器经安排以从存储位置访问解锁文件,使其可用而无需连接至安全单元。引导代码进一步包括解锁认证过程,其经配置以检查存储位置中的解锁文件,并且如果可用则基于其签名来验证解锁文件是否经认证用于在该处理器上使用,以便在验证解锁文件的条件下对引导认证过程去除限制。
文档编号G06F21/57GK102971742SQ201180019022
公开日2013年3月13日 申请日期2011年2月14日 优先权日2010年2月12日
发明者皮特·卡明, 亚历克斯·伯德瑞, 让·马克·吉拉德特 申请人:辉达技术英国有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1