仿射掩码对抗高阶侧信道分析
1. 引言
侧信道分析(SCA)是一种密码分析技术,它通过分析物理设备执行加密算法时产生的侧信道泄漏(如功耗、电磁辐射)来获取信息。SCA 利用了泄漏与处理的中间变量之间的统计相关性,一些中间变量与秘密数据相关,恢复这些变量的信息可以实现高效的密钥恢复攻击。
为了保护分组密码的实现免受 SCA 攻击,常用的对策是使用掩码技术对敏感变量进行随机化。掩码技术的原理是在计算过程中,为每个敏感变量添加一个或多个随机值(掩码),使得中间变量与敏感变量相互独立,从而使瞬时泄漏与敏感变量无关,增加 SCA 攻击的难度。
掩码可以根据每个敏感变量使用的随机掩码数量来分类,使用 d 个随机掩码的掩码称为 d 阶掩码。理论上,d 阶掩码可以被 (d + 1) 阶 SCA 攻击破解,但实际中,随着 d 的增加,执行 d 阶 SCA 攻击的难度呈指数级增长。因此,d 阶 SCA 抗性是分组密码实现的一个重要安全标准。
目前,大多数文献中提出的掩码方案基于布尔掩码,即通过异或(XOR)操作引入掩码。布尔掩码能有效保护实现免受一阶 SCA 攻击,但由于电子设备的固有物理特性,它对高阶 SCA 攻击特别脆弱。
冯·维利希(Von Willich)提出仿射掩码可以提高 SCA 抗性,但未考虑实现问题,也未说明如何将其应用于常见的分组密码,如 AES 或 DES。此外,他在向量空间 GF(2)^n 上定义仿射掩码,这在软件实现中成本较高。为了解决这个问题,可以在域 GF(2^n) 上定义操作,加法操作保持不变,域乘法是矩阵乘法的一种特殊情况。
本文提出了一种将仿射掩码应用于 AES 的实用方法,通过对每个 8 位中间结果 z
超级会员免费看
订阅专栏 解锁全文
15

被折叠的 条评论
为什么被折叠?



