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

经双仿射映射的s-盒硬件加速器制造技术

技术编号:17959996 阅读:27 留言:0更新日期:2018-05-16 05:31
一种处理系统包括:存储器和操作地耦合到存储器的密码加速器模块,密码加速器模块采用来通过执行以下来实现字节替代操作:输入位序列的第一映射仿射变换以产生第一中间位序列;第一中间位序列的逆变换以产生第二中间位序列;以及第二中间位序列的第二映射仿射变换以产生输出位序列。

S- box hardware accelerator with dual affine mapping

A processing system includes a memory and a cryptographic accelerator module that is coupled to the memory. The cipher accelerator module is used to implement the byte substitution operation by executing the following: the first mapped transformation of the input bit sequence to produce the first intermediate sequence; the first intermediate bit sequence is changed to produce the second medium. The interposition sequence and the second mapping affine transformation of the second median sequence are used to generate the output bit sequence.

【技术实现步骤摘要】
【国外来华专利技术】经双仿射映射的s-盒硬件加速器
本公开总体地涉及计算设备并且更具体地涉及用于执行密码操作的计算设备。
技术介绍
密码方法可以用于保护计算机系统和其他电子设备中的机密信息。例如,可以执行加密操作,其中使用加密密钥(例如,位序列)对明文输入数据(例如,表示文本、数字、可理解字符等的位序列)执行如由所选密码算法指定的一系列变换,以保护经加密数据(密文)。在不知道密码密钥的情况下,从经加密数据确定未加密明文数据一般是实际上不可行的。如果知道密码密钥,则可以对经加密数据执行解密(有时称为逆密码)操作以重现对应明文(未加密数据)。附图说明从下面给出的详细描述并且从本公开的各种实施例的附图将更完整地理解本公开。然而,绘图不应视为将本公开限制到特定实施例,而是仅仅为了解释和理解。图1示意性地图示了根据本公开的一个或多个方面的可以采用来执行密码操作的处理系统;图2示意性地图示了根据本公开的一个或多个方面的实现密码操作的密码硬件加速器的框图;图3示意性地图示了根据本公开的一个或多个方面的可以采用来实现S-盒的示例变换矩阵;图4示意性地图示了根据本公开的一个或多个方面的用于将素域(prime-field)GF(28)变换成合成域(composite-field)GF(24)2的映射矩阵;图5示意性地图示了根据本公开的一个或多个方面的可以采用来实现S-盒的示例经合并变换矩阵;图6示意性地图示了根据本公开的一个或多个方面的使用映射和逆映射矩阵的S盒的示例实现方式,所述映射和逆映射矩阵被合并到相应仿射矩阵中;图7示意性地图示了根据本公开的一个或多个方面的评估素域GF(28)的合成域中的多项式的可能组合;图8描绘了根据本公开的一个或多个方面的执行密码操作(诸如实现S-盒)的示例方法的流程图;图9描绘了根据本公开的一个或多个方面的用于标识具有最优区域设计的S-盒实现方式的示例方法900的流程图;图10描绘了根据本公开的一个或多个方面的示例计算机系统的高级组件图;图11描绘了根据本公开的一个或多个方面的处理器的框图;图12A-12B示意性地图示了根据本公开的一个或多个方面的处理器微架构的元件;图13描绘了根据本公开的一个或多个方面的示例计算机系统的框图;图14描绘了根据本公开的一个或多个方面的示例片上系统(SoC)的框图;图15描绘了根据本公开的一个或多个方面的示例计算机系统的框图;以及图16描绘了根据本公开的一个或多个方面的示例片上系统(SoC)的框图。具体实施方式本文的“密码操作”应当是指涉及秘密参数的数据处理操作(例如,使用秘密密钥的加密/解密操作)。本文的“密码数据处理系统”应当是指被采用用于执行密码操作的数据处理系统(例如,通用或专用处理器、片上系统等)。诸如高级加密标准(AES)或SMS4的密码方法可以执行若干次迭代(也称为“轮次”)以使用加密密钥将明文数据变换成经加密密文。每一轮次可以包括使用轮次密钥对输入状态执行的算术、逻辑或字节置换操作的序列,所述轮次密钥从加密密钥导出。每一但最后轮次的作为结果的状态然后可以被利用作为后续轮次的输入状态。将这样的算术、逻辑或字节置换操作映射到通用微处理器上的计算复杂性结合实时介质处理和存储器加密的高数据速率可能导致处理器核内的功率和性能瓶颈。本公开的各方面通过公开用于使用合成伽罗瓦域来执行非线性数据处理操作的系统(诸如硬件加速器)和方法来解决这一及其他缺陷。在说明性示例中,在密码操作的每一轮次处,轮次密钥的某些位可以与轮次状态的至少子集混合,并且结果可以通过常称为S-盒的替代模块得到。S-盒的输出可以被旋转并且后续与轮次状态混合,以创建将重复地经受轮次迭代的中间输出。最终轮次之后,四个状态字节可以用于生成最终密码输出。在某些实现方式中,可以通过伽罗瓦域GF(28)的元素来表示S-盒的输入和输出,伽罗瓦域GF(28)可以视为256个8位整数的集合,其中在那些整数上定义了某些操作。根据本公开的一个或多个方面,可以通过执行具有介入(intervening)逆操作的双仿射变换来实现S-盒,如本文下面的更多细节中所描述的那样。下面通过示例的方式而不是通过限制的方式在本文中更详细地描述了以上引用的方法和系统的各个方面。在下面的描述中,阐述了许多具体细节以便提供对本公开的透彻理解,诸如特定类型的处理器和系统配置、特定硬件结构、特定架构和微架构细节、特定寄存器配置、特定指令类型、特定系统组件、特定测量/高度、特定处理器流水线级以及操作的示例。然而,对于本领域技术人员将明显的是,不需要采用这些特定细节来实践本文公开的方法。在其他实例中,没有详细描述熟知的组件或方法以免不必要地模糊本公开,诸如特定和可替换处理器架构、用于所描述的算法的特定逻辑电路/代码、特定固件代码、特定互连操作、特定逻辑配置、特定制造技术和材料、特定编译器实现方式、算法在代码方面的特定表达、特定掉电和门控技术/逻辑以及计算机系统的其他特定操作细节。尽管参照处理器来描述以下示例,但是其他实现方式适用于其他类型的集成电路和逻辑器件。本文描述的示例的类似技术和教导可以应用于可以受益于更高流水线吞吐量和改进的性能的其他类型的电路或半导体器件。本文描述的示例的教导适用于执行数据操纵的任何处理器或机器。然而,本公开不限于执行512位、256位、128位、64位、32位或16位数据操作的处理器或机器,并且可以应用于在其中执行数据的操纵或管理的任何处理器和机器。说明本公开的示例和附图不应在限制性含义上进行解释,因为它们仅仅意图提供本文描述的实施例的示例而不是提供本文描述的实施例的所有可能实现方式的穷尽列表。尽管下面的示例在执行单元和逻辑电路的上下文中描述指令处置和分布,但是可以通过存储在机器可读有形介质上的数据或指令的方式来实施本文描述的系统和方法的其他实现方式,所述指令当被机器执行时使机器执行与本文描述的至少一个实施例一致的功能。在某些实现方式中,与本文描述的实施例相关联的功能体现在机器可执行指令中。指令可以用于使利用所述指令编程的通用或专用处理器执行本文描述的方法。本文描述的实现方式可以提供为可以包括其上存储有指令的机器或计算机可读介质的计算机程序产品或软件,所述指令可以用于对计算机(或其他电子设备)进行编程以执行根据本文描述的实施例的一个或多个操作。可替换地,本文描述的系统和方法的操作可以由特定硬件组件或由编程的计算机组件和固定功能硬件组件的任何组合来执行,所述特定硬件组件包含用于执行操作的固定功能逻辑。用于对逻辑进行编程以执行本文描述的方法的指令可以存储在系统中的存储器内,诸如DRAM、高速缓存、闪速存储器或其他存储装置。此外,指令可以经由网络或者通过其他计算机可读介质的方式被分布。因此,机器可读介质可以包括用于存储或传输机器(例如计算机)可读形式的信息的任何机构,但是不限于:软盘、光盘、压缩盘只读存储器(CD-ROM)以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪速存储器或者在通过因特网经由电气、光学、声学或其它形式传播信号(例如,载波、红外信号、数字信号等)传输信息中使用的有形机器可读存储装置。因此,计算机可读介质本文档来自技高网...
经双仿射映射的s-盒硬件加速器

