首页> 中国专利> 自认证芯片和提供芯片的认证服务的方法

自认证芯片和提供芯片的认证服务的方法

摘要

本发明涉及自认证芯片和提供芯片的认证服务的方法。本发明的实施例提供一种具有固有标识符(ID)的芯片的认证服务。在典型实施例中,提供一种认证装置,包括识别(ID)引擎、自测试引擎和固有部件。该固有部件与芯片关联并且包括固有特征。自测试引擎检索固有特征并把其传送给识别引擎。识别引擎接收固有特征,使用固有特征产生第一认证值,并且把该认证值存储在存储器中。自测试引擎使用认证挑战产生第二认证值。识别引擎包括比较电路,该比较电路比较第一认证值和第二认证值并且基于这两个值的比较结果产生认证输出值。

著录项

  • 公开/公告号CN103870742A

    专利类型发明专利

  • 公开/公告日2014-06-18

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN201310631255.3

  • 申请日2013-11-29

  • 分类号G06F21/44;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人吴信刚

  • 地址 美国纽约

  • 入库时间 2024-02-20 00:20:11

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-03-22

    授权

    授权

  • 2014-07-16

    实质审查的生效 IPC(主分类):G06F21/44 申请日:20131129

    实质审查的生效

  • 2014-06-18

    公开

    公开

说明书

技术领域

本发明的实施例一般地涉及系统硬件。具体地讲,本发明的实施 例涉及一种具有固有芯片标识符(ID)的自认证芯片。

背景技术

在今天的全球市场中,伪造信息技术(IT)计算机和硬件设备的越 来越多的使用是全世界的商业面临的困难挑战。伪造硬件正变得更加 难以识别,因为它可显示高技术规格和有名的品牌名称。伪造IT硬 件减少了包括经销商、供应商和制造商的供应链中的成百上千的合法 参与者的收入。对于这些合法的公司,损失和伤害可能很大,因为伪 造IT硬件与真的硬件竞争。最终,它可能影响品牌的声誉和市场公 平。

发明内容

本发明的实施例提供一种使用固有部件的芯片的认证服务。在典 型实施例中,提供一种认证装置,该认证装置包括识别(ID)引擎、自 测试引擎和固有部件。固有部件与芯片关联并且包括固有特征。为了 ID产生,自测试引擎检索固有特征并把其传送给识别引擎。识别引 擎接收固有特征,使用固有特征产生第一认证值,并且把该认证值存 储在存储器中。为了ID认证,自测试引擎使用认证挑战,产生第二 认证值。识别引擎包括比较电路,该比较电路比较第一认证值和第二 认证值并且基于这两个值的比较结果产生认证输出值。

本发明的第一方面提供一种用于提供芯片的认证服务的系统,所 述系统包括:认证装置,包括识别引擎、自测试引擎和固有部件,其 中固有部件与芯片关联并且包括固有特征;自测试引擎被构造为检索 固有特征并把固有特征传送给识别引擎;识别引擎还被构造为接收固 有特征,使用固有特征产生第一认证值,并且把该认证值存储在存储 器中;自测试引擎还被构造为使用认证挑战产生第二认证值;识别引 擎还包括比较电路,该比较电路被构造为比较第一认证值和第二认证 值;以及比较电路还被构造为基于第一认证值和第二认证值的比较结 果产生认证输出值。

本发明的第二方面提供一种用于提供芯片的认证服务的方法,所 述方法包括:在自测试引擎检索固有特征,其中固有特征是从固有部 件获得的并且固有特征与芯片关联;在识别引擎接收固有特征;在识 别引擎使用固有特征产生第一认证值;把第一认证值存储在存储器 中;使用认证挑战在自测试引擎产生第二认证值;在比较电路比较第 一认证值和第二认证值;以及基于第一认证值和第二认证值的比较结 果在比较电路产生认证输出值。

本发明的第三方面提供一种用于部署用于提供芯片的认证服务的 系统的方法,所述系统包括数据库和认证装置,所述认证装置包括识 别引擎、自测试引擎和固有部件,其中固有部件与芯片关联并且包括 固有特征;自测试引擎被构造为检索固有特征并把固有特征传送给识 别引擎;识别引擎还被构造为接收固有特征,使用固有特征产生第一 认证值,并且把该认证值存储在存储器中;自测试引擎还被构造为使 用由数据库产生的认证挑战产生第二认证值;识别引擎还包括比较电 路,该比较电路被构造为比较第一认证值和第二认证值;以及比较电 路还被构造为基于第一认证值和第二认证值的比较结果产生提供给数 据库的认证输出值,并且数据库确认该认证输出值。

