什么是区块链哈希算法?哈希算法介绍


什么是区块链哈希算法?哈希算法是一种只能加密不能解密的密码学算法。可以将任意长度的信息转换成一段固定长度的字符串。简言之,哈希算法是将任意长度的字符串映射为较短的固定长度的字符串。比特币则是使用SHA-256摘要算法对任意长度的输入给出的是256bit的输出。那么,加密货币中哈希算法的应用有哪些?

1、加密哈希函数

2、数据结构

3、挖矿

4、加密哈希函数:

一个加密哈希函数有如下特性:确定性 :无论在同一个哈希函数中解析多少次,输入同一个A总是能得到相同的输出h(A)。

高效运算 :计算哈希值的过程是高效的。

抗原像攻击(隐匿性) :对一个给定的输出结果h(A),想要逆推出输入A,在计算上是不可行的。抗碰撞性(抗弱碰撞性) :对任何给定的A和B,找到满足B≠A且h(A)=h(B)的B,在计算上是不可行的。

细微变化影响 :任何输入端的细微变化都会对哈希函数的输出结果产生剧烈影响。

谜题友好性 :对任意给定的Hash码Y和输入值x而言,找到一个满足h(k|x)=Y的k值在计算上是不可行的。加密哈希函数对区块链的安全性和挖矿有巨大的帮助。

数据结构:有两种数据结构对于理解区块链非常重要:链表和哈希指针。

链表:链表是依次按顺序连接而成的数据区块,如下图所示:

在链表中的每个区块都通过一个指针指向另一个区块。

指针:指针是包含其他变量地址的变量。因此,正如其名,指针就是指向其他变量的变量。

火币网交易所什么时候成立的

哈希指针:哈希指针不仅有其他变量的地址,还有该变量中数据的哈希值。那么,这对区块链而言有何帮助呢?

区块链的构成如下图所示:

区块链本质上是一个链表,其中的每个新区块都包含一个哈希指针。指针指向前一区块及其含有的所有数据的哈希值。借此特性,区块链拥有了不可更改性(immutability)的伟大特质。哈希算法保证了比特币挖矿不能逆向推导出结果,所以矿工持续不断地进行运算。本质上是在暴力破解正确的输入值,谁最先找到谁就能获得比特币奖励。



返回列表页>>> 比特币