密钥生成信息树制造技术

技术编号:18610039 阅读:6 留言:0更新日期:2018-08-04 22:56
示例非暂时性计算机可读介质包括在由处理器执行时使得处理器接收对数据的请求的指令。指令还使得处理器基于元数据来确定包含数据的区域。指令使得处理器遍历元数据中的树以确定将用于区域的解密密钥与根密钥相关的密钥生成信息。

【技术实现步骤摘要】
【国外来华专利技术】密钥生成信息树
技术介绍
计算设备可以包括持久主存储器。如本文所使用的,术语“持久主存储器”和“非易失性主存储器”是指可由处理器直接寻址并且即使当对存储器的电力丢失时也存储数据的存储器。持久主存储器可以用作工作存储器来存储瞬时数据,并且可以用作长期存储来存储持久数据。具有持久主存储器的计算设备可能不需要花费时间来在辅助存储和主存储器之间移动数据。因此,计算设备可能具有比确实花费时间来在辅助存储和主存储器之间移动数据的设备更好的性能。附图说明图1是用于解密计算机可读介质上的数据的示例系统的框图。图2是用于解密计算机可读介质上的数据的另一示例系统的框图。图3是用于解密计算机可读介质上的数据的又一示例系统的框图。图4是可以存储在计算机可读介质的元数据区域中的示例树的示意图。图5是用于在计算机可读介质上生成和存储密钥的示例方法的流程图。图6是用于在计算机可读介质上生成和存储密钥的另一示例方法的流程图。图7是包括使得处理器确定用于解密密钥的密钥生成信息的指令的示例计算机可读介质的框图。图8是包括使得处理器确定用于解密密钥的密钥生成信息的指令的另一示例计算机可读介质的框图。具体实施方式具有持久主存储器的计算设备可能造成附加的安全风险。即使在电力丢失之后,持久主存储器可能继续存储敏感或重要的瞬时数据。得到对计算设备的访问权的攻击者可能能够窃取或破坏瞬时数据,如果使该数据留着而未保护的话就是这样。另外,敏感或重要的持久数据可能存储在持久存储器中。攻击者也可能能够窃取或破坏持久数据,如果使该数据留着而未保护的话就是这样。因此,可以对持久主存储器中的持久数据和瞬时数据进行加密以保护持久数据和瞬时数据。密码引擎可以加密和解密持久主存储器上的数据。如本文所使用的,术语“加密”是指将数据转换为在没有特定密钥的情况下难以获得原始数据所采用的形式。术语“解密”是指使用特定密钥将经加密的数据转换回到其原始形式。术语“难”是指不能执行或在没有大量时间、处理资源或专用工具的情况下不能执行的动作。在示例中,计算设备可以执行软件程序以加密和解密持久主存储器上的数据。然而,软件程序加密和解密数据的时间可能如此缓慢,以致于否定了缘自将辅助存储替换为持久主存储器的任何性能益处。作为代替,计算设备可以包括用于加密和解密持久主存储器上的数据的硬件或固件。例如,硬件或固件可以被包括在片上系统(SoC)中,并且可以在SoC上的存储器控制器和SoC外部的持久主存储器之间。替代地,硬件或固件可以是存储器控制器和持久主存储器之间的存储器路径中的、与SoC分离的设备。持久主存储器可以被划分成多个区域。每个区域可以通过不同的唯一密钥加密和解密。例如,存储器可以包括未加密但经数字签名的数据、系统数据、用户数据等。使用不同的密钥可以提供更高级别的安全。恶意系统或用户可能不能窃取或破坏来自其他系统或用户的数据,因为恶意系统或用户不具有访问该数据的密钥。密钥可能具有与它们相关联的不同属性。一些密钥可能是可迁移的,并且可能允许用户在适当的情况下将密钥和相关联的数据移动到另一个系统或接收密钥和相关联的数据。其他密钥可能是不可迁移的,并且可能不被提供给用户或其他系统。在示例中,密钥可以被存储在难以访问或篡改的SoC或密码引擎处的安全位置中。然而,在安全存储中可能没有足够的空间来存储每一个密钥以及相关联的元数据,诸如持久主存储器的哪些区域与每个密钥相关联、密钥是否可迁移等。可用于生成每个密钥和与每个密钥相关联的元数据的信息可以被存储在持久主存储器中。在示例中,元数据和密钥生成信息可以被存储为列表,但是从列表中搜索元数据和密钥生成信息可能是低效的。可以通过将元数据和密钥生成信息高效地存储在持久主存储器中来改善密码引擎的性能。图1是用于解密计算机可读介质120上的数据的示例系统100的框图。系统100可以包括计算机可读介质120,其可以包括多个区域121、122。计算机可读介质120可以是非暂时性计算机可读介质,诸如易失性计算机可读介质(例如,易失性随机存取存储器(易失性RAM)、处理器高速缓存、处理器寄存器等)、非易失性计算机可读介质(例如,磁存储设备、光存储设备、纸存储设备、闪速存储器、只读存储器、非易失性RAM等)和/或类似物。区域121、122可以是计算机可读介质120中的能够包含数据的不同的位置。系统100可以包括与计算机可读介质120通信地耦合的密码引擎110。如本文所使用的,术语“引擎”是指硬件(例如,处理器,诸如集成电路或其他电路)或软件(例如,编程,诸如机器或处理器可执行指令、命令,或代码,诸如固件、设备驱动程序、编程、目标代码等)和硬件的组合。硬件包括不具有软件元件的硬件元件,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)等。硬件和软件的组合包括在硬件处主控的软件(例如,存储在诸如RAM、硬盘或固态驱动器的处理器可读存储器、电阻式存储器、或诸如数字通用盘(DVD)的光学介质处和/或由处理器执行或解释的软件模块)、或在硬件处主控的软件和硬件。密码引擎110可以存储根密钥。例如,密码引擎110可以将根密钥存储在其中其将对于潜在攻击者不可访问的安全位置中。密码引擎110可以将根密钥存储在密码引擎110内部或密码引擎110外部的安全位置中。密码引擎110可以从存储在计算机可读介质120上的树检索用于多个区域121、122中的一个的密钥生成信息。如本文所使用的,术语“密钥生成信息”是指可以被处理以产生密钥的信息。可能需要诸如另一个密钥、用户凭证等的附加信息来从密钥生成信息产生密钥。术语“树”是指包括多个逻辑链接的数据元素(即节点)的数据结构,其中至少一个数据元素逻辑链接到两个孩子。术语第一节点的“孩子”是指由第一节点引用的第二节点。术语第一节点的“父亲”是指包含对第一节点的引用的第二节点。术语“分支”是指具有多个孩子的父亲的孩子或进一步的后代。密码引擎110可以生成用于针对其检索密钥生成信息的区域121、122的解密密钥。密码引擎110可以基于密钥生成信息和根密钥来生成解密密钥。在示例中,密钥生成信息可以包括解密密钥的经加密副本。密码引擎110可以使用根密钥或根密钥的后代来对解密密钥的经加密副本进行解密。替代地或另外,解密密钥可以最初使用随机数从根密钥或后代导出。密钥生成信息可以包括随机数。密码引擎110可以基于根密钥和密钥生成信息来重新导出解密密钥。密码引擎110可以使用解密密钥来解密来自针对其检索密钥生成信息的区域121、122的数据。密码引擎110可以从区域121、122检索经加密数据并且使用解密密钥来解密数据。图2是用于解密计算机可读介质220上的数据的另一示例系统200的框图。系统200可以包括计算机可读介质220和与计算机可读介质220通信地耦合的SoC210。计算机可读介质220可以包括多个区域221-225。例如,计算机可读介质220可以包括包含元数据221的区域、包含第二阶段启动加载器(SSBL)222的区域、包含操作系统(0S)和文件系统(FS)223(例如,文件系统元数据)的区域、包含用户数据224的区域、以及包含瞬时数据225的区域。在所图示的示例中,SoC210可以包括密码引擎211、持久存储212、易失性存储213、存储器本文档来自技高网...

