CRYSTALS - Kyber侧信道对抗措施深度分析
在后量子密码学(PQC)的发展中,确保算法实现对侧信道分析具有抗性至关重要,这能使PQC方案成为当前使用的非对称加密方案的合适替代候选者。本文聚焦于CRYSTALS - Kyber消息编码步骤的各种对抗措施,并在ARM Cortex - M4上进行了侧信道分析。
1. 字节和位级随机排序
为了减少侧信道泄漏,引入了字节和位级的随机排序。以下是相关代码:
// 初始化
uint32_t rand = (0xaaaa00aa ^ msg[0]);
uint8_t i_m = rand & 0x1f;
uint8_t j_m = (rand >> 5) & 0xff;
uint32_t b_inv = (rand >> 7) & 0xff;
// 打乱查找
uint8_t i_r, j_r;
for(i = 0; i < KYBER_N / 8; i++){
i_r = i ^ i_m;
for(j = 0; j < 8; j++){
j_r = j ^ j_m;
p_r[((xorMasks[(j_r & 1)] ^ msg[i_r]) >> j_r) & 0xff]->coeffs[8 * i_r + j_r] = 0;
}
}
通过将打乱变量 i_m 和 j_m 分别与循环计数器 i 和
超级会员免费看
订阅专栏 解锁全文
423

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



