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

双合成域高级加密标准存储器加密引擎制造技术

技术编号:10366820 阅读:134 留言:0更新日期:2014-08-28 10:48
可对加密和解密加速器选择多项式的不同集合。也就是说,多项式的不同集合用于加密和解密,各集合选择成使用较小面积,并且为存储器加密引擎输送更大功率。这在一些实施例中是有利的,因为存储器读操作通常比存储器写是更为关键并等待时间敏感的。

【技术实现步骤摘要】
【国外来华专利技术】双合成域高级加密标准存储器加密引擎
[0001 ] 本专利技术一般涉及存储器加密引擎。
技术介绍
存储器加密引擎用来在数据写到存储器以及从其中读取时保护数据。通常,加密使用高级加密标准(AES)。参见 NIST Advanced Encryption Standard (FIP pub.197,2001年11月26日)。高级加密标准是用来对所有读和写存储器存取进行加密和解密的对称密钥加密协议。为了防止读和写干扰(swamp)处理器性能,硬件加速AES加密和解密操作是合乎需要的。AES提供若干操作模式。AES-128、AES-192和AES-256操作模式分别对AES轮操作的10、12和14次迭代提交128位输入数据。AES轮操作包括连续置换字节、偏移行(ShiftRow)和混合列(Mixed Column)变换,之后接着添加圆键(AddRound Key)操作。在取代字节变换期间,128位输入数据的每8位输入到16个S盒之一中。每个S盒计算它在伽罗瓦域GF(28)中的相应8位输入的乘法逆。一些实现将8位输入映射到合成域(GF (24)2),计算GF (24)2中的乘法逆,将结果又映射到基本域GF (28),并且进入偏移行变换。【附图说明】针对下列附图来描述一些实施例: 图1是存储器加密引擎的示意图; 图2是按照一个实施例的高级加密标准S盒; 图3是按照本专利技术的一个实施例的乘法器方程的图示; 图4是按照一个实施例的GF(24)乘法器的图示; 图5是按照一个实施例、用于加密和解密的S盒子块的图示; 图6是按照另一个实施例、用于加密和解密的S盒子块的图示; 图7是按照一个实施例、用于加密的混合列块的示意图; 图8是一个实施例的流程图;以及 图9是一个实施例的系统图不。【具体实施方式】按照一些实施例,为加密和解密加速器选择多项式的不同集合。也就是说,多项式的不同集合用于加密和解密,各集合选择成使用较小面积(area),并且为存储器加密引擎输送更大功率。这在一些实施例中是有利的,因为存储器读操作通常比存储器写是更为关键并等待时间敏感的。参照图1,将来自存储器26的读数据提供给存储器加密引擎10中的2:1复用器,并且然后提供给存储器读路径中的添加圆键单元14。由此,数据转到置换字节块16、偏移行块18和混合列/添加圆键块20。在10次迭代之后,按照一个实施例,输出来自核心22的读数据。核心22可以是处理器、例如中央处理单元。把来自核心22的工作数据提供给存储器写路径中的2:1复用器,并且然后提供给逆混合列/添加圆键单元20a。由此,数据转到逆置换字节单元16a和逆偏移行单元18a。按照一个实施例,最后,在10次迭代之后,数据从向存储器26写数据的添加圆键单元14a输出。在一些实施例中,通过在存储器读期间使用AES-128加密的更简单计算,而在存储器写期间使用AES-128解密,进行折衷以改进读路径。这避免使用更复杂的AES-128解密存储器读。从硅面积使用角度来看,比写端口更多数量的读端口的存在也使这种折衷具有吸引力。独立加密和解密硬件用于同时读和写操作使多项式的同一集合用于加密和解密是未达最佳的。因此,一些实施例使用多项式的两个集合:一个用于加密而另一个用于解LU O为了促进置换字节中的逆计算,GF(28)中的明文操作数映射到GF(24)2的合成域。合成域中的对应二项元素表示为shx+sl,其中元素sh和si是GF(24)的域中的项,以及合成域通过多项式X2+αχ+β来定义。另一方面,GF(24)的基本域中的操作通过基本域多项式来定义。对阶4的基本域多项式存在16个潜在选择,范围到X4、x4+l…x4+x3+x2+x+l。基本域多项式是对GF(2)不可约的多项式,即,它没有在GF(2) = {0,1}中的根。这种要求消除大多数选择,从而留下X4 +x+l、x4+x3+l和x4+x3+x2+x+l作为潜在基本域多项式。 合成域GF (24)2是基本域GF (24)的扩展。因此,它与称作合成域多项式χ2+α χ+β的生成多项式关联,其中α和β是GF(24)的元素。在一些实施例中,多项式可以是在GF(24)中不可约的(即,没有根)。对于合成域多项式存在256个潜在候选,范围到X2、X2+1>…..x2+Fx+E、x2+Fx+F。基本和合成域多项式的4096个可能组合的列表通过对不可约性的测试来削减到360个组合。下一个步骤涉及搜索GF(24)2中作为合成域的根(即,θ2+αθ+β=0)并且具有也作为原始GF(28)生成多项式的根(即,(e08+(ey)4+(ey)3+(ey)+l=0)的某个幂‘y’的元素‘e’。元素ey形成合成域的基础。上述测试产生360个组合中的8个潜在基础,从而产生合成域的2880个有效表示。本文档来自技高网...
双合成域高级加密标准存储器加密引擎

【技术保护点】
一种方法,包括:       在存储器加密引擎中将多项式的第一集合用于加密;以及       在所述引擎中将多项式的不同集合用于解密。

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括: 在存储器加密引擎中将多项式的第一集合用于加密;以及 在所述引擎中将多项式的不同集合用于解密。2.如权利要求1所述的方法,包括将加密操作用于读取。3.如权利要求1所述的方法,包括使用高级加密标准。4.如权利要求1所述的方法,包括选择多项式以优化面积使用。5.如权利要求1所述的方法,包括选择多项式以优化功率消耗。6.如权利要求1所述的方法,包括使用伽罗瓦多项式。7.如权利要求1所述的方法,包括使用不可约多项式。8.如权利要求1所述的方法,包括定位作为合成域的生成元和根两者的本原元素。9.如权利要求8所述的方法,包括确保元素存在于所述域中,使得没有所述元素的幂为一。10.一种存储指令的非短暂性计算机可读介质,所述指令使处理器能够: 将多项式的第一集合用 于加密;以及 将多项式的不同集合用于解密。11.如权利要求10所述的介质,还存储将加密操作用于读取的指令。12.如权利要求10所述的介质,还存储使用高级加密标准的指令。13.如权利要求10所述的介质,还存储选择多项式以优化面积使用的指令。14.如权利要求10所述的介质,还存储选择多项式以优化功率消耗的指令。15.如权利要求10所述的介质,还存储使用伽罗瓦多项式的指令。16.如权利要求10所述的介质,还存储使用不可约多项式的指令。17.如...

【专利技术属性】
技术研发人员:SK马修S盖伦RK克里什纳墨菲
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1