论文部分内容阅读
随着信息技术的飞速发展,信息安全已经成为当今社会越来越关注的问题。密码算法是确保信息安全的核心技术,而密码算法自身的安全性一直以来都是国内外研究学者关注的热点问题。长期以来,许多专家学者致力于从数学角度寻找密码算法的缺陷,进而获得破解途径,这需要积累大量的数学知识,并且通常需要花费很长的时间。随着密码算法在现实生活中的不断应用,人们发现密码设备在运行的过程中会泄露很多信息,如执行时间、功耗、电磁辐射等。利用这些数据,再运用数学知识加以分析,可以比较容易的获得密钥信息,这种攻击方法就是旁路攻击。功耗分析攻击是旁路攻击中应用最为广泛的方法,它是根据设备操作与消耗的功耗之间的相关性推测密钥信息,因其费用低廉、密钥搜索空间小等优点,已成为加密系统最具威胁性的攻击方法。公钥密码系统是现代密码学中非常重要的分支系统。其中,RSA算法是公钥密码系统中得到认可的一个非对称的加密算法,它不仅可以用来加解密、数字签名,而且在安全认证方面起到了核心作用,已经应用在各种产品和平台之上。因此研究RSA密码算法的抗功耗分析攻击能力,对于我国的经济安全具有十分重要的意义。本文以实验室所做的常用RSA密码执行算法及基于传输触发体系架构的RSA-RNS密码算法的ASIC实现为例,针对简单功耗分析攻击(SPA)和差分功耗分析攻击(DPA),开展了大量的研究工作。不仅对基于余数系统的RSA算法进行了详细研究,分析了其硬件实现的关键特点,而且对功耗分析攻击的基础理论和具体实现方法进行了多方面的学习,实现了功耗分析攻击的仿真平台的设计。本文的主要工作和创新点如下:1)利用EDA(Electronic Design Automation)工具设计功耗分析平台的软件流程并将其实现为密码算法硬件设计的安全检测平台,其中功耗分析攻击部分是此平台重点,包括功耗采集和功耗分析两部分内容。2)用C语言实现功耗分析攻击的多种算法:SEMD、MESD、ZEMD、CPA,并将其称为功耗分析算法库,作为密码算法硬件设计的安全检测平台中非常重要的一部分。3)对RSA密码执行算法和基于传输触发体系架构的RSA-RNS算法的ASIC实现进行功耗分析攻击研究,研究他们的抗功耗分析攻击的能力。