附图说明

通过下面结合附图进行的本发明的各方面的详细描述,将会更容 易地理解本发明的这些和其它特征,在附图中:

图1a描述根据本发明的实施例的自认证固有标识符(ID)方法的 示例性实现方式。

图1b描述具有1晶体管/1电容器(1T1C)基元和读出放大器(SA) 的示例性DRAM。

图2描述根据本发明的实施例的示例性自测试引擎的示图。

图3描述根据本发明的实施例的示例性ID函数产生器的示图。

图4描述根据本发明的实施例的示例性模糊比较器的示图。

图5描述根据本发明的实施例的用于提供芯片的认证服务的方法 流程图。

图6描述根据本发明的实施例的使用数据库和认证装置的安全认 证的系统级框图。

附图不必按照比例绘制。附图仅是示意性表示,而非意图描绘本 发明的特定参数。附图旨在仅描述本发明的典型实施例,因此不应被 解释为限制本发明的范围。在附图中,相同标号表示相同元件。

具体实施方式

现在将参照示出示例性实施例的附图在这里更充分地描述说明性实 施例。然而,本公开可实现为许多不同形式并且不应被解释为局限于这 里阐述的示例性实施例。相反地,提供这些示例性实施例,从而本公开 将会彻底而完整并且将会充分地把本公开的范围传达给本领域技术人 员。在描述中,公知特征和技术的细节可被省略以避免不必要地模糊提 供的实施例。

这里使用的术语仅用于描述特定实施例的目的,而非意图限制本公 开。这里所使用的单数形式“一个”和“该”也意图包括复数形式,除非上 下文指出不是如此。另外,术语“一个”等的使用不表示数量的限制,而 是表示至少一个所提及的项目的存在。词语“集合”旨在表示至少一个的 数量。还将会理解,当在本说明书中使用时,术语“包含”和/或“包括” 指定存在所陈述的特征、区域、整数、步骤、操作、元件和/或部件, 但不排除存在或添加一个或多个其它特征、区域、整数、步骤、操作、 元件、部件和/或它们的组合。术语“第一”和“1st”可互换使用,以及术语 “第二”和“2nd”可互换使用。

将会理解,虽然术语“第一”、“第二”、“第三”等可在这里被用于描 述各种缓冲器、核、等级和/或存储器,但这些缓冲器、核、等级和/或 存储器不应受到这些术语的限制。这些术语仅被用于区分一个缓冲器、 核、等级或存储器与另一缓冲器、核、等级或存储器。因此,在不脱离 本发明构思的教导的情况下,以下讨论的第一缓冲器、核、等级或存储 器能够被命名为第二缓冲器、核、等级或存储器。

这里参照作为理想化实施例(和中间结构)的示意性示图的剖视图或 透视图描述实施例。如此,将会预计到作为例如制造技术和/或公差的 结果的示图的形状的变化。因此,实施例不应被解释为局限于这里示出 的区域的特定形状,而是应该包括由例如制造导致的形状的偏差。例 如,示出为具有锋利边缘的边缘或拐角区域可具有稍微圆滑或弯曲的特 征。同样地,示出为圆形或球形的元件可在形状上是椭圆形的或者可具 有某些笔直或平坦的部分。因此,在附图中示出的区域在本质上是示意 性的,并且它们的形状并不意图表示装置的区域或元件的实际形状并且 并不意图限制公开的实施例的范围。

除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具 有与本发明构思所属领域的普通技术人员通常理解的含义相同的含义。 还将会理解,除非在这里明确地这样定义,否则术语(诸如,在常用词 典中定义的那些术语)应该被解释为具有与它们在相关技术的上下文中 的含义一致的含义,并且将不会在理想化或过度形式意义上被解释。

