用于远程器件注册的系统和方法

文档序号:7898797阅读:182来源:国知局
专利名称:用于远程器件注册的系统和方法
技术领域
本发明一般地涉及其中含有敏感数据的器件的制造,具体地涉及远程控制和监 视这种敏感数据到这种器件中的注入。
背景技术
参与密码安全通信系统的器件,一般会具有在器件制造时被注入到器件中的某 种类型的唯一且不变的信息。该信息可以是密码密钥、共享秘密或者可能被密码绑定到 器件的固有唯一属性的某些其它数据。这种信息可能一般被称作“密钥”,信息的注入 一般可以称作对器件“加密钥”或者“密钥注入”。注入密钥的目的是确保在器件已经被分发之后,在未来的某点该器件被接受为 安全通信系统的可信的参与者。但是,器件的生产者常常会希望确保器件被合法制造, 因而希望保护被注入到器件中的密钥。生产者一般企图保护密钥以保护未来的收入,因 为密钥的认证可被用于提供对于安全系统及其内容等的有条件的访问。另外,被注入的 密钥是很重要的,因为它使器件的顾客或使用者能够避免注册器件所需的冗长过程。基于密码认证密钥是被信任的,可授予器件对系统的这种有条件的访问。这种 信任基于如下事实在制造过程之外再现被信任的数据是异常困难的。提供有条件访问 的系统包括,例如,卫星电视和无线电,这些系统持续地传播信息,但是希望控制对它 们的内容的访问从而控制用于提供这种内容的收入。这些系统依赖制造过程和原始设备 制造者(OEM),具体地是密钥注入,以提供对设备以及最终对整个安全通信系统的信任 的根源。被注入到器件中的密钥有时是标准格式并且从主管部门购买,例如,高清晰度 内容保护(HDCP)密钥,当数据经由线缆被从你的计算机发送到你的显示器等时,该密 钥被用于保护数据。主管部门因而也对确保被分发给器件生产者的密钥被保护而未丢失 感兴趣。这对产生了生产者责任,因而增加了保护被注入密钥的重要性。在一些情况 下,生产者可能因为丢失或复制密钥而被罚,并且如果他们获得了在处理密钥时疏忽的 名声,那么主管部门可能限制或约束密钥的分发。维持这种关系对于生产者常常是重要 的,尤其是当密钥是器件与其他器件和/或基础设施兼容所需的标准格式时。在这种情 况下,如果不能使用特定的密钥,器件将不能如所预期地工作。在包括不断增加的器件复杂度和精细度的现代商业环境中,常见的是各个部件 由一个制造者制造和加密钥,然后由另一个制造者组装。在这种情况下,当器件的生产 者或通信系统的所有者不是器件的制造者时,就存在某些安全隐患。因而,对于器件生 产者来说,确保对生产者的器件的真实性负责的制造系统的真实性是至关重要的。
当考虑制造过程的真实性时,特别关心的是与被用于制造器件的秘密信息的机 密性相关的问题,以及确保制造者将所制造的单元的身份和数量准确告知生产者的问 题。理想地,器件的生产者应该尽量得到制造者没有创建和分发“灰市”或“黑市”部 件或器件的保证。例如,将一定数量的加密钥产品送回给生产者、但是仍具有剩余密钥 的制造者,然后可使用那些多余的密钥来制造和销售器件。生产者因而会损失收入,因 为制造者是从销售中获利的人。如克隆或偷窃密钥的其它行为也可能出现,这在加密钥 过程被外包时是难以检测和控制的。在一些情况下,密钥可能被公布在互联网上使得用 户能够获得对有条件访问系统的访问而无需为这种服务付费。传统地,关心在制造场所对信息注入阶段进行保密的生产者几乎没有其它选 择,只能绝对信任制造者正在以适当考虑了生产者器件和系统安全性的方式操作。保护 机制一般是幼稚的,因为加密钥信息一般被成批加密钥并被发送给制造者,在制造者那 里,信息一旦到达,所有的加密钥信息就被立刻解密,制造者被信任不会危害成批的信 肩、O限制对加密钥信息访问的一个方法是使用在线客户机服务器机制。有这种机制 就位,在制造者设备处的客户机将被连接到网络,并且将在生产者的控制下向远程密钥 提供服务器请求基于每个器件的加密钥信息。实现这种依赖场外、远程联网的服务器且实时地提供加密钥信息的制造系统存 在很多问题。最首要的问题是,场外服务器如果使用公共的共享分组交换网络,就不能 保证对制造线的最低服务水平或响应时间。为了防止制造线线上的问题,就延时和吞吐 量而言的某一服务水平是最优的。给定了现代生产现状,即制造线存在于相对于生产者 的远程管辖区域,这种被保证的网络可用性可能是非常昂贵的。在包括数据材料的所有必要的材料没有都准备好之前,制造设备一般不会开始 生产运行。否则,生产线延迟的危险将会很高。制造者使用的任何加密钥系统都应该能 够基本上保证服务可用性并且提供适当的响应。这要求在生产运行之前所有数据源和加 密钥信息都本地可用。假定所有数据源必须对可能存在于计算机系统上的生产线以及不在生产者直接 控制下的介质本地可用,生产者必须考虑如何确保任何秘密加密钥信息的机密性。为了开始和完成生产运行,足够的数据应该对制造者本地可用。在生产者发现 制造者的未授权和违反合约的行为的情况下,生产者还应该考虑如何防止这样的无赖制 造者在合约终止后生产灰市或黑市产品。与克隆相关的另一个问题源于过量生产,这是一种特定类型的克隆操作,该操 作是硅芯片的生产者特别关心的。当集成电路(IC)的生产者将他们的IC设计外包给一 家或多家第三方制造公司制造时,可能发生过量生产。外包某些或所有制造步骤的目的 是通过选择可以对制造过程中具体阶段提供最优价格的第三方来降低生产成本。例如, 无工厂设计室(例如生产者)可能希望与海外制造厂家签约来生产他们已经设计的芯片。 这样的海外制造厂家经常被选择,因为他们能够相对便宜地生产电子元件。但是,外包一般会增加特定的合约方可能会过量生产他们已经签约要生产的产 品以供应灰市的风险。例如,如果签约的制造者不守信用并且根据生产者提供的设计过 量生产IC,而没有通知生产者发生了这种过量生产,那么额外的产品就会在灰市渠道中作为“伪造”或“克隆” IC被销售。这就允许第三方制造者实现了额外的获利和收入, 而这是以他们的客户即生产者/设计者的收入和未来的产品需求为代价的。上述情况可能发生是因为在这些情况下,常常生产者除了在生产阶段开始时接 收工程样品之外就不再处理产品。因此,在设计之后的制造过程的各个阶段,都有机会 盗取部件和产品。在一些情况下,有着良好信用的合约制造者的雇员可能是盗贼。当雇 员直接从制造线上盗取产品时,“产量缩水(yield shrinkage)”可能出现。这不仅由于 收入对生产者和合约制造者有害,而且对进行未来生意的生产者和制造者之间关系也有 害。因此,本发明的目的是消除或减少上述缺点。

发明内容
本发明提供了使得希望对制造过程的至少一部分使用分离的实体的生产者能够 从远程位置监视和保护器件生产的系统和方法。本发明还提供了用于使敏感数据到产品的添加在分离的实体之间分离以禁止由 于过量生产和产量缩水弓I起的灰市产品的装置。在一个方面,本发明提供了一种用于在器件生产过程中远程控制敏感数据到器 件中的注入的方法。该方法包括如下步骤控制器准备并且密码保护在数据传输中的敏 感数据;控制器将数据传输发送给服务器,服务器具有用于执行密码操作的安全模块; 安全模块从数据传输中提取敏感数据;以及服务器将敏感数据提供给设备用于注入到器 件中;其中,控制器相对于服务器被远程地放置。在另一个方面,本发明提供了一种用于在器件生产过程中远程控制敏感数据到 器件中的注入的系统。该系统包括具有用于执行密码操作的第一安全模块的控制器; 服务器相对于服务器被远程地放置并且通过前向通道和后向通道被连接到控制器,前向 通道由控制器使用用于将数据传输提供给服务器的第二安全模块,数据传输对敏感数据 进行密码保护,第二安全模块从传输中提取数据;以及代理,与设备一起操作,用于在 从传输中提取数据后注入数据,代理从第二安全模块中获得数据。在另一个方面,提供了一种用于在多个阶段控制敏感数据到器件中的插入的模 块。该模块包括密码变换,密码变换截获并变换器件中的数据流和存储在存储器中的密 码密钥,敏感数据的一部分在各个阶段被添加到密码密钥中,密码密钥被变换用于其操 作,其中,在敏感数据成功插入后,密码变换正确改变数据流。在另一个方面,提供了一种用于控制敏感数据到器件中的注入的方法。该方法 包括以下步骤将模块包括在器件中,该模块具有用于在器件中截获和变换数据流的密 码变换;以及在器件生产中的多个阶段中的每一个将敏感数据的一部分添加到存储在模 块中的存储器中;其中,在敏感数据成功插入后,密码变换正确改变数据流。


