主页 > imtoken钱包下载安卓 > [关于区块链的那些事]1.3 哈希值

[关于区块链的那些事]1.3 哈希值

imtoken钱包下载安卓 2023-07-04 05:08:02

Hash是英文“Hash”的音译。谈到区块链,这是一个不可避免的词。那么什么是“散列”、“散列函数”和“散列算法”呢?有什么用?

1.哈希是一种算法。

哈希算法接收到一段明文后,会以不可逆的方式转化为一段长度较短、位数固定的哈希数据。具体来说——

散列函数,又称散列函数或散列函数。哈希函数是一个公共函数,可以将任意长度的消息 M 映射成一个长度更短且长度固定的值 H(M)。 H(M)被称为散列值、散列值、散列值Value或Message Digest。它是一种单向密码系统,即从明文到密文的不可逆映射,只有一个加密过程,没有解密过程。

其函数表达式为:h=H(m)

无论输入是什么数字格式或文件有多大,输出都是固定长度的位串。以比特币使用的Sh256算法为例,无论输入什么数据文件,输出都是256bit。

每一位是0或1,256bit是0或1的256位二进制数的字符串。如果用十六进制数表示,有多少位? 16 等于 2 的 4 次方交易所的哈希值是什么,所以每个十六进制数可以代表 4 位。那么,256位用16进制数表示,当然256除以4等于64位。

上图是从bit.com随机截取的一个hash值。如果你有兴趣计数,你会发现它是 64 位的。

2.哈希函数的特征。

哈希算法是一种单向加密机制,易于压缩、易于计算、单向、防冲突。简而言之,就是:

★加密过程是不可逆的,也就是说我们不能通过输出的哈希数据来反转原来的明文;

★输入明文与输出哈希数据一一对应。任何输入信息的变化都必然会导致最终输出的哈希数据发生变化。

3.SHA 系列

SHA 代表 Secure Hash Algorithm,一种安全的散列算法。该家族有五个成员,分别是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512。比特币常用的算法是SHA-256。

4.哈希算法的作用

我们以这个下载地址为例。您可以使用该软件生成下载文件的 SHA1 值。与上述值相比,如果文件被篡改或文件下载错误,计算的值会有所不同。

再举个例子,当你上传一部电影时,它通常会在几秒钟内上传完,因为服务器已经有了这部电影。但是数据库里有几十万的电影,不可能逐字节对比你上传的几十G的资源,所以一般都是先生成hash值,然后再去服务器上搜索和现有的对比那些。电影的哈希值。

也就是说,哈希值相当于为数据生成一个标签。而且由于哈希函数是不可逆的,即使有人看到“标签”,也不会知道标签代表什么。

因此交易所的哈希值是什么,哈希值的主要作用是“安全验证”,一是保证用户密码的安全,二是保证区块链上的信息不被篡改。

顺便说一句,哈希理论上是可以复制的,但是概率很低,而且有解决冲突的算法。

郑重声明:本文版权归原作者所有,转载文章仅出于传播更多信息之目的。如果作者信息标注有误,请尽快联系我们修改或删除,谢谢。