本发明的实施例提供一种使用固有部件的芯片的认证服务。在典 型实施例中,提供一种认证装置,该认证装置包括识别(ID)引擎、自 测试引擎和固有部件。固有部件与芯片关联并且包括固有特征。自测 试引擎检索固有特征并把其传送给识别引擎。识别引擎接收固有特 征,使用固有特征产生第一认证值,并且把该认证值存储在存储器 中。自测试引擎使用认证挑战产生第二认证值。识别引擎包括比较电 路,该比较电路比较第一认证值和第二认证值并且基于这两个值的比 较结果产生认证输出值。

为了抑制伪造硬件的扩散,必须开发用于建立硬件信任根基的方 法。芯片标识符必须是独一无二的并且难以克隆。嵌入在芯片中的大量 存储器提供一种通过利用作为芯片制造过程中的内在可变性的结果的每 个位基元的固有性质来创建这种键的途径。

这种硬件键属于缺乏严格再现性的物理不可克隆功能(PUF)的族 系。一些基于DRAM的PUF保证在多次评定之间改变非常小,并且能 够因此通过模糊认证算法而被实施。因为这种方案总是需要模式识别近 似匹配,所以无法采用安全散列法,并且认证需要芯片响应与原始保存 在制造商的安全数据库中的芯片唯一识别串的芯片外模糊比较。这需要 能够存储每个芯片的所有模式标识符的大数据库,并且它需要在网络上 传送标识符。这里描述的系统和方法提供一种能够与满足最小再现性阈 值的任何固有标识符一起使用的解决方案。

自认证固有ID方法采用不可克隆的随机位模式,优选地使用嵌入 的存储器。提供挑战以创建位模式。芯片拥有对于每个芯片而言独一无 二并且由制造的可变性导致的固有信息。这种信息能够被划分成两个部 分:挑战/问题以及响应/回答。问题优选地是要在某些测试条件(诸如, 芯片电压、芯片温度或特定模式(诸如,保持时间(对于DRAM)))下挑战 的属于存储器芯片的位地址的子集的组合。响应是测试结果,诸如创建 位模式的每个测试位的通过/失败。

位模式被转换成二进制串,二进制串在产生之后被加密并且存储在 同一芯片内的存储器(优选地,eFUSE)中。原始设备制造商的(OEM)数 据库记录对于每个芯片而言并且对于每个芯片的固有ID而言独一无二 的对应挑战。挑战可被用于加密和解密用于创建存储在存储器中的二进 制串的位模式,进一步提高了安全性。

本发明的关键思想在于能够实现100%安全认证。OEM数据库搜 索ID以找到对应挑战并且把它发送给对应芯片。当利用芯片的对应挑 战对芯片进行挑战时,它能够实现在本地存储在存储器中的二进制串的 解密以产生原始位映射图。应用于不同芯片的有效挑战将产生不同的响 应,因为响应之间的冲突概率在统计上可忽略,同时挑战被调整以确保 响应集合的唯一性。类似地,存储在芯片的本地存储体中的有效位模式 响应仅能由芯片利用有效挑战来再现。由于在存储器芯片中存在太多的 位子集并且存在太多的用于选择的不同挑战,所以伪造者不能以廉价方 式利用可行的资源确定位子集或挑战。

比较器随后执行所获得的新模式和原始位映射图(在非易失性存储 器中)之间的模糊或精确比较。正确的匹配导致芯片自认证。以下参照 图1-6更详细地描述该过程。

图1a描述自认证固有ID方法的示例性实现方式100。实现方式 100包括认证装置102。装置102可被集成在产品芯片内或者布置在 系统板上。认证装置102包括识别(ID)引擎104、自测试引擎106和 固有部件108。ID引擎104包括ID挑战接口110、ID函数产生器 112、存储器114和比较电路(或比较器)116。

ID引擎104使用认证挑战来认证固有部件108。固有部件108 可以是用于产品芯片的部件之一。固有部件与芯片关联并且包括固有 特征120。在一个例子中,固有特征120由值的矩阵构成。

由OEM数据库(即,服务器)提供的认证挑战130提供用于产生 固有ID(或认证值)的域信息。在这个实例中,认证挑战是位置挑战 132。由位置挑战132提供的域信息被输入到自测试引擎106,以产 生用于访问固有部件(优选地,DRAM108)中的特定地址域的域地 址。

