当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于存储器保护的柔性计数器系统技术方案

技术编号:16708094 阅读:45 留言:0更新日期:2017-12-02 23:23
本公开涉及用于存储器保护的柔性计数器系统。一般而言,使用柔性计数器结构可以使得用于支持设备中的存储器保护操作的计数器系统更有效率。一种设备可以包括处理模块和存储器模块。存储器模块中的柔性计数器系统可以包括包含多个计数器的至少一个数据行。通过可以考虑较小的计数器进入溢出状态的溢出计数器可以从现有的实现中减小和/或改变计数器的比特大小。可以使用比特指示符来标识使用溢出计数器的计数器。在至少一个实施例中,与多个计数器中的每一计数器相对应的选择器能够将特定的存储器单元映射到特定的计数器。

【技术实现步骤摘要】
【国外来华专利技术】用于存储器保护的柔性计数器系统
本公开涉及数据安全,并且尤其涉及用于支持存储器保护操作的具有减少的存储器消耗的柔性计数器系统。
技术介绍
随着更多的日常事务变得计算机化,电子数据安全已经成为受到巨大开发关注的区域。计算设备时常用于交换金融数据、个人身份数据等。因此,黑客可能试图危害计算设备以获得对这一有价值信息的访问。例如,会加载恶意的软件(例如,恶意软件)以被动地或主动地攻击计算设备。被动攻击可以包括恶意软件观察在处理器和存储器之间传递的数据,以获得密码或者其他敏感或机密数据。主动攻击可以涉及修改存储在存储器中的数据,以触发非典型结果,例如允许未容许的用户获得对计算设备的访问。在任一情况下,与计算设备中的处理器交换的位于计算设备的存储器中的明文(未加密的)数据等是主要的弱点。设备制造商、部件制造商、软件开发商等继续尝试开发保护性措施以对抗弱点。基于软件的恶意软件检测和消除解决方案典型地在计算设备中的操作系统(OS)的特权级别处操作。对于较低的特权攻击,这些解决方案可能是有效的,但是这些解决方案可能无法对抗类似黑客程序的较高特权的恶意软件。现在一些基于硬件的保护性解决方案正在出现,其非常早地在计算设备的启动期间就被建立,并且因而可以在恶意软件甚至变为活动之前就建立保护性措施。已知的好的保护固件可以在启动期间较早地被加载,其可以执行各种功能,例如检查随后加载的软件是否与已知的好的版本一致,建立在其中可以保护数据免受恶意软件访问的存储器的受保护区域等。虽然这些保护性措施的好处可能是显而易见的,但是至少一个问题是,硬件保护系统会要求消耗设备中例如以处理能力、非易失性存储器空间为例的珍贵资源的支持系统。在类似服务器的较大规模系统中,对这些资源的消耗会更显著。附图说明随着随后的具体实施方式的继续,并且参考附图,请求保护的主题的各种实施例的特征和优点将变得显而易见,其中相同的附图标记表示相同的部分,并且其中:图1描绘了根据本公开至少一个实施例包括用于存储器保护的柔性计数器系统的示例性设备;图2描绘了根据本公开至少一个实施例能够使用的设备的示例性配置;图3描绘了根据本公开至少一个实施例的计数器系统的示例性结构;图4描绘了根据本公开至少一个实施例用于针对图3中描绘的计数器系统结构并且也针对柔性计算器结构来计算嵌入式存储器认证码的示例性操作;图5描绘了根据本公开至少一个实施例的存储器加密引擎的示例性配置以及包含溢出指示系统的柔性计数器的示例性结构;图6描绘了根据本公开至少一个实施例包含选择功能的示例性柔性计数器结构;图7描绘了根据本公开至少一个实施例用于支持柔性计数器系统中的选择功能的示例性配置;以及图8描绘了根据本公开至少一个实施例用于存储器保护的示例性操作。尽管随后的具体实施方式将参考示例性实施例继续进行,但是,对于本领域的熟练技术人员而言,许多替换、修改和变化将是显而易见的。具体实施方式本公开涉及用于存储器保护的柔性计数器系统。一般而言,使用柔性计数器结构,可以使得用于支持设备中的存储器保护操作的计数器系统更加有效率,至少在存储器消耗方面。例如,一种设备可以包括处理模块和存储器模块。处理模块可以包括存储器加密引擎(MEE),利用至少包含由至少部分地驻留在存储器模块中的柔性计数器系统生成的计数器数据的安全元数据,存储器加密引擎对从存储器模块加载的加密的数据进行解密或者在将明文数据存储到存储器模块之前对该明文数据进行加密。柔性计数器系统可以包括包含多个计数器的至少一个数据行。通过考虑较小计数器进入溢出状态的溢出计数器,可以从现有的实现来减少和/或改变计数器的比特大小。可以使用比特指示符来标识使用溢出计数器的计数器。在至少一个实施例中,与多个计数器中的每一计数器相对应的选择器可以经过将特定的较低级别的数据行或存储器单元柔性地映射到特定的计数器(例如,将非常活跃的较低级别数据行或存储器单元映射到较大的计数器,将较不活跃的较低级别数据行或存储器单元映射到较小的计数器等)。在至少一个实施例中,包含存储器保护的设备可以包括例如存储器模块和处理模块。存储器模块可以至少包括柔性计数器系统。处理模块可以至少包括存储器加密引擎(MEE),该存储器加密引擎用于以下中的至少一个:使用至少部分地由柔性计数器系统生成的安全元数据对从存储器模块加载的加密的数据进行解密,或者使用所述安全元数据在将明文数据存储到存储器模块之前对该明文数据进行加密。在至少一个实施例中,柔性计数器系统可以包括存储在存储器模块中的至少一个数据行,该至少一个数据行包括多个计数器。安全元数据可以至少包括由柔性计数器系统生成的计数器值。在示例性实现中,可以基于比特数目来确定每一计数器的大小,并且多个计数器中的至少一些计数器的大小可能不相同。多个计数器可以包括计数器组,其中在计数器的每一随后组中的计数器的大小逐渐减小。在至少一个实施例中,多个计数器可以包括至少一个溢出计数器。然后,MEE可以用于确定多个计数器中的一个计数器是否处于溢出状态并且当确定所述计数器处于溢出状态时通过将溢出计数器的当前值与所述计数器的当前值进行组合来确定计数器值。至少一个数据行可以进一步包括与多个计数器中的每一计数器相对应的比特、指示相对应的计数器是否处于溢出状态的每一比特的状态。在相同或不同的实施例中,至少一个数据行可以包括与多个计数器中的每一计数器相对应的选择器。每一选择器可以例如用于将多个计数器中相应的计数器映射到较低级别的数据行或用于将加密的数据存储到存储器模块的单元。然后,MEE可以用于确定多个计数器中的任何一个的当前值是在阈值处或在阈值之上并且使得选择器将较低级别的数据行或用于将加密的数据存储在存储器模块中的单元从多个计数器中被确定具有处于阈值处或在阈值之上的当前值的计数器重映射到多个计数器中较大尺寸的计数器。与本公开一致,一种用于存储器保护的示例性方法可以包括在将明文数据存储到存储器模块之前接收对该明文数据进行加密的请求,从存储器模块中的柔性计数器系统加载与所述请求相对应的数据行,所述数据行中的每一数据行包括多个计数器,针对每一加载的数据行确定是否需要重新配置该加载的数据行以针对该加载的数据行中的计数器生成自增的值,如果确定为需要,则重新配置该加载的数据行,使用基于自增的计数器值的数据对明文数据进行加密,并且将经加密的数据存储在存储器中。图1描绘了根据本公开至少一个实施例包括用于存储器保护的柔性计数器系统的示例性设备。首先,在描述与本公开一致的各种实施例时,可以参考诸如由英特尔公司开发的软件保护扩展(SGX)的技术、可以组成SGX的组件以及SGX可以操作的方式。在本申请中已经使用SGX来提供可以容易理解的角度,用于理解各种公开的实施例,并且并不意在将实现限制为仅使用SGX。此外,如在本申请中提及的“存储器保护”一般可以包括经由加密、完整性保护和/或重放保护来保护数据的机密性。完整性保护可以防卫攻击,其中例如,攻击方可能在解密之前修改存储器模块中加密的数据。重放保护可以防止攻击,其中例如,攻击方导致重复进行解密操作以获得对受保护数据的未授权访问。将针对图3和图4更详细地讨论上文的概念。在图1中公开了设备100的示例性配置。设备100的示例可以包括但不限于诸如基于来自谷歌公司本文档来自技高网...
用于存储器保护的柔性计数器系统

