论文部分内容阅读
相关能量攻击与差分能量攻击是当前侧信道攻击中最易实施、最具实际威胁性的两种攻击方法,然而当前抗能量攻击手段大多针对差分能量攻击设计,对抗相关能量攻击则考虑较少。本文从分组密码算法实现安全性和设计安全性两个角度出发,对分组密码抗相关能量攻击能力评估方法进行了研究,并以此为基础,提出了一套较为系统的抗相关能量攻击设计方法,可为分组密码实现的抗攻击设计提供评估依据,也可在密码运算部件设计环节提供抗攻击理论指导。本文主要完成了如下工作:推导并证明了皮尔森相关系数在相关能量攻击中表现出的两个关键性质,并分别基于模拟功耗、实测功耗对两个关键性质进行了验证。关键性质一讨论了正确密钥所对应的相关系数的极限值问题,在此基础上提出了总体相关系数概念,说明了当前分组密码实现方式的抗攻击能力弱点;关键性质二讨论了猜测密钥间相关系数的关系,在此基础上提出了混乱系数矩阵概念,说明了不同密码运算部件对分组密码抗攻击能力的影响。以上两个关键性质的证明,为本文后续在实现方式和密码运算部件抗攻击设计奠定了基础。针对分组密码实现安全性,在总体相关系数的基础上,提出了度量功耗随机化程度的评估参数——随机化因子,对具有可证明安全性的功耗随机化设计方法进行了研究。通过分析随机化因子与样本量间的定量关系,总结提出了随机交错、取反交错两类功耗随机化时序结构,并对两者的抗攻击能力进行了推导证明与模拟验证;在详细分析两种时序结构对应电路优缺点的基础上,设计了基于随机交错的、基于随机交错与取反交错混合结构的两类典型防护电路;以AES-128算法为例,对两类典型电路的性能及抗攻击能力进行分析,结果表明,在达到预期防护效果的同时,两类防护电路能效分别达到296.369Kbps/um~2、303.691Kbps/um~2,稍高于未防护前的288.327Kbps/um~2,具有较好的可行性。针对分组密码设计安全性,结合具体攻击模型,在混乱系数矩阵的基础上,提出了度量S盒抗相关能量攻击能力的评估参数,并对抗相关能量攻击S盒的自动搜索生成进行了研究。首先兼顾抗相关能量攻击、抗线性密码分析、抗差分密码分析、无固定点等安全需求,提出了抗攻击S盒的生成准则;基于所提S盒生成准则,将S盒生成问题转化为三目标最小优化问题,结合NSGA-II多目标优化算法,对交叉、突变等关键步骤进行了重新设计,并提出了相应的拥挤度计算方法和固定点消除策略,实现了抗攻击S盒的自动搜索生成;将生成的部分S盒与AES算法S盒对比分析,结果表明,在保证传统密码学特性的同时,自动搜索生成的S盒具备较强的抗CPA攻击能力。