Hash函数及其应用

本文介绍了Hash函数的基本性质,包括摘要性、安全性质和抗碰撞等,并探讨了随机预言机、校验和的概念。同时,文章还讨论了Hash在数据完整性验证、密码学中的应用,如Hash链、Hash树(Merkle树)及其优化,以及在应对攻击如二次预映射攻击中的角色。最后,文章提到了在以太坊、Libra等项目中使用的Sparse Merkle Tree(SMT)的应用和实现。
摘要由CSDN通过智能技术生成

学习笔记

性质

https://www.cnblogs.com/Hahahang/p/11815401.html

  • 基本性质

    • 摘要性
      • 输出很短的信息,定长输出
    • 计算容易
    • 适用于任意长度输入(可以将输入分组)
  • 安全性质

    • 抗原象
      • 单向函数:不可推导出原象
    • 抗第二原象
      • 对于更定一个原象,无法找到另一个原象使得两个hash值相同
    • 抗碰撞
      • 无法找到两个原象的hash值相同
  • MD5 一个hash函数,但被证明不抗碰撞

  • Sha3/sha256现在blockchain中通用的hash函数

随机语言机

随机预言机是一种散列函数,我们可以把它理解为完美的散列函数:要求结果随机且均匀分布

  • 一致性:对于相同的输入,其输出必然相同;
  • 可计算性:输出的计算可以在多项式时间内完成;
  • 均匀分布性:预言机的输出在取值空间内均匀分布,无碰撞。

在随机预言机模型中,假定敌手不会利用散列函数的弱点来攻击密码学方案。

校验和

弱化的hash函数,用于防止传输和存储中的异常错误,不能防止恶意攻击。
cyclic redundancy check (CRC) or Checks

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值