区块链基础知识——哈希函数

概述

哈希函数是一种数学函数,可根据输入的内容输出其对应的哈希值。散列函数的输入具有任意长度,但输出始终具有固定的长度。

 哈希算法的设计

散列算法的核心是一个数学函数,该散列函数构成散列算法的一部分,根据输入的数据块进行运算,得到的结果作为散列值。散列算法涉及多轮散列函数,每一轮都会接受一个固定大小的输入。这个过程会重复尽可能多的轮次来散列整个消息。

第一个消息块的哈希值会成为第二个哈希算法的输入,其输出改变了第三个运算的结果,依此类推。这种效应称为散列的雪崩效应。雪崩效应会导致两条数据的散列值大不相同。即使是一个数据位的变化,也会造成很大的差异。

 散列函数的应用场景

1.数字签名:

     数字签名用于验证数字消息或文档真实性,并保证信息的内容没有没有被第三方人员进行篡改。在满足先决条件的情况下,信息的收件人能通过数字签名确认信息的发放方的身份,保证信息真实由对应的发件方进行发送(真实性),通信信息的内容是生成数字签名的结果重要因素,一旦内容发生改变,数字签名会发生很大的变化,可以验证信息的内容是否发生了变化(完整性)。

数字签名采用用户的私钥加密,公钥进行解密,用户使用自己的密钥通过签名算法生成数字签名,公钥的验签过程是通过验证算法来验证数字签名签署的身份。

 2.数据完整性

根据哈希函数的单向以及碰撞避免的特点,能够在不暴露文件内容的条件下生成输入文件的映射,选择一个好的哈希算法,我们能够完全相信哈希函数生成摘要的准确性。如果发送前后文件的哈希值不同,就可以说明文件被进行了篡改操作。

——————————————————————————————————————————

更新记录

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值