图1b显示DRAM108的细节。该阵列包括由字线WL和位线控 制的多个1晶体管/1电容器(1T1C)基元150。把1写到阵列的区域中 的每个1T1C基元,由保存在电容器中的电荷代表。在暂停后,由读 出放大器SA151读取并且感测每个基元,并且SA的输出被输出到 BIST106。如果电荷未泄漏至逻辑零,则SA的输出为1。如果电荷 已泄漏至逻辑零,则SA的输出为0。替代于保持暂停时间调谐, VWL能够被用作用于控制来自SA的数字0和1的可调谐阵列输入参 数,因为它控制1T1C基元的器件泄漏。在不增加暂停时间的情况 下,VWL(字线电压)的增加导致存储器位失败计数的增加,导致用于 ID产生的更短时间。

图2描述根据本发明的实施例的图1中的示例性自测试引擎(或 BIST)106的示图200。如图中所示,BIST200(或图1中的106)包括 地址产生器204、数据模式产生器206、VWL产生器208、数据比较 电路210、失败计数器212和失败寄存器214。

BIST106执行产生用于测试与固有特征关联的固有部件(优选 地,DRAM108)的域地址和数据模式的功能。位置挑战132被提供 给地址产生器204。地址产生器使用位置挑战132产生DRAM108的 域(或物理)地址222,或者更具体地讲,用于访问对应的1T1C基元 150的地址。

失败计数器212对失败的次数进行计数以检查其是否等于指定的 数目。如果不等于指定的数目,则VWL产生器208改变VWL以产生 更多的失败,直至已达到需要的失败次数。在一个例子中,可针对请 求的域设置关于要求的失败次数的限制。在另一例子中,可针对整个 存储器设置该限制。在产生需要的失败次数后,在失败寄存器214产 生与请求的域失败对应的向量模式并且该向量模式被发送给ID函数 产生器112(图1)。

返回参照图1,ID函数产生器112产生关于由服务器在认证挑 战130(即,位置挑战132)中指定的函数的第一认证值122。ID函数 产生器112执行指定的函数。例如,该函数可以是对所有域失败数据 (固有特征120)的按位或(Bitwise OR)以产生第一认证值122。第一 认证值122被存储在在认证挑战130中指定的存储器114(eFUSE) 中。在计算中,eFUSE是由国际商业机器公司开发的技术,该技术 允许计算机芯片的动态实时再编程。能够对于同一芯片产生多个这种 认证值并且这些认证值被存储在eFUSE114中。

在认证期间,如前所述,由OEM数据库(即,服务器)提供的认 证挑战130指定域地址。在这个实例中,认证挑战包括ID函数挑战 134或存储器挑战136。使用指定的ID函数和由DRAM108产生的 位失败,从如以上所示的域产生第二认证值124。

图3描述根据本发明的实施例的示例性ID函数产生器112的示 图300。ID函数产生被用于产生第一认证值122(不在图3上)和第二 认证值124。ID函数产生器112可包括不同的函数,诸如OR、 XOR、移位器等。这些函数处理由BIST106(图2)产生的来自所有域 的域ID(即,固有特征120)。要使用的ID函数由来自由OEM数据 库(即,服务器)提供的认证挑战的ID函数挑战134指定。当ID根据 函数而被处理时,反馈寄存器(寄存器310)存储该ID。当由认证挑战 确定的所有域已被处理时,发送存储在寄存器中的ID以存储在存储 器114(图1)中(作为第一认证值122)或者用于与第一认证值122比较 (作为第二认证值124),以认证芯片。如图3中所述,产生第二认证 值124。

返回参照图1,把第一认证值122与第二认证值124进行比较。 可基于比较结果产生认证输出值140。在一个例子中,比较电路116 可以是模糊比较器。

图4描述(根据本发明的实施例的)示例性模糊比较器402的示图 400。模糊比较器可被用于图1中的比较电路116。已知固有ID(即, 认证值)缺乏严格再现性。另一方面,模糊模式识别已成功展示用于 DRAM芯片。对认证的位使用上和下保护带,可通过与第二认证值 124的比较来唯一地认证第一认证值122。

模糊比较器402比较第一认证值122(即,记录的eFUSE ID)与第 二认证值124(即,产生的芯片ID)。该比较可被实现为各个位的简单 的XOR或AND。计数器404对匹配的数目进行计数。模糊比较器 402可适应特定数目的匹配以考虑产生的认证值的变化。如果匹配的 数目小于预定义的模糊阈值406,则模糊比较器402返回失配,该失 配指示第一认证值122未能与第二认证值124匹配。

