侧信道分析攻击的对抗措施
1. 引言
在密码学实现中,设备的泄漏(如功耗)与数据和操作之间的依赖关系可能会被攻击者利用来恢复密钥。为了应对侧信道分析(SCA)攻击,我们需要采取一些对抗措施,使被测设备(DUT)的泄漏与操作或中间值无关。本文将详细介绍两种对抗措施:隐藏和掩码/盲化。
2. 隐藏对抗措施
隐藏对抗措施的目标是消除泄漏对操作或数据的依赖。可以通过改变DUT的泄漏方式,使每个操作消耗相似(平衡泄漏)或随机(随机化泄漏)的能量。下面将介绍针对对称分组密码和RSA实现的两种平衡泄漏的对抗措施。
2.1 基于编码的对称分组密码对抗措施
该对抗措施基于对DUT随机泄漏的分析,旨在选择一个二进制代码,降低特定时间样本的信噪比(SNR),增加攻击难度。具体步骤如下:
1. 确定目标指令和目标中间值 :由于随机泄漏模型针对单个时间样本,我们需要先确定最脆弱的指令和最需要保护的中间值。以PRESENT的S盒输出为例,选择MOV指令,目标中间值的位长$m_v = 4$,操作表示为 MOV r0 a 。
2. 选择代码长度和汉明重量 :选择一个二进制代码来表示秘密中间值,代码长度$n_C$至少为$m_v + 1$,且代码字的汉明重量$w_H$应相同,以防止基于汉明重量泄漏模型的攻击。同时,需满足$\binom{n_C}{w_H} > 2^{m_v}$,确保有足够的代码字表示所有中间值。例如,选择$n_C = 8$,$w_H = 6$。
3. 实验设置和轨迹测量 :收
超级会员免费看
订阅专栏 解锁全文
18

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



