论文部分内容阅读
以智能卡芯片为主导用于确保信用卡和借记卡支付交易的密码设备,在我国与民生相关的领域占有着重要地位。为了防止欺诈交易,IC卡必须对验证交易的密钥采取保护。特别是,IC卡应该能够防御包括功耗和故障等其他物理手段的攻击,对芯片的安全性提出了更加严格的要求。所以在设计IC卡时需考虑加密算法的设计,传统分组密码并不适用这种对功耗和面积有着严格要求的环境。因此研究轻量级密码算法防护物理攻击的技术,能够对信息安全的保护和减少国家领域机密信息芯片的威胁有着重要意义。在针对算法级物理攻击方面,为评估未加防护密码算法的安全性,首先研究Piccolo轻量级密码算法,并通过Verilog进行RTL级设计描述。而后研究相关系数功耗攻击的理论基础,构建攻击模型,结果表明250条功耗曲线即可攻击出部分关键轮密钥。最后利用原有的差分故障模型基础,设计出一种采用多层次攻击技术手段的改进型差分故障攻击方案,能够将Piccolo算法80 bit的密钥空间缩小至219。证实功耗攻击模型与差分故障攻击模型的实用性,验证物理攻击对Piccolo轻量级密码算法存在严重的威胁性,说明改进防护攻击算法的必要性。在针对算法级防护物理攻击方面,通过分析不同攻击手段及其防护技术,采用Threshold秘密分享掩码技术对Piccolo算法进行改进,能够抵御一阶相关系数功耗攻击。采用基于冗余原理的电路故障检测技术,实现算法防护差分故障攻击的能力。通过对两种防护技术的改进优化,研究Threshold秘密分享改进电路故障检测方案,达到优化算法防护物理攻击的目的。设计一种抗物理攻击型的Piccolo轻量级密码算法芯片,通过Verilog进行RTL级硬件描述,完成芯片设计的一般流程。同时,通过使用PrimeTime、MATLAB和ISE等工具,实现对算法的功耗攻击安全性评估和抗故障攻击能力的验证。实验表明本文提出的算法能够防护功耗攻击,同时能够检测电路中任何时刻出现的线型和寄存器两种故障注入,停止加密并输出无效密文,证明算法具有防护差分故障攻击的能力。从多角度验证设计的算法在防护物理攻击方面具有一定的优势。