区块链:1、基础技术
一、哈希运算(Hash Algorithm)
1、概念
哈希运算即散列算法。其功能就是可以将任意长度输入通过一定计算生成一个固定长度的字符串,输出的这个字符串即输入的哈希值。
2、特性
(1)正向快速
正向即由输入计算输出的过程,对给定的数据可以快速的得到哈希值
(2)输入敏感
只要输入信息发生任何变化(即使是一个字符改变),都会造成哈希值翻天覆地的变化,并且完全无法比对。
(3)逆向困难
这一点是哈希算法安全性的基础,要求无法短时间内根据哈希值计算出原始信息。
(4)强抗碰撞性
不同输入很难可以产生相同哈希输出。(但是实际上由于输出位数有限,所以实际上有产生碰撞的情况,但是由于代价过大使得破解没有意义,付出远大于收益而可以检验了一个哈希算法的优秀性)
以上特性保证了区块链的不可篡改性。