哈希算法及在区块链中的应用

本文是学习区块链技术中关于密码学哈希算法这一部分的相关知识点学习总结整理。


哈希算法

哈希函数(散列函数)定义

公式表示形式:
h = H ( m ) h=H(m) h=H(m)
函数说明:
m m m:任意长度消息(不同算法实现,长度限制不同,有的哈希函数(SHA-3)不限制消息长度,有的限制(SHA-2),但即使有限制其长度也非常大,可以认为是任意长度消息)
H H H:哈希函数
h h h:固定长度的哈希值

典型的散列函数都有非常大的定义域,比如SHA-2最高接受( 2 64 − 1 ) / 8 2^{64}-1)/8 2641)/8长度的字节字符串。同時散列函數一定有着有限的值域,比如固定长度的比特串(例如:256,512)。在某些情况下,散列函数可以设计成具有相同大小的定义域和值域间的單射。

相关概念
  • 哈希函数定义——密码哈希函数是一类数学函数,可以在有限合理的时间内,将任意长度的消息压缩为固定长度的二进制串,其输出值称为哈希值,也称散列值。
  • 碰撞定义——是指两个不同的消息在同一哈希函数作用下,具有相同的哈希值。
  • 哈希函数的安全性——是指在现有的计算资源(包括时间、空间、资金等)下,找到一个碰撞是不可行的。
  • 抗弱碰撞性——对于给定的消息 M 1 M_1 M1,要发现另一个消息 M 2 M_2 M2,满足 H ( M 1 ) = H ( M 2 ) H(M_1)=H(M_2) H(M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值