面向字节的分组密码中相关密钥差分特征的自动搜索
1. 引言
现代分组密码在抵御差分和线性密码分析方面的安全性证明,已成为一个相对简单且被广泛理解的任务。许多现代密码采用替换 - 置换网络(SPN)结构,由非线性替换盒(S - 盒)层和线性或仿射函数构成的扩散层组成。设计者只需使用具有高(或最大)分支数的扩散层,通常通过最大距离可分矩阵来实现,就能证明在一定内部轮数下活动 S - 盒数量的下限。然后选择合适的轮数,使最佳差分或线性特征的概率低于 (2^{-k})((k) 为密码的密钥长度),从而使密码在标准差分和线性攻击下具有可证明的安全性。
然而,上述推理仅适用于单密钥模型,无法扩展到相关密钥攻击的情况。在相关密钥攻击中,攻击者知道或选择多个密钥之间的关系,并可使用这些密钥的加密/解密函数,目标是找到实际密钥。密钥之间的关系由攻击者精心选择,通常是与选定常数的异或操作。目前,大多数现代分组密码在相关密钥攻击下的安全性仍依赖于启发式和临时的论证,这与现代哈希函数的启发式安全性类似,主要是由于缺乏分析非双射函数差分的合适工具和方法。
为了朝着现代分组密码(以及哈希函数)的可证明安全性迈出一步,本文提出了一种高效的工具,用于评估和证明分组密码(哈希函数)在差分相关密钥(公开密钥或选择消息)攻击下的安全边界。
在单密钥场景下,自动搜索最佳差分特征和线性近似的工作最早由 Matsui 针对 DES 进行。此后,也有针对 MD4、MD5 和 SHA - 1 等的相关算法。但构建自动搜索特征的工具时,搜索空间的大小是一个典型问题,对于 128 位块和 128 - 256 位密钥的密码,直接搜索方法不可行。因此,减少内部状态的大小是构建高效工具的关键任务。
超级会员免费看
订阅专栏 解锁全文

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



