你好,欢迎来到! 设为首页 收藏本站
联系电话
论文范文 当前位置: > 写作指南 > 论文范文 >

基于安全芯片的AES算法掩码方案研究

时间:2013-08-27 14:26来源:核心期刊网 作者:张晓 点击:
任何防御对策的目标都是使密码设备的能量消耗不依赖于设备所执行的密码算法的中间值,掩码技术通过随机化密码设备所处理的中间值来实现这个目标。这种方法的一个优点是它可以在算法级实现,并且无需改变密码设备的能量消耗特性。也就是说,即使设备的能量消耗
  1掩码技术
  在掩码方案中,密码算法的基本每个中间值都会被一个称为“掩码”的随机数进行变换,即vm=v*m。掩码一般由密码设备内部产生,并且在每一次执行中各不相同。运算*通常根据密码算法所使用的操作进行定义。运算*多为异或运算、模加运算或模乘运算。在模加运算和模乘操作中,模数根据密码算法选择。
  通常,掩码直接应用于明文或密钥。为了能够处理掩码型中间值以及对掩码进行跟踪,需要对算法实现进行修改。加密的结果也是被掩码处理过的。因此,为了获得密文,还需要在计算结束时消除掩码,还原真实密文。
  2布尔掩码和算术掩码
  在布尔掩码中,密码运算中间值与掩码进行异或运算,即vm=v⊕m。在算术掩码中,密码运算中间值与掩码进行加法或是乘法算术运算。通常采用模加或模乘运算,即vm=v+m(modn)或vm=v×m(modn),其中,模数n的选取取决于密码算法。
  密码算法使用线性和非线性函数。由于线性函数满足如下性质:f(x⊕y)=f(x)⊕f(y)。因此,在布尔掩码中,线性运算会以一种易于计算的方式改变掩码m,这也就说明很容易对线性运算采用布尔掩码。而对于非线性运算,S(x⊕y)≠S(x)⊕S(y),例如,AES运算的S盒就是一种非线性运算。在这种情况下,对S盒采用布尔掩码就不合适,然而,S盒的计算基于有限域元素的乘法逆,即f(x)=x-1。S盒适用于采用乘法掩码,因为f(x×y)=(x×y)-1=f(x)×f(y)。但是,乘法掩码对中间值0无效。
  3安全性证明
  SPA/DPA攻击的工作原理是密码设备的瞬时能量消耗依赖于设备所处理的中间值。掩码方案试图通过对中间值进行掩码来破坏这种依赖关系。如果中间值v被掩码,与之对应的掩码型中间值vm=v*m便与v无依赖关系。如果vm与v无依赖关系,则vm对应的能量消耗与v也无依赖关系。
  4AES算法
  AES是一种对称的分组迭代加解密算法,其明文分组长度固定为128bit,密钥分组长度可为128bit,192bit和256bit,与DES的Feistel结构不同,AES轮运算具有替代-置换(S-P)结构,分别由密钥扩展、轮密钥异或(AddRoundKey)、字节替换(SubBytes)、行移位变换(ShiftRows)和列混合变换(MixColumns)构成。在通常的嵌入式应用中,密钥分组一般选择128b,对应的轮运算次数为11轮。明文输入为以字节为单位的4×4矩阵,即状态矩阵,所有的轮运算都在该矩阵上进行。首轮运算由初始密钥与状态矩阵经过简单的异或完成,中间9轮运算依次由对应的字节替换、行移位变换、列混合变换和轮密钥异或构成,最后l轮稍有不同,没有列混合变换。11轮运算除状态矩阵由寄存器缓存数据外,其余操作均为组合逻辑设计,1个时钟周期完成1次轮运算,11个时钟周期后得到密文输出。字节替换是AES运算中唯一的非线性操作,字节替换实现的面积、功耗在很大程度上决定了整个AES电路实现的代价和性能。


  核心期刊网(www.hexinqk.com)秉承“诚以为基,信以为本”的宗旨,为广大学者老师提供投稿辅导、写作指导、核心期刊推荐等服务。
  核心期刊网专业期刊发表机构,为学术研究工作者解决北大核心CSSCI核心统计源核心EI核心等投稿辅导咨询与写作指导的问题。

  投稿辅导咨询电话:18915033935
  投稿辅导客服QQ: 论文投稿1002080872 论文投稿1003158336
  投稿辅导投稿邮箱:1003158336@qq.com
------分隔线----------------------------
栏目列表  
推荐论文  
热点论文  
 
QQ在线咨询
投稿辅导热线:
189-1503-3935
微信号咨询:
18915033935
网站简介 核刊总览 普刊专栏 期刊验证 学术答疑 服务流程 写作指南 支付方式 信用说明 联系我们
CopyRight © 2013 All Rights Reserved.
免责声明:本站提供投稿辅导 论文投稿 投稿辅导 核心期刊检索 核心投稿辅导等服务,本站刊载文章仅代表作者观点
并不意味着本站认同,部分作品系转载,版权归原作者或相应的机构;若某篇作品侵犯您的权利,请来信告知:1003158336@qq.com