压缩函数的构建与分析
1. 代换 - 置换网络与AES
代换 - 置换网络是一种重要的密码学结构。它对16位消息进行处理,包含八个4位S盒和一个混合函数。其密钥调度过程会从主密钥生成多个轮密钥,例如从主密钥 k 生成 k1 、 k2 和 k3 三个轮密钥,通常在每一轮开始时将轮密钥与当前中间结果进行异或操作。
在实际应用中,基于代换 - 置换网络最著名的分组密码是Rijndael,也就是高级加密标准(AES)。AES处理128位的消息块,有128位、192位或256位密钥三种形式,分别对应10轮、12轮或14轮加密。值得注意的是,AES仅使用一个8位S盒,并将其应用于中间状态值的16个字节。目前,在正确实现的情况下,尚未发现针对AES的实际攻击方法。
2. 理想密码模型
在构建基于分组密码的压缩函数时,我们需要考虑如何分析这些构造的安全性。传统的属性保留概念在基于分组密码的压缩函数中并不适用,因为分组密码和压缩函数是不同的原语。分组密码对于每个密钥是一个置换,本身就是抗碰撞的,所以不能以分组密码的抗碰撞性来衡量压缩函数的安全性。
我们可能会考虑分组密码是(强)伪随机置换这一属性,但研究表明,单向函数和单向置换很可能不足以构建抗碰撞的压缩函数。这是因为哈希函数(或压缩函数)的密钥是公开的,而伪随机函数的安全性基于密钥的保密性,两者的安全游戏差异较大。
为了解决这个难题,密码学家引入了理想密码模型。理想密码模型类似于随机预言机模型,在该模型中,理想密码为每个可能的密钥分配一个随机选择的置换。在实际操作中
超级会员免费看
订阅专栏 解锁全文

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



