首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从零到一学懂区块链(6):哈希函数

从零到一学懂区块链:哈希函数

每天学一点区块链,每天get新知识。这个系列以概念普及、名词解释为主,帮助小白迅速入门,同时也是自己的学习笔记。可能做不到日更,但一定持续输出。

01

什么是哈希函数

哈希函数可以将任意长度的消息压缩成固定长度的二进制,其输出值称为哈希值,也叫做散列值。哈希函数是一种单向函数,对于给定的M,很容易推算出X=F(M),但根据X很难算出M。哈希函数的结果长度都是固定的,如SHA256算法长度为64个字符。比特币采用哈希函数中的SHA256算法和RIPEMD160算法(Secure Hash Algorithm)是输出值为256位的哈希算法,一般讨论的比较多。

02

哈希函数能做什么

由私钥经过单向椭圆曲线函数的运算可以得到公钥,公钥经过SHA256和RIPEMD160双哈希运算可以得到地址。对每个区块头进行哈希运算,可以生成一个哈希值,通过这个哈希值,可以识别出对应的区块,区块哈希值可以唯一明确地标识一个区块,可以说区块和哈希是一一对应的。我们知道区块由区块头和区块体组成。区块头包含当前版本号、前一区块地址、时间戳、随机数、当前区块的目标哈希值、Merkle树根值信息。区块体重包含交易计数和交易详情,也就是说每个区块都包含着前一区块(父区块)的哈希值,从而顺次连接成一条区块链。

未来已来,

只是尚未流行。

区块链

03

哈希函数的意义

哈希函数的单向性确保了它在密码学界安全性第一的不可动摇地位,哈希函数的结果无法提取得知,没法优化,也就意味着,得到哈希值的唯一方法是不断尝试,直到出现合适的哈希值,那么谁的算力大,谁就是老大。

总结一下:

1、哈希函数就是一种单向的数学函数,在密码学中起着重要的作用。

2、哈希函数可以由公钥生成地址。

下一节内容:每天学一点区块链——交易

可乐

我是可乐,在学习区块链的道路上前行

记录每天学到的一点知识

一起学习,共同成长

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180710G1V3AP00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券