学习笔记
性质
https://www.cnblogs.com/Hahahang/p/11815401.html
-
基本性质
- 摘要性
- 输出很短的信息,定长输出
- 计算容易
- 适用于任意长度输入(可以将输入分组)
- 摘要性
-
安全性质
- 抗原象
- 单向函数:不可推导出原象
- 抗第二原象
- 对于更定一个原象,无法找到另一个原象使得两个hash值相同
- 抗碰撞
- 无法找到两个原象的hash值相同
- 抗原象
-
MD5 一个hash函数,但被证明不抗碰撞
-
Sha3/sha256现在blockchain中通用的hash函数
随机语言机
随机预言机是一种散列函数,我们可以把它理解为完美的散列函数:要求结果随机且均匀分布
- 一致性:对于相同的输入,其输出必然相同;
- 可计算性:输出的计算可以在多项式时间内完成;
- 均匀分布性:预言机的输出在取值空间内均匀分布,无碰撞。
在随机预言机模型中,假定敌手不会利用散列函数的弱点来攻击密码学方案。
校验和
弱化的hash函数,用于防止传输和存储中的异常错误,不能防止恶意攻击。
cyclic redundancy check (CRC) or Checks