论文部分内容阅读
信息安全的核心是密码技术,其数学分析代价通常能够决定密码算法的安全性。然而当密码技术应用在实际领域中时,通常使用密码芯片来实现密码算法,所以密码系统的安全性不仅仅与密码算法本身相关,还会涉及到密码芯片的硬件电路设计和算法的程序实现等。旁路攻击是信息安全领域的重要分支,它能够结合密码算法的实现特征和算法在电路执行所泄露的旁路信息来实施攻击。在旁路攻击中,功耗分析攻击威胁性最大而且容易实施,得到研究者的广泛关注。功耗分析能够基于统计学原理建立真实功耗与假设密钥的之间联系,从而显著缩小密钥的搜索空间,能够在相当短的时间内恢复出密钥信息。 本文将基于功耗分析原理对3G标准中的MILENAGE认证算法和HMAC相关的SM3算法等若干实际密码系统进行了研究,提出相应的分析方法并进行了实验验证。其中3G是覆盖全球范围的网络通信系统,它的安全性是网络能够正常服务、运转和管理的基础,同时也会关系到用户和运营商的数据隐私和信息安全。最终3G标准没有延续使用2G中的COMP128-1算法,而是选择了MILENAGE双向认证算法,该算法同时运行在USIM侧和网络侧,利用挑战/响应机制和内置运营商参数的方式大幅度提高了通信过程的安全性;另一方面,国家密码管理局于2010年发布了SM3密码哈希算法,在商用密码领域有着较为广泛的应用。SM3算法可以作为HMAC的哈希函数,用于计算消息认证码,从而可以验证通信双方传输消息的完整性。 研究现状表明,尚无研究机构对MILENAGE认证算法提出相应的功耗分析方法;在HMAC方面,国外研究者针对HMAC-SHA2成功实施了旁路攻击,但是对国密SM3算法的功耗分析研究还处于空白阶段。本文的研究旨在填补以上若干密码系统在功耗分析领域的研究空缺,能够达到及时发现漏洞并研究防护对策的目的,从而增加产品的安全性,具有重要的应用价值。其中对若干3G USIM卡的功耗分析实验表明,攻击者可以在30分钟左右的时间内成功恢复卡片内部的所有秘密信息;对HMAC-SM3软件实现的智能卡功耗分析研究中,可以成功恢复算法运行过程中的中间结果,达到伪造任意消息认证码的目的。可以看出,上述若干实际密码系统在缺少防护的状态下是不安全的,可以轻易的被攻击者利用功耗分析手段攻破。