是什么决定了比特币的不可篡改性?由哈希算法决定

区小通

18-10-1218:05

今天分享一下哈希算法,一个决定比特币具备不可篡改特点的函数。

什么是哈希算法

1、定义

哈希算法是将任意长度的输入,通过散列算法,变换为固定长度的输出。

2、特点

正向快速:给定明文和 hash 算法,在有限时间和有限资源内能计算出 hash 值。

逆向困难:给定(若干) hash 值,在有限时间内很难(基本不可能)逆推出明文。

输入敏感:原始输入信息修改一点信息,产生的 hash 值看起来应该都有很大不同。

冲突避免:很难找到两段内容不同的明文,使得它们的 hash 值一致(发生冲突)。

即对于任意两个不同的数据块,其hash值相同的可能性极小;对于一个给定的数据块,找到和它hash值相同的数据块极为困难。这也就能说明了比特币很难篡改。

哈希算法有哪些

目前流行的 Hash 算法包括 MD5、SHA-1 和 SHA-2。

Coinsmart汇总了比特币系统中采用的算法,具体见下:

哈希运算基本都是使用的SHA256算法;

莱特币是使用SCRYPT算法;

夸克币(Quark)和达世币(DASH)是把很多算法一层层串联上使用;

Heavycoin(HAV)却又是把一下算法并联起来,各取部分混起来使用;

以太坊的POW阶段使用ETHASH算法,ZCASH使用EQUIHASH。

返回顶部