下面将参照附图仅以实例的方式描述本发明的实施例。图1是远程器件注册系统的示意框图;图2是图1中图示的图形用户界面(GUI)的示意表示;
图3是分发图像的示意表示;图4是图示密钥注入和报告过程的流程图;图5是图示预备过程的流程图;图6是描绘信用指示过程的流程图;图7图示了支持多个产品的另一个实施例的映射方案;图8图示了过滤过的日志报告的实例;以及图9是图示远程器件注册系统的另一个实施例的框图。图10是在制造过程中使用多个阶段的密钥注入的实施例的示意框图。图11是合并使用图10的实施例分离密钥注入阶段的注册模型的掩模的示意表示。图12是图10所示实施例的阶段的示意表示。图13是在使用图10的实施例生产器件时所采取步骤的流程图。图14是根据图11所示的掩模生产的实例产品的示意框图。
具体实施例方式参照图1,远程器件注册或被信任的密钥注入系统一般由标记10指示。器件22 的生产者12利用分离的实体的服务,来将唯一且不变的信息注入到器件22中,在这种情 况下所述实体是外部制造者14。信息可以是密码密钥、共享秘密或者可以被密码绑定到 器件22的固有唯一属性的某些其它数据,这种信息在下文中将被称作“密钥”。将密钥 注入到器件22中的步骤在下文中将被称作“加密钥”或者“密钥注入”。生产者12利用控制器16,对制造者设备来说,控制器16是远程的计算机系统。 控制器16包括硬件安全模块(HSM) 11。HSM 11是由控制器16用于执行如加密、解密 和标记的密码安全操作的受保护的器件。HSM 11可以是防篡改(例如在物理上难以访 问)或者可以是对篡改起反应的(tamper reactive)(例如如果被篡改就擦除数据)。控制 器16负责将密钥和其它信息打包并传递给制造者14,还负责监视制造者14对密钥的分发 和使用。生产者12—般地从如主管部门的外部源例如HDCP密钥的生产者处得到批量密 钥(未示出)。密钥被存储在数据存储器件15中,直到它们被分发给具体的制造者14。 控制器12及其操作可以被使用图形用户界面(GUI) 13的操作者监视、修改从而被控制。 GUI 13 一般是使用个人计算机(未示出)显示并与其交互的软件应用程序。控制器16通过管道23被连接到位于制造者14的服务器18。管道23包括两个 前向通信通道,即控制通道26和分发通道25,以及后向通道24。控制通道26被控制器 16用于通过发送信用指示,量测制造者14可以使用的密钥的数量。分发通道25被控制 器16用于将被保护的密钥块分发给制造器14。为了汇报和审核目的,后向通道24被系 统10用于使控制器16知晓密钥的使用。通道24、25和26可以是任意通信通道,而不 需要是可靠或安全的。使用技术机制与处理/过程的结合,提供通道24、25和26上的 可靠性和安全性。例如,如果在前向通道26上被发送给模块18的消息因为其被破坏而 未解密,用户可以打电话给系统控制器模块16的操作者,然后让它们再次发送消息。制造者14利用一个或多个服务器18,对制造者的设施来说,服务器18是本地的 计算机系统,并且通过由控制器16发送的消息,服务器的活动被监视和量测。服务器18还通过后向通道24汇报返回给控制器16。服务器18包括与由控制器16利用的HSM 11 类似的HSM28。HSM 28存储指示制造者14可以使用多少密钥的被保护的信用池30。 密钥的使用由控制器16通过监视被服务器18汇报的数据、以及相应地从信用池30加或 减而被量测。信用池30是表示在服务器18必须从控制器16请求并获得更多密钥之前 可以被HSM 28解密的密钥数量的抽象概念。控制器16在分发通道25上向服务器18分 发密钥,并且如下面更充分地所解释的,服务器18会将密钥存储在本地数据存储器件17 中。制造者14利用一个或多个设备20,设备20被用于向器件22中注入加密密钥。 一般地,加密钥在制造过程的测试阶段发生,因而设备20常常是组装线上的测试机。设 备20包括密钥代理21,密钥代理21 —般是被装载到用于在应用侧管理密钥注入的设备 20的软件程序或工具包。密钥代理21与服务器18通信以在密钥被需要时请求并获得密 钥。一般地,服务器18将向密钥代理21提供足够的密钥从而不会破坏生产过程的时序。 但是,服务器18将不提供不必要数量的密钥以限制密钥的使用,直到根据信用池30的量 测由控制器16提供加密钥授权。—般地,密钥代理21具有指示何时特定设备20需要新的一批密钥的阈值水平, 以不破坏生产。因为控制器16 —般不与服务器18持续通信,所以如下下面更详细解释 的,在控制器16可以从服务器18得到密钥使用报告之前,控制器16可调整其参数以确 保通过服务器18足够的加密钥材料对于设备20是可用的,同时确保没有过多的密钥数据 被服务器18释放。密钥代理21优选地包括应用程序接口(API),其在设备20上运行以使得设备自 身的操作者能够手动地或者以自动方式请求密钥。密钥代理21被用于为在服务器18与 设备之间数据传递提供一定水平的保护,并且可以被认为是服务器18与设备20之间的简 化安全套接层(SSL)。应当理解如果资源允许,密钥代理21还可以使用其自身与服务器 18之间的SSL连接而被实现。密钥代理21还负责在密钥被使用时生成报告记录,报告 记录被发送回服务器18用于汇报的目的。控制器16是用于监视和量测通过制造者14的密钥注入的命令中心。为了从远程 位置控制加密钥,GUI 13被操作者用来监视和配置各个在控制器16控制下的制造者14、 服务器18以及设备20。在图2中示出实例GUI 13。GUI 13被分成服务器窗口 200、 控制器窗口 204和设备窗口 202。服务器窗口 200包括被控制器16控制的制造者列表14 以及服务器18。在控制器窗口 204中指示特定的控制器16。操作者可以选择特定的制 造者(例如,图2中所示的制造者A),并且与制造者相关联的设备20被显示在设备窗口 202 中。在图2所示的实例中,在制造者A处的服务器包括提供关于服务器1、服务器2 和服务器3的信息的窗口。各个服务器具有与其相关联的某些数据。例如,如图2所 示,各个服务器包括示出它们的可用存储空间、可用信用以及对于密钥类型1和密钥类 型2的每个类型可用的密钥的数量的进程栏。每个测试器窗口还显示日志信息,例如先 前报告被处理的日期、先前报告的信用、先前补充量(refill amount)以及关于缺少的日志 记录的数据。服务器窗口还向操作者提供选项214和216以从控制器16远程配置和禁用 服务器18。
控制器16具有远程配置服务器18的能力。这允许控制器16改变密钥类型,增 加或删除密钥类型以及控制其它配置选项。这优选地通过沿着控制通道26向服务器HSM 28发送配置消息来实现。HSM 28可评估配置消息,由此一些配置消息改变HSM 28的 行为,并且其它配置消息被发送到服务器18。使用这种方法经由HSM 28被发送到服务 器18的配置消息可以帮助确保服务器18获得被信任的并且已知是来自控制器16的配置 指令。控制器16可能通过密钥代理21在服务器层面或设备层面远程配置系统10。控制 器16还可以强迫服务器18的轮询,并且可以调整常规轮询的间隔。一般地,服务器18 以固定间隔被轮询,并且控制器16可以在需要时使用被迫轮询以在间隔之间获得信息。 例如,就一天的间隔而言,控制器16可能需要数据以汇报给当天的管理者,因而可以强 迫所有服务器的轮询以获得这种数据。GUI 13还可以包括控制器电子邮件选项,该选项 允许控制器16在如在关键生产运行中解密或分发失败的极端环境下自动联系管理者。被设备20分发给服务器18并且注入到器件22中的各个密钥在某些事件下触发 某些日志记录。GUI 13可以被用于搜索、分类、编辑和分析日志记录,以及浏览如图8 所示的定制或标准报告400。在该实例中,存在被生成的三个主要日志记录。当密钥被 生产者16分发给服务器18时,密钥到服务器日志402被生成,在HSM 28将密钥释放给 密钥代理21那一点上密钥到代理日志404被HSM 28生成,并且在密钥被注入后,密钥 注入日志406被密钥代理21生成。各个日志记录可包括任何数目的识别信息,这些识别 信息包括ID类型、时间戳、制造者、设备等。在图8所示的实例报告中,报告400图示 了对于具有序列ID = 001的密钥的密钥到服务器日志402、密钥到代理日志404以及密钥 注入日志406。这些记录然后可以被用于跟踪具有这种序列ID号的密钥的生命周期。应 当理解,报告400可以包括任何数目的记录,并且可基于任何适当的字段而被滤选。例 如,在制造者A处被测试机2于5月3日注入的所有密钥的报告400可相应地通过过滤日 期字段和位置字段而被编辑。现在参照图3,生产者使用将被发送给服务器18的分发图像40,生产者16可以 将安全数据传输中的一批组密钥优选地使用加密来打包。分发图像40使生产者能够在一 次传输中包括指定给多个服务器18的用于多个产品的密钥。但是仅仅在HSM 28已经经 由控制通道26从控制器16接收到认证之后,各个服务器18才能够解密并获得某一数量 的密钥。图像40是数据记录的集合,各个记录包含类型58、ID 60、大小54和数据56 字段,在数据字段56,数据56将一般包含由大小54识别的任一大小的密钥数据。类型 58和ID 60字段被HSM 28用来识别密钥数据,取决于HSM 28的配置,如先前经由控制 通道26所指示的,可能被用于过滤某些密钥。密钥可能被封装,使得实现不关心对于目 标密钥实际上象什么。这使得其灵活且可延展,而无需对于各个新的密钥类型做重新设 计。包装(wrapper)应该包含类型、大小和唯一的ID,体是抽象的。包装还可包含支持 更多高级特征的元素,例如分配到抽象图像中的日志或变量。图像40用图像密钥42来加密。图像密钥42被服务器18用于解密图像40并获 得密钥。图像密钥42对于各个服务器18被自身加密,并且被存储为服务器头部48。服 务器头部48的集合被存储在主头部46中。为了解密图像40并获得密钥,头部48被服 务器18选择并且被HSM 28解密以获得图像密钥42。图像密钥42然后被用于解密图像40。如前面提到的,分发图像40可能被用于支持多个产品。另外参照图7,示出了 产品类型和数据块的映射。例如,生产者16有三个产品,即Y (gamma)利用密钥1(具 有过滤标签1),β (beta)利用密钥2 (具有过滤标签2)和伴随的配置块(也具有过滤标签 2),以及α (alpha)利用密钥1、密钥2和配置块。图像40可以包括批量的密钥类型1和 密钥类型2,并且γ (gamma)和β (beta)产品可以没有α (alpha)产品那么复杂。生产 者16可以用数据打包单个图像40,例如,每块50个,由此某个测试机(例如测试机1) 具有制造者制造的许可,从而可能获得用于生产五十个α (alpha)产品的五十个(50)过滤 标签1和2。另一个测试机(例如测试机2)可同时具有制造者制造的许可,因而从图像 40获得五十个(50)过滤标签1以生产五十个β (beta)产品,以及五十个(50)过滤标签 2以生产、(gamma)产品。图像40可包含所有密钥数据,可能包括多种类型的密钥, 以生产任何产品类型的单个产品。测试机向服务器18标识正被编程的产品类型或产品型 号。该型号信息与被加密的图像40—起被发送到HSM 28,使得当HSM 28解密图像40 时,密钥数据50可以被过滤,并且只有编程所标识的产品型号所需的密钥数据才被HSM 28释放给测试机。因此,生产者12可以用单个图像40来支持多个产品,同时采取措施 以确保制造者14只能制造他们应该制造的产品。因为图像40可以支持多个产品,所以日志记录被用于跟踪在测试机处执行的实 际的密钥注入,这将在下面更充分地解释。通过跟踪日志记录,生产者16就可以试图 检测例如制造者14是否返回50个γ产品而不是50个α产品(他们已经被付费要生产 的),由此他们可能已经在灰市或黑市上销售了 50个β产品。这种差异可能是恶意的也 可能不是,但是在任何情况下都可以被合理地识别。在图4中示出了密钥从其在分发通道25上的分发到HSM 28在后向通道24上汇 报给控制器16的典型生命周期。图4中突出显示的块表示由安全模块即HSM 11和HSM 28执行的那些步骤。控制器16首先从外部提供者处获得批量标准密钥。控制器16然后 将密钥传递给HSM 11,并且HSM 11对密钥块加密,各个块含有测定数量的某一密钥类 型。应当理解,密钥还可能被批量加密成具有多于一个密钥类型的块。控制器16然后 将被批量加密的密钥存储在存储器件15中,直到它接收到指示密钥块将被分发的指示或 其他命令。当生产者16分发密钥块时,它首先获得被批量加密的块并将该块传递给HSM 11。HSM 11对该块进行解密并且对密钥块重新加密以与图像密钥42—起传输。然后, 对于各个服务器18,图像密钥42自身被加密以产生各个头部48。这些头部48被存储在 主头部46的组44中。这里,对用于分发的已经被重新加密的密钥,HSM 11生成密钥 到服务器日志402。日志402在生产者12处被本地存储用于以后的分析。然后在分发通 道25上将重新加密的密钥块分发给服务器18。服务器18将包括在图像40中的被加密的密钥块传递给HSM 28,HSM 28然后解 密图像40。HSM 28首先从组44中选择其特定的头部48,并对图像密钥42进行解密。 图像密钥42然后被解密以从图像40中获得密钥。然后优选地,例如使用安全哈希算法、 MAC或数字签名,来验证并且过滤图像40。HSM 28然后还对从图像40中获得的各个密 钥重新加密用于存储。服务器18然后本地存储被重新加密的密钥用于以后被设备20使用。应当理解,图像40的真实性基于在控制器16与服务器18之间共享的唯一对称分布 密钥Ksl和Ks2而被认定。一旦执行了成功的真实性检查,例如在sha-2摘要(digest)比 较之后,其间被共享的消息就可以被认为是可信的。当控制器16从设备20接收到对某一数量密钥(例如N个密钥)的请求时,HSM28被给予N个密钥来解密。对于被HSM 28解密的N个密钥中的每一个,密钥到代理日 志记录404被产生,并且这些密钥被传递给设备20用于注入。这里,密钥“不受阻碍 (in the clear),,因而准备好用于注入。设备20注入N个密钥中的各个,并且密钥代理21对于被注入的各个密钥生成密 钥注入日志记录406。HSM 28将连续地获得密钥到代理日志记录404和密钥注入日志记 录406,并且优选地将这些记录连接成在后向通道24上被发送回控制器16的主日志报告 R。各个日志优选地被连接成二进制文件,其标识了文件被产生的日期。报告R优 选地由HSM 28用加密密钥Ic1加密,并且被返回给在服务器18上运行的应用程序以在后 向通道24上被发送。控制器16然后可以解密报告R,并且验证各个日志(例如402、 404、406)。可以用单调同步数对各个日志加标签。如果放在一起的所有的记录ID值不 是连续不断的集合,那么控制器16的操作者将知道到哪里跟踪序列中缺少的日志。如上面解释的,当N个密钥被分发时,控制器16已经对它们预先存储了许多密 钥到服务器日志记录402。因此,控制器16在未来的某个时间期望接收对于各个密钥完 成生命周期的报告R,以表明最初被分发的密钥已经由正确的服务器18解密并且被注入 到正确的器件中。因此,在日志报告被提供时,控制器16能够评估它们。控制器16然 后可以判断是否应该采取任何行动,例如干预制造操作(例如停止分发)或者提供更多的 密钥。控制器16还可在分发另外的密钥块之前获得另外的信息。在这种方式下,控制 器16可以量测分发,并且只有在制造者以良好信用操作并且始终如一地提供精确的日志 报告时才提供更多的密钥。日志报告(例如图8中所示的那些)使生产者能够辨认ID号序列中的不连续。 例如,如果大量密钥已经被分发但是还没有报告密钥到代理或者密钥注入日志,那么制 造者可能已经丢失了该密钥。这可能表明灰市或黑市活动。在另一个情况下,报告R可 包括密钥到代理日志404,但是不包括对于特定密钥的密钥注入日志406。这可能表明问 题源于请求密钥的特定设备处而非制造者14本身。因此,制造者14也可以将日志报告 R用于审核目的以及识别内部恶意活动以维护其与生产者12的关系。各个密钥的生命周 期需要在密钥被操作的各个关键阶段的报告记录。因此,生产者12有必要的信息来识别 问题出现在哪儿以及将努力校正或消除这种问题。优选地,日志报告不仅包括关于密钥 序列数的信息,而且包括关于密钥类型的信息。在这种方式下,生产者12还可以判断α 产品是否被委托制造,而Y和β产品是否可能已经被生产。日志报告提供信息以阻止制造者14的恶意或不道德行为,同时也提供了评估现 有制造者14的诚实性的手段以及提供任何非期望活动的证据的工具。在检测非期望的活 动中,实物证据的使用允许生产者12不仅仅是以怀疑的态度面对制造者14,这在违法活 动在测试机层面发生(例如由雇员而非公司本身造成的)的情况下可以挽救生产者12与 制造者14之间的重要关系。
除 了分发之外,控制器16还使用控制通道26来控制信用池30从而量测密钥注 入阶段。在图6中示出信用指示过程。HSM 28在对分布图像40进行解密并获得密钥时 必须消耗来自信用池30的信用。随着时间的流逝,信用池30将减小,需要用由控制器 16发送的信用指示文件来补充。在控制通道26上,控制器16 —次只向服务器18发送一个控制消息C。包含在 该消息中的优选需要的文件中的一个是信用指示文件。该文件可以是用于特定服务器18 的被加密的数据集合,其被HSM 28解密成信用指示。信用指示包含例如HSM 28和/或 服务器18的序列号、服务器的令牌(token)ID、序列数、新的信用量以及配置数据,其已 经全部被控制器16标记。在接收到控制消息C后,HSM 28从控制消息C中解密信用指示数据,并验证签 名。如果可应用,HSM 28还验证作为其自身的序列号和令牌ID。序列数的验证然后被 执行。序列数应该大于内部存储在HSM 28中的序列。一旦被验证,HSM 28将更新其 内部序列数并将信用池30的值设置为信用指示中的信用值。如前面结合GUI 13所解释的,HSM 28然后将处理控制消息C中的任何配置消 息以更新其内部配置,以使得控制器16能够将配置数据推进给服务器18,例如用于过滤 规则、加密钥信息、信用规则等的更新。配置数据可以期望用于HSM 28、在服务器18 上运行的应用程序或者甚至是密钥代理21。HSM 28寻找定义的类型的配置消息来处理 它们。配置消息被标记为私有的或公共的,然后对它们的访问将由HSM 28控制。信用报告C;是服务器对处理控制消息C中的信用指示的响应。信用报告C;可 包含HSM 28的序列号和令牌ID、当前的序列值、信用池30的当前值、到目前为止的补 充数量以及错误代码,如果在信用指示处理过程中没有错误发生,那么错误代码被设定 为零。优选地由HSM 28使用其标记密钥k2来标记信用报告Cr。对于控制器16的报 告C;然后被使用控制器的公共加密密钥1^3来加密。报告C;然后被发送给控制器16,并 且与日志报告R —起存储用于上述的审核目的。在分发密钥之前,生产者12和制造者14可经过预备过程以初始化HSM和服务 器18。在图5中示出该预备过程。HSM 28产生并向控制器16发送预备请求消息P。 消息P优选地包含正被服务器18使用的HSM 28的序列号。HSM 28生成两个密码密钥 对k” k2 (例如RSA密钥对或优选地使用椭圆曲线密码算法(ECC)),一个(Ic1)用于接收 被加密的消息,另一个(k2)用于标记输出的消息。优选地,在密钥对1^和]^2的交换期 间,制造者14在物理可控环境中被密码地引导(cryptographically bootstrapped)。当控制器16从服务器18接收预备请求时,它将请求传递给HSM11,HSM 11检 查消息的真实性然后给制造者14分配“令牌ID”。两个密钥,优选地,对称密钥ksl和 ks2 (例如高级加密标准(AES)密钥)被生成。如前面提到的,这些密钥将被控制器16和 服务器18用于保护在分发通道25上的分发图像40以及在后向通道24上的日志报告R。HSM 11然后生成预备响应消息P’,该预备响应消息P’例如包含被分配的令 牌ID,HSM加密的公共密钥以及各自的标记密钥对k3*k4,分发和后向通道对称密钥 ksl和ks2,一些初始配置数据,以及用于真实性的哈希摘要(hash digest)。与预备请求消 息P相似,假设预备响应消息P’在物理可控环境内被处理(例如使用HSM保护)。
然后,预备响应消息P’可被发送给服务器18,并且服务器18可在接收到其第一个预备请求后执行初始化操作。预备响应的结构可包含解密成包含用于在控制器16与 服务器18之间前向和后向通道通信的对称密钥的单独结构的部分。应当注意,这些密钥 对于各个HSM 28 (从而而对于各个服务器18)都是不同的,并且在一组HSM之中是不共 享的。当预备过程完成时,分发图像40与控制消息C之间的正常交换可以开始。在另一个实施例中,如图9所示,系统10可被改型成已经由制造者14实现用 于保护密钥注入阶段的现有解决方案。在图9所示的实施例中,用相似的标记加后缀
“a”来表示相似的单元。例如,制造者14可具有设备20a,设备20a已经包括用于将 串“BCA”转变成“ABC”的加扰器74,其中器件22被连线以接受ABC作为被注入 的密钥。在这种方式下,如果密钥“BCA”被盗取或者错放,那么其对器件22a将不工 作,因为加扰还没有发生。这些在保护密钥方面的尝试,虽然容易实现,但是一般都很 幼稚,并且不能提供适当的保护水平。通过兼容这种保护,系统10然后可能被改型成设 备20a,而不取消已经被实现的现有解决方案。因此,制造者14用于实现系统10的额外 费用可以被避免。这种改型可以被实现直到完整的重新设计被保证,这时图1所示的布 置可以被使用。为了兼容现有解决方案,系统10在服务器18处存储一组被标记的对象72,它 们是与特定设备20a相关联、并且在HSM 28a释放密钥之后且在密钥注入之前执行现有 解决方案的可执行文件的集合。在这种方式下,密钥被改变以兼容现有解决方案,而设 备20a并不知道。如图9所示,控制器16a将首先需要访问由设备20a使用的可执行文 件(exe) 70以提供现有的解决方案。控制器16a然后将可执行文件70传递给HSM 11a。 HSM Ila然后标记可执行文件70,并将被标记的可执行文件70传递给HSM 28a,HSM 28a然后将被标记的可执行文件70存储为被标记的对象72。在操作中,当设备20a请求 新的一批密钥时,服务器18a将依靠存储在HSM 28a中的可执行文件的签名来验证可执 行文件。一旦服务器18a已经验证可执行文件72,那么它将发送可执行文件密钥以被加 扰。例如,设备20a请求密钥BCA以馈送给器件22a中的加扰器76,使得密钥ABC 被注入到产品α (alpha)中。HSM 28a确定产品α具有被标记的对象可执行文件Α,用 于修改密钥ABC。被标记的对象可执行文件A被验证,并且被应用于密钥ABC,导致加 扰后的密钥BCA。加扰后的密钥BCA然后被发送给设备20a,并且加扰起76修改密钥 BCA使得它注入密钥ABC。设备20a并没有意识到(它所接收的)密钥BCA由服务器 18a以被保护的形式存储为ABC。应当理解,被服务器18a存储的密钥还可以以如CAB 的形式,然后被修改为读BCA用于加扰以被转变成ABC用于注入。这种情况可能在如 下情况时发生密钥CAB是标准形式并且必须被修改以适应其中CAB不能被接受为密钥 的现有解决方案。因此,被标记的对象72将包含兼容被设备20a实现的现有解决方案所 需的任何程序,并且上面提供的实例仅仅用于说明的目的。被标记的对象72还禁止恶意代码被装载到服务器18a中以在注入之前修改密 钥,这是因为在被标记的可执行文件被用于密钥之前,一般针对将被释放给机器的密钥 对其进行验证。系统10因而可以提供增加的安全等级同时兼容了现有的解决方案。因此,通过利用与服务器18分离的远程系统控制器16,生产者12能够通过HSM 28监视制造者14的活动,并量测信用。生产者16因而能够管理在器件22上加密 钥信息的注入,以确保制造者14正确地汇报对生产者12制造的单元的身份和数量。这 使得生产者12能保证制造者14没有生产并分发灰市或黑市产品或器件22。在上述过程和系统10就位的情况下,生产者12可以监视在制造者14处的生 产。生产者12使用控制消息C中的信用指示,通过增加或移走由制造者14使用的可用 信用,可以量测器件22的生产。应当理解,系统10不限于如图1所示的一个制造者14,而且各个制造者14也不 限于一组设备20。系统10也不限于单个控制器16的使用。HSM 28最优选地是被信任 的硬件,以保护密钥值和信用池30的真实性。此外,包含在分发图像40中的加密钥信 息不一定必须是加密钥信息,而也可以是需要保密性和真实性的任何数据元素。对于加 密钥数据的要求,对于希望加强器件激活粒度的系统10是典型的。在可替代的布置中,在图10到14中所示例的并且在后面更详细地所描述的,过 量生产可能通过在硅片或器件制造过程中引入责任分离而被禁止。一般地,生产者12会 将制造的不同阶段合约外包给多个承包者。一般而言,责任分离涉及有目的地分离硅芯 片或其他器件的制造阶段,使得最终产品必须已经被各个转包者“接触“,以使得最终 产品是完全起作用的。因为灰市一般由单个故障点或者制造链上的单个不守信用的承包 者提供,所以强迫一组承包者顺序操作,这就意味着为了向灰市提供非残缺的子部件或 器件,两个或多个转包者必须共谋抵抗生产者12。最终产品及其子部件,应该完成所有 制造阶段以完全起作用。一般而言,当多个转包者为了盗取而需要共谋时,攻击生产者 12的风险就被大大降低。在硅晶片的生产中,一般发生几个阶段,它们经常在几个第三方制造者之间被 划分。设计芯片的生产者12将在一个数据文件或多个数据文件中创建设计,经常称作
“网表(net list)”。网表包含计算机代码形式的描述语言,用于指示第三方如何生产掩 模以生产硅晶片,从该硅晶片中,IC被封装和分发。例如,在说明性的制造过程中,掩模可能被生产者12发送给根据掩模制造硅晶 片的硅制作者。晶片然后可被发送到晶片测试设备,在那里各个芯片在晶片上被直接 测试,并且被电子化地标记,使得在被切割时,只有通过的各个芯片将被转发给封装设 备。封装设备会将硅粘合并封装成芯片封装,并且再次测试最终封装的芯片。完成的芯 片然后一般被送到OEM,在那里芯片被安装到印刷电路板上,印刷电路板是完成的期间 产品的一部分,并且完成的器件产品被送到分发通道,最终到达顾客。上述说明性的制造过程一般包括在设计与硅芯片到器件的集成之间发生的多个 阶段,即制造、测试、封装和安装。应当理解,所有这些阶段可可替代地发生在单个设 施处,并且还可以有更多个阶段,最多到任意N个阶段。在这些阶段的每一个,都有可 能发生过量生产或产量缩水。现在参照图10,生 产者12设计掩模90。掩模90被用于生产注册器件22,在这 个实例中,是IC。器件22包括将被包括在其设计中的某种形式的敏感或不变信息,并且 优选地不能在没有这种敏感信息的条件下操作。在这个实例中,生产者12与在器件22 的整个制造中执行特定阶段的两个或多个第三方制造实体建立合约。图10示出了第一制 造阶段100、第二制造阶段102、直到任意的第N个制造阶段104。
生产者制造者12在产品分发通道80上分发掩模90。掩模90被发送到第一制造 阶段100,在该阶段发生制造的一部分,如硅晶片的生产。当第一阶段100完成时,得到 的部分完成的产品被送到第二制造阶段102,以完成第二部分制造,如晶片的测试。对于 各个阶段,这都被重复直到任意第N个阶段,该阶段最终将完全起作用的注册器件22运 送给分发实体106。在制造实体100到104 中的一个,为了防止未完成的产品或子部件被转到灰市 110, “责任分离”被应用。责任分离是各个制造阶段的制造和数据编程责任的分离, 使得所有责任必须由预想的承包者以预想的顺序执行,这对完成非残缺的器件的生产是 必要的。在这个实例中,如密码数据注入的敏感任务在多个阶段被注入,多个阶段中的 每一个在不同的制造阶段期间由不同的制造实体实现。为了分离(多个)敏感任务,生 产者12将注册模块92合并到掩模90中所定义的设计中。模块92被使用使得当掩模90 被编辑以产生器件22,数学变换截获硅芯片内的关键信号和数据流,例如启动信号,并 且如果数学变换不能操作,器件22是残缺的。由于性能的原因,数学变换优选地是广泛 使用异或(XOR)操作的密码变换,但是这不是要求。在制造过程的各个阶段,为了使数 学变换能操作,通过关键数据的增加或递增注入来注册,关键数据例如是密码加密钥数 据的一部分。以这种方式,如果在第一阶段100产生的晶片被过量生产并且被供应到灰 市阶段2至N,如图10所示的110,那么产品112是残缺的,一般是因为它还没有接收正 常操作所需的必需的所有密码数据。优选地,如在图10中通过实例所示出的,在各个制造步骤,在图1至9中上面 所描述的密钥注入系统10可被用于分发、量测和恳求密钥注入阶段的汇报。在这种情 况下,即使所有实体都共谋分发灰市产品,由于不完整的日志报告,生产者12也能够检 测到这种行为,并且如果有必要,禁止进一步的加密钥数据的分发。应当理解,可替代 地,系统10可在任何数目的阶段被使用,并且根本不需要在各个或任何阶段被使用。例 如,第二阶段102可利用系统10而不是任何其他阶段。但是,因为优选地各个制造阶段 将包括某种形式的测试过程,所以将系统10合并到这种测试中是有益的。生产者12在 这种情况下至少在第二阶段期间期望数据。应当理解,模块92可能被使用而不依赖系统 10,并且可依赖各个制造阶段以实现一部分加密钥过程。在这些情况的任何一种下,通 过分离责任,没有一个实体自身就具有成功地向灰市供应产品或子部件的必要信息。掩模90在图11中被更详细地示出。如上面所讨论的,注册模块92可被合并到 任意掩模设计中,并且掩模90然后被编程以实现一组指令或代码行等,掩膜90将部分地 把在模块92中定义的内容插入在一部分顾客代码120与另一部分顾客代码122之间的路 径(优选地是对器件操作关键的一个)内。沿着路径124进入模块92的数据被应用于密 码变换128,并且沿着路径126被输出到部分122。优选地,只有密码变换128在路径 124处被成功地应用于数据输入,出现在路径126处的输出才会是可用的。密码变换128 优选地与存储器130、处理器132和密码密钥134—起工作以执行其操作。优选地使用在 各个制造阶段存在的密钥注入系统10,存储器130、处理器132和密码密钥134被配置。 存储器130还包括另一个密码密钥131,密码密钥131 —般包括优选地通过使用图10所 示的密钥注入系统10的注入,在各个阶段累积的加密钥材料。优选地,密钥134在注入 时被使用以确保构成密钥131的、在存储器130中被累积的材料是可信的。密钥134可以是公共密钥,可以被需要也可以不被需要。例如,模块92可以在没有密钥134的条件 下,冒着可能与特定生产者12相关或不相关的某种攻击的潜在危险而工作。一般而言,模块92所用的敏感数据被分成部分,各个部分在制造过程的各个阶 段被添加给密钥131。例如,一种技术是在制造过程中的各个阶段注入具有消息恢复的数 字签名。密钥134可以被用于验证数字签名,在这样做时,被验证的数字签名产生可以 被用于密钥导出方案的消息,利用存储器130中存在的数据来导出密码密钥131。另一个 实例是利用密钥遮蔽(key shadowing)技术,其中,多条密码密钥131在各个制造阶段被 添加到存储器130。当最后的制造阶段已经完成时,存储器130包含足够的数据,使得密 钥遮蔽技术可以被用于重新构成密码密钥131。第一制造阶段100的实例在图12中示出。如前面提 到的,生产者12优选地利 用系统10来分发加密钥数据以及监视在加密钥发生时生成的报告。到硅芯片中的密钥注 入一般在晶片测试时或者在后封装测试时发生。在这个实例中,阶段100包括与测试设 备20 —起操作的服务器18和密钥代理21。阶段100还包括例如生产硅晶片的生产设备 139。生产设备139使用在通道80上分发的掩模90来生产被部分被制造的器件J40。这 个实例中的下标1被用来表示应用于器件22的敏感数据的第一部分,其中优选地,使用 设备20的密钥代理21,敏感数据的第一部分被注入。优选地在这里,器件工还不是完全 可操作的,因为变换128还不具有执行其操作的所有的必需的信息。器件工然后可用来 被分发到第二制造阶段102。图13提供了示出包括两个不同的制造阶段(即N = 2)的实例制造过程的流程 图。在步骤500,生产者12确定阶段的数量,因而确定将被注入的加密钥数据部分的数 量,在这个实例中,N =2。在步骤502,生产者12优选地建立在通道24、25和26上 将各个制造阶段链接到自身的密钥注入系统10。如前面参照图1所讨论的,生产者12可 使用单个控制器16来与多个服务器18通信。在这个实例中,生产者12将从两个服务器 18分发、监视和接收日志记录。在步骤504,生产者12将注册模块92合并到其设计中,该设计被定义在掩模90 中。在步骤506,掩模90然后被分发给第一制造者100以实现制造过程的阶段1,并且在 步骤508,阶段1被执行。例如,第一制造者将生产晶片、创建符合掩模90的芯片。在 晶片测试过程中,制造者然后会将某部分加密钥材料编程到存储器130中。在步骤510, 敏感数据的这部分被插入,并且在步骤512,服务器18将优选地使用前面概述的机制汇 报给生产者。可替代地,阶段1可以不处理任何敏感数据的注入,然后该操作可单独在 阶段2过程中被执行。当第一部分加密钥数据被编程到芯片或器件中时,产品只包含部分加密钥信 息,还不足以正确操作。通过器件工来表示图13,其中,下标1表示如上所述的第一部 分。在步骤514,被部分生产、部分编程的器件1然后被分发给阶段2,以在步骤516执 行。在步骤518,制造者102然后将注入第二部分密钥数据。例如,在步骤518,第二制 造者102可对额外的加密钥信息进行编程,或者可使用在步骤510期间存储在存储器130 中的部分密钥数据以及用在步骤518的来自系统10的新的密钥数据来导出密码加密钥信 息。该导出步骤可以基于哈希或者可能更复杂的密钥遮蔽技术。优选地,在步骤520, 第二制造者102汇报回生产者12,表明第二密钥部分被成功注入。生产者12现在可拥有表明密钥数据已经被成功插入的两个日志记录,并且可以使用该信息来监视其记录。—旦第二部分加密钥数据被插入,在这个实例中,器件22就被完全生产,并且 完全注册(例如被测试和封装的IC),并且在图13中由器件12来表示,其中,下标12表 示完 整的密钥数据集合,即数据部分1和数据部分2。在步骤522,器件12然后继续到分 发通道,其中在步骤524,器件12作为有效产品最终到达顾客。如在图13中图示的,例如,如果第一制造者100或其雇员试图在步骤526分发 灰市产品,那么通过在步骤528的可替代分发通道,在步骤530残缺产品将被提供给顾 客,因为器件工只包含第一部分密钥数据,因而变换128不能执行其操作。因此,虽然 测试、封装等可在灰市阶段2被进行,但是另外的加密钥数据不被提供,所以产品530被 完全制造,但是未被完全注册,致使其是残缺的。应当理解,模块92优选地被实现使得 防篡改手段被考虑并实现。现在参照图14,示出了合并模块92a的被完成的顾客产品22a的示意性例子,其 中,模块92a是图11中所示的模块92的物理布局的逻辑表现。在图14中,为了清楚起 见,可对相似的标记给出后缀“a”。使用模块92的实现(例如92a)的产品22a能够将 作为实施块150—部分的密码变换128a应用于代码120a与122a之间的产品的关键数据路 径。通过变换128a,该路径被解码,使得顾客逻辑122a可以正确地起作用。在这个实 例中,作为处理器132的实现的验证132a被执行。验证132a使用一次性可编程(OTP) 存储器130a和为图11的密钥134的实现的身份部分134a。使用例如在图13中所概括的 过程,密钥134a和存储器130a和敏感数据一起被注入。应当理解,产品22a只是合并 由模块92 (例如模块92a)所提供的逻辑的一个实现,并且图14中示出的实例只是为了说 明的目的。虽然上面已经参照某些特定的实施例进行了描述,但是对于本领域的技术人员 来说,其各种改变是清楚的。
权利要求
1.一种用于控制敏感数据到器件的插入的方法,所述方法包括将服务器配置为通信连接至负责分发所述敏感数据的控制器和负责将所述敏感数据 注入到所述器件的设备,所述服务器相对于所述控制器被远程地放置,所述服务器包括 用于执行密码操作的安全模块;所述服务器从所述控制器接收包括所述敏感数据在内的、密码保护的数据传输; 所述服务器向所述安全模块提供所述数据传输; 所述安全模块从所述数据传输中提取所述敏感数据;所述服务器存储由所述控制器提供的信用值,所述信用值指示在向所述控制器请求 更多所述敏感数据之前许可多个敏感数据的插入;所述服务器从所述设备接收将所述敏感数据注入一个或多个所述器件的请求; 所述服务器参考所述信用值,并根据所述信用值向所述设备提供用于注入所述一个 或多个器件的一定数量的所述敏感数据;如果所述数量小于所述信用值,则所述服务器根据所述数量来更新所述信用值; 所述服务器接收与所述数量的敏感数据到相应器件的插入相关的设备日志报告;以及所述服务器向所述控制器发送所述设备日志报告。
2.根据权利要求1所述的方法,还包括所述安全模块准备与从所述控制器获得所 述敏感数据相关的服务器日志报告;以及所述服务器向所述控制器发送所述服务器日志报告。
3.根据权利要求2所述的方法,其中,所述提取包括所述安全模块对所述数据传 输中包括的头部进行解密以获得密钥,并使用所述密钥来对所述传输进行解密并从中提 取所述敏感数据。
4.根据权利要求1所述的方法,还包括在从所述控制器接收所述敏感数据之前执 行的预备过程,所述预备过程用于初始化所述服务器和所述安全模块。
5.根据权利要求1所述的方法,包括多个服务器,其中,所述数据传输被发送至所述 多个服务器。
6.根据权利要求1所述的方法,还包括所述服务器从所述控制器接收指示对所述 信用值的更新的信用指示。
7.根据权利要求1所述的方法,还包括所述服务器从所述控制器接收用于实现现 有数据注入方案的对象,所述现有方案修改所述数据;所述对象已被签名,签名的对象 被提供给所述安全模块;所述安全模块存储所述签名的对象,验证所述签名的对象,如 果所述签名的对象被验证,则根据所述现有方案来修改所述敏感数据;以及所述服务器 向所述设备发送所修改的数据以注入到所述一个或多个器件中。
8.根据权利要求2所述的方法,其中,所述数据传输包括多种类型的敏感数据,所述 方法还包括所述安全模块根据所述控制器建立的许可获得所述类型中的某些类型。
9.根据权利要求8所述的方法,其中,所述服务器日志报告包括所述安全模块已经向 所述设备提供了所述类型中的哪一个类型的指示。
10.根据权利要求1所述的方法,还包括所述服务器从所述控制器接收配置消息, 所述配置消息用于修改所述安全模块中的设置。
11.根据权利要求2所述的方法,其中,响应于由所述服务器和所述控制器之一发起 的轮询,将所述设备日志报告和服务器日志报告提供给所述控制器。
12.根据权利要求2所述的方法,其中,所述设备日志报告和服务器日志报告被提供 给所述控制器以获得另外的敏感数据,其中,如果所述日志报告是有利的并且要求另外 的敏感数据,则接收进一步的数据传输;如果所述日志报告是不利的,则所述服务器从 所述控制器接收禁止从任何先前传输中进一步提取所述数据的指示。
13.根据权利要求1所述的方法,其中,所述敏感数据是多个密钥,所述数据传输包 括由所述控制器的安全模块加密的一些所述密钥;并且所述提取所述数据包括根据事 先由所述控制器提供的指示所表明的,对所述密钥中的一个或多个进行解密。
14.根据权利要求13所述的方法,其中,所述安全模块在接收到所述密钥块后,对其 进行解密并对每个密钥分别重新加密;其中,在由所述设备做出请求后,所述密钥中的 某些密钥被解密以由所述设备使用。
15.根据权利要求1所述的方法,其中,所述安全模块包含用于在所述服务器和所述 控制器之间的前向和后向通信通道上通信的对称密钥。
16.一种用于控制敏感数据到器件的插入的服务器系统,所述系统包括服务器,通信连接至负责分发所述敏感数据的控制器和负责将所述敏感数据注入到 所述器件的设备,所述服务器相对于所述控制器被远程地放置,所述服务器包括 从所述控制器接收包括所述敏感数据在内的、密码保护的数据传输; 向所述安全模块提供所述数据传输; 所述安全模块从所述数据传输中提取所述敏感数据;存储由所述控制器提供的信用值,所述信用值指示在向所述控制器请求更多所述敏 感数据之前许可多个敏感数据的插入;从所述设备接收将所述敏感数据注入一个或多个所述器件的请求; 参考所述信用值,并根据所述信用值向所述设备提供用于注入所述一个或多个器件 的一定数量的所述敏感数据;如果所述数量小于所述信用值,则根据所述数量来更新所述信用值; 接收与所述数量的敏感数据到相应器件的插入相关的设备日志报告;以及 向所述控制器发送所述设备日志报告。
17.根据权利要求16所述的系统,其中,所述第二安全模块被配置为准备与从所述控 制器获得所述敏感数据相关的服务器日志报告,并向所述控制器提供所述服务器日志报告。
18.根据权利要求16所述的系统,其中,所述数据传输的头部使用加密密钥对数据密 钥进行加密;所述安全模块包括用于对所述数据密钥进行解密的解密密钥;以及,所述 安全模块被配置为使用所述数据密钥对所述传输进行解密以从中提取所述敏感数据。
19.根据权利要求17所述的系统,其中,所述服务器还包括数据存储设备,用于 在从所述数据传输中提取所述敏感数据之前存储所述数据传输。
20.根据权利要求16所述的系统,其中,所述服务器还被配置为在接收所述数据 传输之前参与预备过程,所述预备过程用于初始化所述服务器和所述安全模块。
21.根据权利要求16所述的系统,包括多个服务器,其中,所述数据传输被发送至所述多个服务器。
22.根据权利要求16所述的系统,还被配置为从所述控制器接收指示对所述信用 值的更新的信用指示。
23.根据权利要求19所述的系统,还被配置为从所述控制器接收用于实现现有数 据注入方案的对象,所述现有方案修改所述数据;所述对象已被签名,签名的对象被提 供给所述安全模块;其中,所述安全模块被配置为存储所述签名的对象,验证所述签名 的对象,如果所述签名的对象被验证,则根据所述现有方案来修改所述敏感数据,并向 所述设备发送所修改的数据以注入到所述一个或多个器件中。
24.根据权利要求17所述的系统,其中,所述数据传输包括多种类型的敏感数据,所 述安全模块根据所述控制器建立的许可获得所述类型中的某些类型。
25.根据权利要求24所述的系统,其中,所述服务器日志报告包括所述安全模块已经 向所述设备提供了所述类型中的哪一个类型的指示。
26.根据权利要求16所述的系统,还被配置为从所述控制器接收配置消息,所述 配置消息用于修改所述安全模块中的设置。
27.根据权利要求17所述的系统,其中,响应于由所述服务器和所述控制器之一发起 的轮询,将所述设备日志报告和服务器日志报告提供给所述控制器。
28.根据权利要求17所述的系统,其中,所述设备日志报告和服务器日志报告被提供 给所述控制器以获得另外的敏感数据,其中,如果所述日志报告是有利的并且要求另外 的敏感数据,则接收进一步的数据传输;如果所述日志报告是不利的,则所述服务器从 所述控制器接收禁止从任何先前传输中进一步提取所述数据的指示。
29.根据权利要求16所述的系统,其中,所述敏感数据是多个密钥,所述数据传输包 括由所述控制器的安全模块加密的一些所述密钥;并且所述提取所述数据包括根据事 先由所述控制器提供的指示所表明的,对所述密钥中的一个或多个进行解密。
30.根据权利要求29所述的系统,其中,所述安全模块在接收到所述密钥块后,对其 进行解密并对每个密钥分别重新加密;其中,在由所述设备做出请求后,所述密钥中的 某些密钥被解密以由所述设备使用。
31.根据权利要求16所述的系统,其中,所述安全模块包含用于在所述服务器和所述 控制器之间的前向和后向通信通道上通信的对称密钥。
32.一种用于控制敏感数据到器件的插入的方法,所述方法包括将控制器配置为通信连接至服务器,所述服务器相对于所述控制器被远程地放置, 并被配置为通信连接至负责将所述敏感数据注入到所述器件的设备,所述控制器被配置 为向所述服务器分发所述敏感数据,以使所述服务器能够向所述设备提供所述敏感数 据,所述控制器包括用于执行密码操作的安全模块;所述控制器使用所述安全模块来对所述敏感数据进行密码保护;所述控制器向所述服务器发送包括所述敏感数据在内的、密码保护的数据传输,以 使所述服务器能够从中提取所述敏感数据;所述控制器向所述服务器提供信用值,所述信用值指示在向所述控制器请求更多所 述敏感数据之前许可多个敏感数据的插入,以使得所述服务器能够根据向所述设备提供 的所述敏感数据的数量来更新所述信用值;所述控制器从所述服务器接收设备日志,所述设备日志与所述设备通过请求而从所 述服务器获得所述数量的敏感数据之后所述设备将所述数量的所述敏感数据插入到相应 器件相关,所述设备日志是所述服务器从所述设备获得的。
33.根据权利要求32所述的方法,还包括从所述服务器接收针对另外的敏感数据 的请求,并向所述服务器提供所述另外的敏感数据和新的信用值。
34.根据权利要求32所述的方法,还包括接收服务器日志报告,所述服务器日志 报告由所述服务器准备,并指示从所述控制器对所述敏感数据的接收。
35.根据权利要求32所述的方法,其中,所述安全模块对所述数据传输中包括的头部 进行加密以保护密钥,所述密钥使得所述服务器能够对所述传输进行解密并从中提取所 述敏感数据。
36.根据权利要求32所述的方法,还包括发起在向所述服务器发送所述敏感数据 之前执行的预备过程,所述预备过程用于初始化所述服务器和所述安全模块。
37.根据权利要求32所述的方法,包括向多个服务器发送所述数据传输。
38.根据权利要求32所述的方法,还包括所述控制器向所述服务器发送指示对所 述信用值的更新的信用指示。
39.根据权利要求32所述的方法,还包括所述控制器向所述服务器发送用于实现 现有数据注入方案的对象,所述现有方案修改所述数据;所述对象被签名以提供给所述 服务器的安全模块以存储所述签名的对象,验证所述签名的对象,如果所述签名的对象 被验证,则根据所述现有方案来修改所述敏感数据。
40.根据权利要求34所述的方法,其中,所述数据传输包括多种类型的敏感数据, 所述方法还包括所述安全模块根据所述控制器建立的许可来发送所述类型中的某些类 型。
41.根据权利要求40所述的方法,其中,所述服务器日志报告包括所述安全模块已经 向所述设备提供了所述类型中的哪一个类型的指示。
42.根据权利要求32所述的方法,还包括所述控制器向所述服务器发送配置消 息,所述配置消息用于修改所述服务器处的安全模块中的设置。
43.根据权利要求34所述的方法,所述设备日志报告和服务器日志报告是所述控制器 响应于由所述服务器和所述控制器之一发起的轮询来接收的。
44.根据权利要求34所述的方法,其中,所述设备日志报告和服务器日志报告由所述 控制器接收以获得另外的敏感数据,其中,如果所述日志报告是有利的并且要求另外的 敏感数据,则向所述服务器发送进一步的数据传输;如果所述日志报告是不利的,则所 述控制器向所述服务器发送禁止从任何先前传输中进一步提取所述数据的指示。
45.根据权利要求32所述的方法,其中,所述敏感数据包括多个密钥,所述数据传输 包括由所述安全模块加密的一些所述密钥,以使得所述服务器能够根据事先由所述控制 器提供的指示所表明的,对所述密钥中的一个或多个进行解密。
46.根据权利要求45所述的方法,其中,所述安全模块对所述一些密钥进行加密,以 使得所述服务器能够对每个密钥分别重新加密;其中,在由所述设备做出请求后,所述 密钥中的某些密钥被解密以由所述设备使用。
47.根据权利要求32所述的方法,其中,所述安全模块包含用于在所述服务器和所述控制器之间的前向和后向通信通道上通信的对称密钥。
48.一种用于控制敏感数据到器件的插入的系统,所述系统包括控制器设备,通信连接至服务器,所述服务器相对于所述控制器设备被远程地放 置,并被配置为通信连接至负责将所述敏感数据注入到所述器件的设备,所述控制器设 备被配置为向所述服务器分发所述敏感数据,以使所述服务器能够向所述设备提供所述 敏感数据,所述控制器设备包括用于执行密码操作的安全模块;所述控制器设备被配置为使用所述安全模块来对所述敏感数据进行密码保护;向所述服务器发送包括所述敏感数据在内的、密码保护的数据传输,以使所述服务 器能够从中提取所述敏感数据;向所述服务器提供信用值,所述信用值指示在向所述控制器设备请求更多所述敏感 数据之前许可多个敏感数据的插入,以使得所述服务器能够根据向所述设备提供的所述 敏感数据的数量来更新所述信用值;以及从所述服务器接收设备日志,所述设备日志与通过请求而从所述服务器获得所述数 量的敏感数据之后所述设备将所述数量的所述敏感数据插入到相应器件相关,所述设备 日志是所述服务器从所述设备获得的。
49.根据权利要求48所述的系统,其中,所述控制器设备还被配置为从所述服务 器接收针对另外的敏感数据的请求,并向所述服务器提供所述另外的敏感数据和新的信 用值。
50.根据权利要求48所述的系统,其中,所述控制器设备还被配置为接收服务器 日志报告,所述服务器日志报告由所述服务器准备,并指示从所述控制器对所述敏感数 据的接收。
51.根据权利要求48所述的系统,其中,所述安全模块对所述数据传输中包括的头部 进行加密以保护密钥,所述密钥使得所述服务器能够对所述传输进行解密并从中提取所 述敏感数据。
52.根据权利要求48所述的系统,其中,所述控制器设备还被配置为发起在向所 述服务器发送所述敏感数据之前执行的预备过程,所述预备过程用于初始化所述服务器 和所述安全模块。
53.根据权利要求48所述的系统,其中,所述控制器设备还被配置为向多个服务 器发送所述数据传输。
54.根据权利要求48所述的系统,其中,所述控制器设备还被配置为向所述服务 器发送指示对所述信用值的更新的信用指示。
55.根据权利要求48所述的系统,其中,所述控制器设备还被配置为向所述服务 器发送用于实现现有数据注入方案的对象,所述现有方案修改所述数据;所述对象被签 名以提供给所述服务器的安全模块以存储所述签名的对象,验证所述签名的对象,如果 所述签名的对象被验证,则根据所述现有方案来修改所述敏感数据。
56.根据权利要求50所述的系统,其中,所述数据传输包括多种类型的敏感数据,其 中,所述控制器设备还被配置为根据所述控制器系统建立的许可来发送所述类型中的 某些类型。
57.根据权利要求56所述的系统,其中,所述服务器日志报告包括所述安全模块已经 向所述设备提供了所述类型中的哪一个类型的指示。
58.根据权利要求48所述的系统,其中,所述控制器设备还被配置为向所述服务 器发送配置消息,所述配置消息用于修改所述服务器处的安全模块中的设置。
59.根据权利要求50所述的系统,其中,所述设备日志报告和服务器日志报告是所述 控制器设备响应于由所述服务器和所述控制器之一发起的轮询来接收的。
60.根据权利要求50所述的系统,其中,所述设备日志报告和服务器日志报告由所述 控制器接收以获得另外的敏感数据,其中,如果所述日志报告是有利的并且要求另外的 敏感数据,则向所述服务器发送进一步的数据传输;如果所述日志报告是不利的,则所 述控制器向所述服务器发送禁止从任何先前传输中进一步提取所述数据的指示。
61.根据权利要求48所述的系统,其中,所述敏感数据包括多个密钥,所述数据传输 包括由所述安全模块加密的一些所述密钥,以使得所述服务器能够根据事先由所述控制 器设备提供的指示所表明的,对所述密钥中的一个或多个进行解密。
62.根据权利要求61所述的系统,其中,所述安全模块对所述一些密钥进行加密,以 使得所述服务器能够对每个密钥分别重新加密;其中,在由所述设备做出请求后,所述 密钥中的某些密钥被解密以由所述设备使用。
63.根据权利要求48所述的系统,其中,所述安全模块包含用于在所述服务器和所述 控制器之间的前向和后向通信通道上通信的对称密钥。
全文摘要
提供了用于远程器件注册的系统和方法,以监视和量测加密钥或其它保密信息到器件中的注入。利用一个或多个分离的制造者的生产者操作在前向和后向通道上与制造者的本地模块通信的远程模块。被加密的数据传输被生产者发送给制造者,并且被解密以获得在器件中使用的敏感数据。因为数据传输被解密,所以来自信用池的信用被耗尽,并且可以由生产者通过信用指示来补充。因为分发图像被解密,使用记录被创建并被最终连接,并且作为使用报告被发回给生产者,以使得生产者能够监视和量测在制造者处的生产。在可替代的布置中,过量生产可通过在制造过程中引入责任分离而被禁止。一般地,生产者将制造的各个阶段外包给多个承包者。一般而言,责任分离涉及有目的地分离硅芯片或其它器件的制造阶段,使得最终产品必须已经被各个转包者“接触过”,从而使得最终产品是完全起作用的。
文档编号H04L9/32GK102013977SQ201010621868
公开日2011年4月13日 申请日期2006年6月12日 优先权日2005年6月14日
发明者安东尼·J·沃尔特斯, 布赖恩·尼尔, 徐大鹏, 托尼·罗萨蒂, 阿肖克·瓦德卡尔 申请人:塞尔蒂卡姆公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1