一种应用于AES算法的字节替换方法及系统技术方案

技术编号:13178723 阅读:28 留言:0更新日期:2016-05-11 10:12
本发明专利技术涉及一种应用于AES算法的字节替换方法,其特征在于:将AES算法内部数据路径输入数据的每个字节均表示为有限域GF(28)中的一个元素,使用扩展欧几里得算法计算有限域GF(28)中输入数据基于不可约多项式的乘法逆元,然后对得到的乘法逆元进行仿射运算,得到字节替换结果。本发明专利技术提供的替代方法通过扩展欧几里得算法来求取乘法逆元,然后将乘法逆元进行仿射运算来实现AES算法中的字节替换功能,与现有技术相比,可以最大限度的节省逻辑资源,并且有效提升系统的工作频率。

【技术实现步骤摘要】

本专利技术属于无线通信芯片媒体访问控制(MediaAccessControl,MAC)层加密
,更具体地,涉及到高级加密标准(AdvancedEncryptStandard,AES)算法中在有限域GF(28)内实现字节替换的方法。
技术介绍
2000年10月,美国政府正式宣布选择两位比利时密码学家共同专利技术的Rijndael算法作为新一代高级加密标准(AES)。AES由美国国家标准与技术研究院于2001年11月26日发布于FIPSPUB197,并在2002年5月26日正式有效。Rijndael算法因为其安全、性能好、效率高、实用性强、灵活性好的特点而被最终选为AES,作为新一代数据加密标准。目前AES已经被一些国际标准化组织(ISO,IETF,IEEE802.11i等)釆纳作为标准。AES作为新一代数据加密标准,被广泛的应用于各个领域。在无线网络应用方面,无线网络通信信道的开放性使得通信对安全性的要求变得更高。目前,世界上主要有两个无线网络国际标准:一是WLAN的IEEE802.11协议(Wi-Fi);二是WMAN的IEEE802.16协议(WiMAX)。虽然,这两个协议在制定初期分别选择了RC4和DES(DataEncryptionStandard)作为所用的安全机制,但随着信息安全发展需要且考虑安全的原因,AES已经逐渐代替RC4和DES。除此以外,其他一些无线网络技术也都采用了AES,用于加密数据安全传输。密码学加密技术就密钥的策略上而言,密码体制可分为对称密码体制和非对称密码体制。AES加密算法属于对称密码体制,在信息安全中起着重要的作用,有着以下优点:(1)加密和解密速度快,有很高的数据吞吐率,便于软硬件实现;(2)密文和明文长度相同;(3)其算法安全性能在现有的攻击下能保持良好的安全性。自从AES提出之时起,国内外很多学者专家对其开展了各项研究。其中,一部分研究聚焦于AES的攻击方式和分析方法,一部分则重点研究AES的优化与应用,后者的目的是为了更好地平衡AES硬件实现具体设计中的面积与速度。AES算法的实现方式有两种:软件方式和硬件方式。软件实现速度慢,并且存在安全隐患。AES的硬件实现可以提供强安全性、灵活性和高效性,因此AES高性能硬件实现成为研究重点。
技术实现思路
本专利技术提出了一种应用于AES算法的字节替换方法,该方法通过扩展欧几里得算法来求取乘法逆元,然后将乘法逆元进行仿射运算来实现AES算法中的字节替换功能,与现有技术相比,可以最大限度的节省逻辑资源,并且有效提升系统的工作频率。为实现以上专利技术目的,采用的技术方案是:一种应用于AES算法的字节替换方法,将AES算法内部数据路径输入数据的每个字节均表示为有限域GF(28)中的一个元素,使用扩展欧几里得算法计算有限域GF(28)中输入数据基于不可约多项式的乘法逆元,然后对得到的乘法逆元进行仿射运算,得到字节替换结果。上述方案中,将GF(28)中的乘法逆元用作字节替换的优势在于提供了高度的非线性,能够抵御截止到目前为止已知的最强分析攻击。而仿射运算又破坏了有限域的代数结构,可以进一步有效抵御针对有限域的乘法逆元的攻击。优选地,所述扩展欧几里得算法表示如下:gcd(r0,r)=s*r0+t*r其中‘*’为有限域乘法运算,‘+’为有限域中的加法运算;gcd(r0,r)表示r0和r两个正整数的最大公约数,其中r0表示不可约多项式,r表示有限域GF(28)中任一个的输入数据,s和t为满足上述欧几里得算法方程的唯一一对整数解,其中t为r基于r0的乘法逆元,s为r0基于r的乘法逆元;而不可约多项式默认设定为:m(x)=x8+x4+x3+x+1;对不可约多项式的系数采用9位二进制表示为9’b100011011,将9’b100011011换算为10进制表示为283;则有限域GF(28)中所有的输入数据与283的最大公约数为1,此时扩展欧几里得算法表示如下:s*r0+t*r=1;所述计算乘法逆元的具体过程如下:S1.设定两组数据s0、s1与t0、t1,当s=s0=1时,且t=t0=0时,s*r0+t*r=r0=283;当s=s1=0时,且t=t1=1时,s*r0+t*r=r;此时得到两组初始化数据:(s0,t0,r0)=(1,0,283)和(s1,t1,r)=(0,1,r);此时设定循环轮数为i且令i初始化为1;S2.判断第i次循环在有限域GF(28)中选取的输入数据ri是否等于1,如果ri=1则结束循环,与ri对应的ti为所求的乘法逆元,否则执行步骤S3;S3.令i=i+1;S4.将ri-2、ri-1最高位的位宽进行位差计算,其中ri-2、ri-1分别为第i-1次、第i-2次循环选取的输入数据,若ri-2的位宽小于ri-1的位宽,则输出使能信号value为低电平,然后执行步骤S6;若ri-2的位宽大于ri-1的位宽,则输出使能信号value为高电平,并且输出ri-2、ri-1的位差dif,并执行步骤S5;S5.执行以下操作:tmp=ri-1<<dif;ri-2=ri-2⊕tmp;]]>Quotient=Quotient⊕{9′b1<<dif本文档来自技高网
...

【技术保护点】
一种应用于AES算法的字节替换方法,其特征在于:将AES算法内部数据路径输入数据的每个字节均表示为有限域GF(28)中的一个元素,使用扩展欧几里得算法计算有限域GF(28)中输入数据基于不可约多项式的乘法逆元,然后对得到的乘法逆元进行仿射运算,得到字节替换结果。

【技术特征摘要】
1.一种应用于AES算法的字节替换方法,其特征在于:将AES算法内部数
据路径输入数据的每个字节均表示为有限域GF(28)中的一个元素,使用扩展欧几
里得算法计算有限域GF(28)中输入数据基于不可约多项式的乘法逆元,然后对得
到的乘法逆元进行仿射运算,得到字节替换结果。
2.根据权利要求1所述的应用于AES算法的字节替换方法,其特征在于:
所述扩展欧几里得算法表示如下:
gcd(r0,r)=s*r0+t*r
其中‘*’为有限域乘法运算,‘+’为有限域中的加法运算;gcd(r0,r)表示
r0和r两个正整数的最大公约数,其中r0表示不可约多项式,r表示有限域GF(28)
中任一个的输入数据,s和t为满足上述欧几里得算法方程的唯一一对整数解,
其中t为r基于r0的乘法逆元,s为r0基于r的乘法逆元;
而不可约多项式默认设定为:m(x)=x8+x4+x3+x+1;
对不可约多项式的系数采用9位二进制表示为9’b100011011,将
9’b100011011换算为10进制表示为283;则有限域GF(28)中所有的输入数据与
283的最大公约数为1,此时扩展欧几里得算法表示如下:
s*r0+t*r=1;
所述计算乘法逆元的具体过程...

【专利技术属性】
技术研发人员:徐永键陆许明谭洪舟张迪
申请(专利权)人:中山大学花都产业科技研究院
类型:发明
国别省市:广东;44

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

1