【技术保护点】
一种处理系统,包括:存储器;密码加速器模块,其操作地耦合到存储器,密码加速器模块用于通过执行以下来实现字节替代操作:输入位序列的第一映射仿射变换以产生第一中间位序列,第一中间位序列的逆变换以产生第二中间位序列,以及第二中间位序列的第二映射仿射变换以产生输出位序列。

【技术特征摘要】
【国外来华专利技术】2015.09.24 US 14/8637691.一种处理系统,包括:存储器;密码加速器模块,其操作地耦合到存储器,密码加速器模块用于通过执行以下来实现字节替代操作:输入位序列的第一映射仿射变换以产生第一中间位序列,第一中间位序列的逆变换以产生第二中间位序列,以及第二中间位序列的第二映射仿射变换以产生输出位序列。2.根据权利要求1所述的处理系统,其中由通过将映射矩阵和第一变换矩阵相乘而产生的矩阵来表示第一映射仿射变换。3.根据权利要求2所述的处理系统,其中第一变换矩阵与有限域的一对约减多项式相关联。4.根据权利要求2所述的处理系统,其中输入位序列和输出位序列中的至少一个通过有限素域的元素来提供,并且其中映射矩阵表示从有限素域到有限素域的合成域的映射。5.根据权利要求4所述的处理系统,其中通过GF(28)伽罗瓦域来表示有限素域。6.根据权利要求4所述的处理系统,其中通过GF(24)2伽罗瓦域来表示合成域。7.根据权利要求1所述的处理系统,其中由通过将映射矩阵和第二变换矩阵相乘而产生的矩阵来表示第二映射仿射变换。8.根据权利要求1所述的处理系统,其中所述处理系统被采用来执行以下之一:SMS4加密操作或SMS4解密操作。9.根据权利要求1所述的处理系统,其中所述处理系统实现为片上系统(SoC)。10.一种包括可执行指令的计算机可读非暂时性存储介质,所述可执行指令当被处理设备执行时使处理设备执行操作,所述操作包括:执行输入位序列的第一映射仿射变换以产生第一中间位序列;执行第一中间位序列的逆变换以产生第二中间位序列;以及执行第二中间位序列的第二映射仿射变换以产生输出位序列。11.根据权利要求10所述的计算机可读非暂时性存储介质,其中由通过将映射矩阵和第一变换矩阵相乘...

【专利技术属性】
技术研发人员:SK萨特帕菲SK马修V戈帕尔KS亚普
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1