集成电路中的安全特征和密钥管理的制作方法_5

文档序号:8227762阅读:来源:国知局
要求来调节无线电的功率和频率、配置由内部热失效安全强加的 限制(热限制可W基于不同产品中使用的封装和冷却溶液而变化)、配置电池充电电路、启 用SM被启用的1C的潜在能力或更新、禁用SM被启用的装置上的广告报文的显示(例如,通 过向软件提供配置状况)、启用内场更新至SM被启用的1C上的CUP等的较高操作特性,等 等(或者它们的组合)。例如,控制诊断和调试模式可W临时地(例如,直到下一复位)启 用调试特征。另外,在一些实施例中,特征状态是否更新取决于费用是否已经支付(例如, 如由计费和报告服务122管理)。
[0156] SM内核及SM被启用的1C)的示例性架构假定特征配置设定不是秘密的,但是 特征设定的更改要求特权(例如,源自根权限)。对于秘密密钥,可W另外要求保护值的秘 密性,所W秘密值可W通过使用密钥管理功能性来操纵,将在下一部分中更加详细地讨论。 数字签名可W用于确保特征改变(W及密钥相关的操作)仅由被授权方进行。
[0157] 特征管理可W包括在非易失性存储器(例如,安全存储器310)中记录特征改变、 启用仅直到下一复位为止被激活的特征改变、启用仅对于固定时间段(如由时钟周期计数 器或实时时钟测量)有效的特征改变、启用操作的选定模式(例如,控制诊断和调试模式、 P化配置等等)或者它们的一些组合。
[0158] 图10是用于SM被启用的IC的特征管理的示例性方法的流程图。在步骤1005中, SM被启用的1C接收一个或多个签名块(例如,一个或多个RSB、DSB或它们的组合)。签名 块包含当由SM被启用的1C中的SM内核处理时启用SM内核W更新所管理的特征状态的更 新信息。信息可W例如包括一个或多个SM命令、一个或多个密钥或者它们的组合。SM内核 利用相应的公钥来查验(1015)数字签名的有效性。例如,如果签名块是RSB,则SM内核使 用根权限公钥(例如,存储在SM被启用的1C中)来查验数字签名的有效性。类似地,如果 签名块是DSB,则SM内核可W使用委托权限公钥(来自RSB)来查验DSB的数字签名的有效 性。在可选的实施例中,SM被启用的1C (或者包含1C的装置)可W联系根权限系统、委托 权限系统、第S方服务器或者它们的一些组合,W检索适当的公钥或其他需要的信息。
[0159] 如果数字签名无效,则处理结束(1020)。如果数字签名有效,则SM内核确定 (1025)当前许可是否允许所请求的特征更新。在该实施例中,许可可W从SM命令或者安全 存储器310、RSB、DSB或它们的一些组合中的设定来设定。如果许可不允许特征更新,则处 理接着结束(1020)。如果许可允许特征更新,则SM接着确定(1030) SM命令是否被执行为 永久性特征更新。(永久性特征更新是在SM被启用的1C复位之后、例如因为改变被记录在 非易失性存储器中而继续的更新)。如果是,则SM内核视情况而定地保存(1035) SM命令、 密钥值、特征配置值或者它们的组合W对非易失性安全存储器(例如,安全存储器310)进 行永久性特征更新,并且还可选地更新(1040)SM内核中的相应的特征状态。如果SM命令 未被执行为永久性特征更新,则处理移至步骤1040,更新由SM内核管理的特征状态并且处 理完成(1045)。
[0160] 3. 2密钥管理
[0161] 密钥管理功能性可W用于安全地传递净荷,例如秘密密钥或其他值。目的地可W 包括在SM被启用的1C、硬件区块或甚至包含SM被启用的1C的装置的其他部件上执行的软 件。SM被启用的1C包含数个永久性存储的装置特定的对称密钥(基本密钥)。基本密钥 可W用于引导附加的密钥的安全传递。在接收包含净荷的签名块之后,SM被启用的1C在 提取净荷之前查验区块W及任何相关联的许可的签名的有效性。一旦遇到密钥管理命令, SM被启用的1C就进行如下的密钥解开处理:首先从基本密钥导出传送密钥,接着使用传送 密钥将包含在命令中或由命令引用的密钥解密,并且最后将经过解密的密钥传给另一硬件 单元。如上面所讨论的,参见图3,经过解密的密钥可W例如被直接地或经由提取器、密钥接 口 W及子提取器传给硬件单元密钥管理命令不需要在安全设施中运行;净荷可W在不可信 通信信道之上被内场传递至包含SM被启用的1C的产品。
[0162] 在一个实施例中,密钥解开处理使用提供了抵抗侧信道和故障感应攻击的保护的 密钥树构造。密钥树构造使能够从单个开始的密钥创建多个不同的密钥,并且所创建的密 钥中的每一个都可W接着陆续地用于创建多个附加的不同密钥。密钥解开处理的可选实施 例可W使用区块密码(诸如AES等)、非对称算法(例如RSA),等等。
[0163] 图11是用于生成净荷的安全传送用的DSB的示例性方法的流程图。如上面所讨 论的,净荷可W包括秘密密钥。在步骤1100中,委托权限系统接收用于其计算的基本密钥。 基本密钥可W例如是全局基本密钥或者巧片特定的基本密钥。委托权限系统可W从例如1C 制造商110、产品供应商125或安全服务120接收基本密钥。委托权限系统还可W通过解密 或W其他方式处理存储在产品中(例如,在用于SM内核的安全存储器310中)的值来确定 基本密钥。
[0164] 在各种实施例中,全局基本密钥可W由多个SM被启用的1C使用。例如,全局基本 密钥可W是作为HW常量被提供至SM被启用的1C的根权限系统密钥。在其他实施例中,基 本密钥是装置特定的密钥,例如被编程到SM内核内的基本密钥。在一些场合中,装置特定 的密钥部分由产品巧片ID导出。在另一实施例中,委托权限系统获取混合密钥或者混合密 钥的前体(而不是基本密钥)。例如,如果各巧片具有唯一的装置特定的装置密钥Kchip,则 根权限可W分布(例如,经由安全服务120)给委托权限系统用于各巧片的F(KeHiP,委托ID) 的表格/数据库,其中F是诸如散列等的密码操作,允许了委托用具使用用于巧片的表格项 目作为其固定密钥(或者W形成固定密钥),而RSB可W引导SM内核计算用于特定委托的 委托ID的F化CHIP,委托ID) W到达相同值。更通常地,委托基本密钥可W被传递作为委托 密钥数据库的一部分,并且利用对于SM内核已知的主基本密钥、或者对于SM内核已知或者 可W被传递至SM内核(例如,在RSB和/或DSB中)的参数值(诸如委托ID等)W及一 个或多个密钥生成功能导出。例如,混合密钥可W利用密钥梯、HMAC、散列功能或其他密钥 导出方法来导出。数据库可W例如每个巧片或每多个巧片包含一个委托基本密钥。委托基 本密钥可W由根权限系统生成。例如,根权限可W利用例如AES和一系列单向函数从万能 密钥导出特定的基本密钥。W该方式的导出和密钥控制可W帮助防止较高值的密钥万一第 =方不正确地管理了密钥而被损害。
[01化]在步骤1105 (除非混合密钥已经在早先被导出,例如每上述可选实施例中的)中, 委托权限系统导出混合密钥。委托权限系统可W通过使用关于之前步骤中导出的密钥的一 系列的一个或多个单向函数来导出混合密钥。例如,混合密钥可W用密钥树操作、HMAC计 算、散列函数或其他密钥导出方法导出。来自基本密钥的附加的抽取可W帮助保护基本密 钥不受直接攻击。
[0166] 在步骤1110中,委托权限系统利用一些列单向函数从混合密钥导出一个或多个 传送密钥。步骤1110可W牵设到对称密码术、非对称密码术、单向密码功能或者它们的一 些组合。委托权限系统可W接着获取净荷密钥,例如通过从万能密码导出净荷密钥、或者 从预计算的数据表格中检索净荷密钥或者在网络之上取出净荷密钥。在一些实施例中,预 计算的表格可W由发布密钥的第S方(诸如对发布用于特定系统或诸如皿CP、EMV等协 议的密钥有责任的实体)生成,或者先前由委托权限系统生成。净荷密钥可W由作为获取 (1120)净荷密钥的处理的一部分的委托权限系统加密接着解密而被存储。
[0167] 在步骤1130中,委托权限系统利用一个或多个传送密钥将净荷密钥加密。
[0168] 在步骤1135中,委托权限系统利用经过加密的净荷密钥和混合密钥(或另一密 钥)导出验证子。具体地,验证子可W通过将经过加密的净荷密钥和混合密钥作为输入提 供至其最终输出是验证子的一系列的一个或多个单向函数。验证子使得SM内核(或经过 加密的净荷密钥的潜在的其他接收方)能够验证经过加密的净荷密钥是有效的并且未经 修改。
[0169] 在步骤1140中,委托权限系统接收一个或多个委托输入参数(除了在签名中牵设 到的其他值W外,其还可W包括SM内核W及提取器/子提取器最终应该将净荷传递至的位 置的地址)。并且,在步骤150中,委托输入参数、经过加密的净荷密钥W及验证子接着利用 委托权限系统私钥被委托权限系统数字签名,W创建DSB。在步骤1160中,提供了 DSB。
[0170] 备选地,在未示出的一些实施例中,步骤1135被省略,并且于是在步骤1150中,验 证子未被数字签名并且不是被提供的DSB的一部分(1160)。
[0171] 图12是用于通过SM内核来处理包括了净荷的一个或多个签名块的示例性方法的 流程图。例如,一个或多个签名块可W是RSB和相关联的DSB(例如,经由图11的处理生 成)。在另一实施例中,净荷在没有DSB的情况下可W被包括在RSB内。
[0172] 在步骤1200中,在SM内核处接收一个或多个签名块(例如,一个或多个RSB、DSB 或者它们的组合)。还可W接收附加的未签名的数据(诸如具有验证子的经过加密的净荷 等)。该些元素可W被同时或不同时地接收。
[0173] 在步骤1210中,SM内核验证一个或多个签名块的数字签名,并且验证任何DSB的 委托许可是否有效。验证处理与参照图9A和图9B进行上述验证处理相同。如果用于一个 或多个签名块的数字签名无效,或者委托许可无效,则SM内核拒绝(1215) -个或多个签名 块并且处理结束(1250)。然而,如果数字签名和许可有效,则SM内核利用对SM内核已知的 基本密钥(例如,全局密钥或委托基本密钥)、例如利用用于生成混合密钥的相同算法(例 如,与图11有关的描述)来导出(1220)混合密钥。SM内核接着可W利用基本密钥和图11 中的用于生成传送密钥的相同算法来导出(1225)传送密钥。
[0174] SM内核从DSB (或者从RSB或从未签名的数据,如果该RSB或未签名的数据是经过 加密的净荷存在所在位置的话)中提取(1230)经过加密的净荷密钥,并且采用图11中用 于生成传送密钥的相同算法利用经过加密的净荷密钥和混合密钥导出(1235)验证子。SM 内核可W接着确定(1240)验证子是否正确。SM内核通过将在步骤1235中导出的验证子与 用净荷密钥(例如,在DSB中)接收到的验证子进行比较来做出该确定。如果验证子不匹 配,则该是个错误(1215)并且处理结束(1250)。如果验证子匹配,则SM内核利用传送密钥 将经过加密的净荷密钥解密(1245)并且处理结束(1250)。
[01巧]备选地,在未示出的一些实施例中,步骤1235和1240被省略,并且于是经过加密 的净荷密钥可W在不使用验证子的情况下被解密。步骤1235和1240还可W用验证验证子 的其他方法取代,例如通过验证没有单独进行计算的验证子(诸如通过验证RSA、EC-DSA或 验证子中包含的其他数字签名)。
[0176] 另外,在一些实施例(未示出)中,经过加密的净荷密钥不是从DSB(1230)中提 取,但是可W (例如)从RSB(或其他签名块)、从安全存储器(例如,安全存储器310)检 索、与检测器I/F(例如,寄存器I/F 358)之上的签名块单独地被提供或者从SM内核内的 私有存储器检索。
[0177] 3. 3 审核
[0178] 在各个时间都可能期望验证SM被启用的1C的状态。审核能力可W例如用于确保 先前的特征管理命令已经被正确地施加至装置,或者用于验证装置的效力。例如,如果客户 请求启用了特征的交易的退款,则可能期望验证特征在退款购买价格之前已经被禁用。
[0179] 通常审核处理可W包括从审核实体接收挑战。该挑战可W是随机参数,并且被包 括W允许响应于特定请求而生成的响应的确认。在接收到挑战之后,SM被启用的1C可W生 成如下证明演示;(1)它知道秘密密钥(例如,审核命令中指定的基本密钥),并且似它知 道或者适当的状态的值或者状态的性质(例如,它满足挑战中指定的准则)。例如,响应于 审核命令,示例性SM内核可W计算出作为秘密密钥的W及正被审核的特征状态中的位的 函数的审核证明。在审核计算中包括秘密密钥防止不知道秘密密钥的对手伪造审核响应。 审核实体最终验证响应。状态审核可W使用对称密码术(诸如报文认证码等)并且/或者 公钥密码术(诸如数字签名等)W保证证明安全。
[0180] 在示例性实施例中,审核请求可W可选地包含命令签名者也知道选定的秘密密钥 的验证子演示。如果该验证子与内部计算出的参考匹配,则SM内核例如可W仅产生审核证 明。关于请求的验证子可W帮助防止未授权方调用审核命令。
[0181] 包括了 SM内核内部特征的任何特征状态的值都可W潜在地被审核。例如,为了使 用验证先前的特征管理命令已经被正确地应用至SM被启用的1C的审核功能性,先前的命 令可W设定表明了其成功的内部位,接着该位可W随后被审核。如果审核实体的目的仅是 验证包含了 SM内核(但不是其状态)的装置的效力,则任何特征状态都不必要被并入到响 应中。
[0182] 审核可W利用SM内核可用的任何密钥来进行,包括全局秘钥、装置特定的密钥、 由一些列SM被启用的1C共享的密钥或者它们的一些组合。在利用装置特定的密钥的实施 例中,密钥的数据库可W做成对于审核员(例如,通过根权限、1C制造商、产品供应商、安全 服务,等等)是可用的,W便于审核响应的验证(W及可能的审核请求的创建)。
[0183] 4.配置器和编译器功能性
[0184] 配置器系统(例如,配置器系统280)可W在SM被启用的1C的设计过程期间使用。 配置器系统在ASIC设计过程期间被操作,W对SM内核管理的特征空间和密钥的到1C中的 特征W及其他目的地或使用的映射进行追踪并使其自动化。图13A是用于在SM被启用的 1C的设计过程期间利用配置器系统的示例性方法的流程图。在步骤1310中,配置器系统接 收配置器输入数据。配置器输入数据可W包括一个或多个配置器输入文件、硬件("HW") 常量或它们的一些组合。
[0化5] -个或多个配置器输入文件限定了关于用于SM被启用的1C的期望的配置的信 息。例如,该些文件可W指定如下该样的事物:用于应该被传递至各特征的配置值的名称和 大小(例如,位的数量)、配置值的在特征地址空间内的分组或位置、用于配置值的默认(例 如,上电)值、用于安全密钥总线目的地的名称和属性、安全密钥总线属性(诸如用于目的 地的密钥大小等)、安全存储器映射属性(诸如关于安全存储器310的布局的信息)或它们 的一些组合。
[0186] HW常量可W被包含在配置器输入文件或者被单独地接收。输入配置器的HW常量 的示例可W包括例如产品巧片ID、来自根权限(潜在地包括根权限公钥)的一个或多个密 钥、来自委托权限的一个或多个密钥、一个或多个基本密钥、一个或多个附加安全密钥、错 误校正数据等等。
[0187] 在步骤1320中,配置器系统生成1C设计文件。该些1C设计文件可W包括提取器 硬件限定、子提取器硬件限定W及状态缓存数据(例如,1C配置映射信息)。在一些实施 例中,在先的1C配置映射信息可W在步骤1310中被包括有配置器输入数据,W使并入了对 SM被启用的1C设计做出的改变时的现有电路设计的修改最小化。在该情况下,配置器力图 标识出最小冲击的方式来进行请求的改变。例如,如果新的值待被插入到特征地址空间内, 则该可W包括利用先前的映射来标识出用于插入(例如,与重新创建用于现有值的位置相 反)的先前未使用的位置。同样,如果值被从特征地址空间中去除,则配置器可W使用先前 的映射信息w留下与重新定位剩余特征相反的间隙。
[018引巧片设计被锁定(步骤1330),例如因为巧片设计被准备用于大规模的制造。在该 一点上,影响制造中使用的掩码设定的配置器输出不能再被改变。图13B是在巧片设计被 提交用于制造之后可W如何利用配置器的示例性处理的流程图。
[0189] 在步骤1340中,配置器系统接收配置器可操作性输入数据。配置器可操作性输入 数据可W包括图13A中生成的1C配置映射W及附加的数据(例如,在可操作性SM配置文 件中)。可操作性SM配置文件可W描述例如关于与特定SM被启用的1C相关联的特征和密 钥可W如何使用的策略、对命名约定做出的改变、用于安全存储器310的SM内核的使用的 布局和配置约定W及内部特征的到特征地址的映射。
[0190] 在步骤1350中,配置器系统在内部生成可操作性配置映射。因为图13B中的步骤 可W比图13A中的那些步骤晚地进行,所W在步骤1350处生成的映射可W是能够比图13A 期间准备的映射更加全面且最新的特征地址范围的映射,而图13B中的处理通常必须假定 实际影响巧片硬件的来自13A的输出不能被改变。
[0191] 在步骤1360中,配置器系统从其可操作性配置映射生成映射文件。该些映射文件 包括一个或多个命令映射文件W及一个或多个固件映射文件。命令映射文件是例如用于将 命令映射成为能够由SM内核理解的形式的文件。例如,如果根权限系统希望将特定配置值 输送至给定特征,则该文件可W帮助根权限系统标识与该配置值和特征对应的特征空间地 址。固件映射文件是包含软件开发(例如,C或C++标头和源文件,等等)所需的限定和结 构的文件。在一些实施例中,可操作性配置映射可W在步骤1340中包括有配置器可操作性 输入数据,W使当并入对可操作性输入数据做出的附加改变时的现有可操作设计的修改最 小化。
[0192] 另外,在一些实施例中,配置器系统生成文档文件。文档文件提供SM被启用的1C 设计的概要,诸如特征空间中的分配的命名W及相关联的地址的列表、该配置值被发送至 各特征的列表、关于所支持的密钥的信息、用于特征地址空间中的值的默认值。另外,文档 文件可W包括软件组件的设计中使用的环境和构造原理。文档文件可诸如XMUHTML、 text、PDF、WO畑等的格式输出。
[0193] 5.可操作性生态系统
[0194] 5. 1安全存储器命令分段和上电处理
[01巧]在示例性实施例中,命令分段区域存在于作为SM被启用的1C的一部分的安全存 储器310内。该区域对由SM被启用的1C在各复位上执行的SM命令进行保持。储存的SM 命令在分段中被组织,并且可W用于影响特征空间中的值的永久性设定W及期望SM被启 用的1C在各复位上执行命令(例如,传递诸如固件解密密钥等的密钥)和/或在SM被启 用的1C内永久性地携带配置操作的其他情况。
[0196] 安全存储器典型地是永久性的并且在一些实施例(诸如使用一次性可编程存储 器的那些等)中不可W被容易地重写,该可能使提高坚固性的措施成为必要。一个可能的 故障是"撕裂(tearing)",该是例如归因于电源故障而在写入处理期间的中断。期望被中 断的命令分段写入不会致使SM被启用的1C不能在将来的复位上使用。另一可能的故障是 存储在安全存储器中的数据例如归因于娃劣化或外部条件的损坏。再次期望冲击最小并且 单个损坏事件应该不可能致使SM被启用的1C不可用。还期望安全存储器的损坏(例如作 为攻击的一部分)不会启用在SM被启用的IC的操作上的由SM内核强加的任何约束的环 境。
[0197] SM命令可W包含控制SM内核写入安全存储器的方式的信息。例如,有可能是防撕 裂的标志(防撕裂模式)、或在错误上恢复的标志(错误上恢复模式)或者组合。
[0198] 当防撕裂模式被激活时,示例性SM内核在写入命令分段的处理(或其他写入操 作)开始时将"跳过字符"写入安全存储器。如果写入未完成,则跳过字符引起SM内核在 随后的复位中认出它(例如,使得能够跳过包含部分被写入的数据的区域)。在写入跳过字 符之后,SM内核可W写入净荷(例如,主命令分段内容),并且接着最后擦掉(例如,通过将 字中的所有位设定为1的值)跳过字符。当未使用防撕裂模式时,SM被启用的1C不写入 跳过字符,该节约了安全存储器的一个字符,但是意味着如果写入未完成则SM内核可能记 住在随后的复位上的严重故障。(严重故障可能引起SM内核进入SM被启用的1C所进入的 功能缩减的状态,例如因为继续进行操作通常可能会危及安全。)一旦擦掉了跳过字符,分 段变成强制性的并且将用在各随后的复位上(即,如果在跳过字符被擦掉之后当读取分段 时遇到不可改正的问题,则SM被启用的1C将引发严重故障)。是否使用防撕裂模式的选择 可W取决于编程环境,例如禁用防撕裂模式的提高了的效率可W在受控的工厂环境中是优 选的,而防撕裂可W对于内场写入是强制性的。
[0199] 对于错误上恢复模式,SM被启用的1C在命令分段标头中设定标志,如果在从安全 存储器中读取分段时有问题,则该标志可接受忽略命令分段。例如,错误上恢复标志可W设 定在启用SM被启用的1C的能力的分段上。如果SM被启用的1C跳过分段,则因为不能从 安全存储器中读取,同时SM被启用的1C的能力可能比分段被正确读取和处理时的低,所W 没有创建安全风险。
[0200] SM被启用的1C可W既不允许防撕裂标志和错误上恢复标志中的一个也不允许两 者被指定用于写入安全存储器的任何给定的分段(或其他数据值)。SM被启用的1C也可 W要求对于安全存储器的所有写入使用模式的特定组合。
[0201] 在复位之后,SM内核由于被存储在其安全存储器(例如,安全存储器310)中的命 令分段引导而自动地将特征和密钥状态初始化。图14是用于SM被启用的1C的初始化的 示例性方法的流程图。 悦0引在步骤1405中,SM被启用的1C被上电或复位。SM内核可W作为该步骤的一部分 被复位。SM内核接着检索(1410)与SM被启用的1C相关联的产品巧片ID
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1