一个挑战-响应对方案提供一种自认证的手段,但它是易受中间 人攻击影响的方案。如果第三方拦截芯片发送回OEM数据库(即, 服务器)的本地匹配的结果,则第三方能够容易地区分“是”或“否”, 因为仅存在两种结果。

通过产生多个挑战-响应对,可实现安全识别。另外,必须在每 个认证步骤提供多个挑战,产生本地响应匹配的结果的串。此外,为 了避免平凡的Y或N的结果串,问题必须包括真挑战和假挑战的组 合,该组合能够根据来自数据库中的挑战在每个认证请求被随机化, 因为存在确保可忽略数量的属于不同对的挑战和响应的冲突的保护 带。1(Y)和0(N)的串可导致在进行固有ID比较之后创建的位串。该 位串在OEM侧具有明确的预期值并且必须是可再现的。能够通过使 用单向函数(不可逆)对这种串进行散列处理以提高安全性,并且如果 在OEM侧和顾客侧的散列处理的结果匹配,则芯片被安全地认证。 由OEM数据库针对每个挑战产生的预期输出值必须与来自认证装置 的认证输出值匹配以便导致芯片的真实性的确认。

图5描述根据本发明的实施例的用于提供芯片的认证服务的方法 流程图500。在S1,在自测试引擎检索固有特征。在S2,在识别(ID) 引擎接收固有特征。在S3,在识别引擎产生第一认证值。在S4,第 一认证值被存储在存储器中。在S5,在自测试引擎产生第二认证 值。在S6,在比较电路比较这些值。

将会理解,图5的示例性方法处理流程500代表用于提供芯片的 认证服务的处理流程的一种可能实现方式,并且在本发明的范围内可 以有其它处理流程。处理流程示出根据本发明的各种实施例的系统、 方法和计算机程序产品的可能实现方式的架构、功能和操作。应该注 意的是,在一些替代实现方式中,在方框中标注的功能可以不按照图 5中标注的次序执行。例如,事实上,接连示出的两个方框可基本上同 时执行。

图6显示控制数据库610和认证装置102之间的认证流程的系统 600。数据库610向认证装置102请求认证,认证装置102又把外来 特征提供给数据库。数据库随后基于外来特征的值产生认证挑战或认 证挑战的串。认证装置把认证输出值或认证输出值的串返回到数据 库。数据库最后确认来自认证装置102的认证输出值的串,并且产生 认证输出结果。更具体地讲,确认过程包括与图1中的第一认证值和 第二认证值之间的匹配对应的来自认证装置的至少一个认证输出值, 并且优选地,至少一个认证输出值对应于这二者之间的失配。

安全自认证通过调整这种方案得出一系列随机化的挑战,这些挑 战中的一些被预期导致正确的本地匹配(至少一个匹配,以避免平凡 的响应)。包括所有的错误(0)匹配和正确(1)匹配的新位串是独一无二 的并且可精确再现。这类似于利用秘密已知的一组绝对事实的测谎器 测试。问题/挑战和回答/响应拥有仅OEM知道的事实表,并且每个 回答仅具有两个结果(错误-0或正确-1)。芯片自身不拥有使在本地存 储在存储器中的本地固有信息有效的键信息。OEM存储在数据库中 的这种键信息优选地是拥有固有签名的位的组的物理地址,所述物理 地址能够与一组测试条件(诸如:芯片电压,可包括VWL或者可不包 括VWL;和/或芯片温度,可以是可控的或者可不是可控的)组合。由 于缺失键信息和固有存储器签名的不可克隆性,复制非易失性部件的 伪造者具有可忽略的创建能够被成功认证的芯片的机会。

总之,这种方法和相关电路创建对于每个芯片而言独一无二并且 从不需要可严格可再现的固有ID得出的安全可再现的随机串。所获 得的能够在每个认证被随机化的串与散列算法兼容,导致增加的安全 性。

本发明的各方面的前面的描述用于说明和描述的目的。它并非意 图是穷尽的或者把本发明局限于公开的精确形式,并且明显地,可实 现许多修改和变化。对于本领域技术人员而言显而易见的这种修改和 变化旨在被包括在由所附权利要求定义的本发明的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号