HASH:到底什么是哈希Hash?_ABLE

"但凡是了解过区块链的人,多多少少都会听说过这个概念,但是又对其很模糊,那么到底什么是Hash呢?"

Hash一般翻译为散列,还有音译为哈希,本文我们统称为哈希(哈希=散列),通过百度以及谷歌都没有直接找到Hash的定义,而是找到了一些相关的概念,哈希算法,哈希函数,哈希表等概念。

笔者所理解的哈希是指一个过程,这个过程就是把任意长度的输入,通过哈希算法,变换成固定长度的输出,所输出的称为哈希值。

这种变换是一种压缩映射,也即哈希值所占的空间一般来说远小于输入值的空间,不同的输入可能会哈希出相同的输出(概率很小)。

哈希算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。

如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。

要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。一般用于快速查找和加密算法 ---《数据结构与算法分析》

散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。

也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。

如果两个哈希值是不相同的(根据同一函数),那么这两个散列值的原始输入一定是不相同的。

如果两个哈希值相同,两个输入值很可能(极大概率)是相同的,但也可能不同,这种情况称为“哈希碰撞”

抗篡改能力:对于一个数据块,哪怕只改动其一个比特位,其hash值的改动也会非常大。

它是一种单向函数是“非对称”的,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

AVAXSCI:「科普」EOS到底是空气还是机遇_HTT

只要是进入币圈一段时间的同学们,应该都听过EOS(佳能相机发币了?)的大名。那么EOS到底是什么呢?今天驼哥带你了解一下? EOS是个底层公链项目,全称是“Enterprise Operatin.

[0:0ms0-3:843ms