【技术保护点】
1.一种系统,包括:包括多个区域的计算机可读介质;和通信地耦合到计算机可读介质的密码引擎,密码引擎用于:存储根密钥;从存储在计算机可读介质上的树检索用于多个区域中的一个的密钥生成信息;基于根密钥和密钥生成信息来生成用于多个区域中的一个的解密密钥;和使用解密密钥解密来自多个区域中的一个的数据。

【技术特征摘要】
【国外来华专利技术】2015.12.21 EP 15307090.91.一种系统,包括:包括多个区域的计算机可读介质;和通信地耦合到计算机可读介质的密码引擎,密码引擎用于:存储根密钥;从存储在计算机可读介质上的树检索用于多个区域中的一个的密钥生成信息;基于根密钥和密钥生成信息来生成用于多个区域中的一个的解密密钥;和使用解密密钥解密来自多个区域中的一个的数据。2.根据权利要求1所述的系统,其中密钥生成信息包括解密密钥的经加密副本。3.根据权利要求1所述的系统,其中树包含包括用于生成平台密钥的信息的分支、包括用于生成系统密钥的信息的分支、包括用于生成用户密钥的信息的分支、以及包括用于生成易失性密钥的信息的分支。4.根据权利要求1所述的系统,其中密码引擎包括易失性缓冲器,并且其中密码引擎要将解密密钥存储在易失性缓冲器中。5.根据权利要求1所述的系统,其中计算机可读介质包括指示多个区域的位置的未加密元数据区域,未加密元数据区域由平台密钥签名,平台密钥能从根密钥导出。6.一种方法,包括:确定包括计算机可读介质的计算设备正第一次被启动;生成用于加密包含系统数据的计算机可读介质的区域的系统密钥和用于加密包含用户数据的计算机可读介质的区域的用户密钥;和将用于生成系统密钥的信息存储在计算机可读介质上的树的第一分支中并且将用于生成用户密钥的信息存储在与第一分支不同的树的第二分支中。7.根据权利要求6所述的方法,其中生成系统密钥包括基于根密钥生成可迁移密...

【专利技术属性】
技术研发人员:L·陈B·巴拉彻夫F·J·迪金T·D·佩雷斯W·斯泰勒C·瓦尔拉思J·M·曼
申请(专利权)人:惠普发展公司有限责任合伙企业
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1