白话区块链-哈希函数

in #blockchain6 years ago

一听哈希,一听函数,蒙圈了

什么是函数,函数就是一个黑箱子,你给这个黑箱子一些输入,这个黑箱子会给你吐出一些输出

什么是哈希,哈希就是杂凑,或者叫摘要, 就是对原有信息加工后,为原信息进行代言的新的信息,通常这个新的信息比原来的信息更容易被识别

什么是哈希函数,哈希函数就是一个能得到摘要信息的黑箱子, 你给这个黑箱子丢进去任意的输入,这个箱子给你吐出来固定长度的输出,然后你就可以用这个输出来代表那个输入。

这个黑箱子需要保证不同的输入,能够产出不同的输出,如果不同的输入吐出了相同的输出,完了,就发生碰撞了!

上面说的这种黑箱子,有好多种类型,不同类型的黑箱子,里面的机关不同,有些类型的黑箱子就比较容易发生碰撞,有些类型的黑箱子发生碰撞的几率是微乎其微,我们为了区别这么多不同类型的黑箱子,分别给这些黑箱子去个名字,比如MD5,SHA1 , SHA256等等, 其中比特币采用的就是SHA256哈希函数,这种黑箱子是无论输入有多长,输出的长度是固定的多时256位, 这个256指的是二进制的256位,对应字符是64个字符,所以大家看到比特币交易的长度都是64位,底下就是一个具体交易哈希值的例子
430fb9ac290288d8ad4fa040b2fa7a82a47b8eda355b28b4a8b3fe841bf10d10

每个黑箱子里面的机关设置不同,具体机关的细节涉及到一些算法,比较复杂, 感兴趣的可以再深入学习

Sort:  

Cool, thanks for sharing.