《图解密码技术》第七章
- 原像攻击:pre-image attack,第二原像攻击:second pre-image attack
- 生日攻击:birthday attack,也叫冲突攻击 collision attack,生日悖论:birthday paradox
keccak:结构清晰,易于分析。
- 易于分析是一个十分优秀的特性,能够比较容易地对实际运用的标准版算法的强度进行评估
应该使用哪种单向散列函数
和对称密码一样,我们不应该使用任何的自制算法.可以使用SHA-2和SHA-3
对单向散列函数的攻击
暴力破解
文档文件的冗余性:在不改变文档意思的前提下,对文件内容进行修改
任何文件都有一定的冗余性,利用文件的冗余性生成具有相同散列值的另一个文件,这就是针对单向散列函数的攻击。即相当于试图破解单向散列函数的“弱抗碰撞性”的攻击
暴力破解:每次改变一下消息的值,求散列值
找出具有特定散列值的消息的攻击分为两种:原像攻击和第二原像攻击
- 原像攻击:给定一个散列值,找出具有该散列值的任意消息
- 第二原像攻击:给定一条消息1,找出消息2,消息2的散列值和消息1相同
生日攻击
生日攻击:要找到散列值相同的两条消息,而散列值可以是任意值
- 是一种试图破解单向散列函数的“强抗碰撞性”的攻击
- 原理:生日悖论:任意生日相同的概率比我们想象的要大
单向散列函数无法解决的问题
单向散列函数能够辨别出篡改,却无法辨别伪装。
用于认证的技术包括:消息认证码和数字签名
- 消息认证码:向通信对象保证消息没有被篡改
- 数字签名:向通信对象保证消息没有被篡改,且向所有第三方做出这样的保证