【技术保护点】
一种包含存储器保护的设备,包括:至少包含柔性计数器系统的存储器模块;以及至少包含存储器加密引擎的处理模块,所述存储器加密引擎用于执行以下中的至少一个:使用至少部分地由所述柔性计数器系统生成的安全元数据对从所述存储器模块加载的加密的数据进行解密,或者在将明文数据存储在所述存储器模块中之前使用所述安全元数据对所述明文数据进行加密。

【技术特征摘要】
【国外来华专利技术】2015.03.26 US 14/670,0611.一种包含存储器保护的设备,包括:至少包含柔性计数器系统的存储器模块;以及至少包含存储器加密引擎的处理模块,所述存储器加密引擎用于执行以下中的至少一个:使用至少部分地由所述柔性计数器系统生成的安全元数据对从所述存储器模块加载的加密的数据进行解密,或者在将明文数据存储在所述存储器模块中之前使用所述安全元数据对所述明文数据进行加密。2.根据权利要求1所述的设备,其中,所述柔性计数器系统包括存储在所述存储器模块中的至少一个数据行,所述至少一个数据行包括多个计数器。3.根据权利要求2所述的设备,其中,所述安全元数据至少包括由所述柔性计数器系统生成的计数器值。4.根据权利要求2所述的设备,其中,每一计数器的大小是基于组成每一计数器的比特数目来确定的。5.根据权利要求4所述的设备,其中,所述多个计数器包括计数器组,其中,在每一后续计数器组中的计数器的大小逐渐减小。6.根据权利要求2所述的设备,其中,所述多个计数器包括至少一个溢出计数器。7.根据权利要求6所述的设备,其中,所述存储器加密引擎用于:确定所述多个计数器中的计数器是否处于溢出状态;以及当确定所述计数器处于溢出状态时,通过将所述溢出计数器的当前值与所述计数器的当前值进行组合来确定计数器值。8.根据权利要求7所述的设备,其中,所述至少一个数据行包括与所述多个计数器中的每一计数器相对应的比特,每一比特的状态指示相对应的计数器是否处于溢出状态。9.根据权利要求2所述的设备,其中,所述至少一个数据行包括与所述多个计数器中的每一计数器相对应的选择器。10.根据权利要求9所述的设备,其中,每一选择器用于将所述多个计数器中的相对应的计数器映射到所述存储器模块中较低级别的数据行或者用于存储加密的数据的单元。11.根据权利要求10所述的设备,其中,所述存储器加密引擎用于:确定所述多个计数器中的任何一个计数器的当前值是否处于阈值处或在阈值之上;以及使得选择器将所述存储器模块中较低级别数据行或用于存储加密的数据的单元从所述多个计数器中被确定为具有处于所述阈值处或在所述阈值之上的当前值的计数器重映射到所述多个计数器中更大尺寸的计数器。12.一种用于存储器保护的方法,包括:接收在将明文数据存储到存储器模块之前对所述明文数据进行加密的请...

【专利技术属性】
技术研发人员:J·欧S·查伯拉D·M·德拉姆
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1