哈希算法——理解区块链的关键一环

民间常言:“说唱有嘻哈,算法有哈希。”在了解比特币投资和区块链技术中,哈希算法作为“常客”时常出现。但大多数朋友对它知之甚少,为它晦涩难懂的内涵所头疼。那么今天我们就来简单说说,什么是“哈希算法”?
 
哈希音译自“Hash”,又名为“散列”。本质上是一种计算机程序,可接收任意长度的信心输入,然后通过哈希算法,创建小的数字“指纹”的方式。例如数字与字母的结合,输出的就为“哈希值”。从数学术语上说,就是这个哈希函数,是将任意长度的数据,映射在有限长度的域上。总体而言,哈希函数用于,将消息或数据压缩,生成数据摘要,最终使数据量变小,并拥有固定格式。
 
那么哈希算法的作用又是什么呢?
(1) 在庞大的数据库中,由于哈希值更为短小,被找到更为容易,因此,哈希使数据的存储与查询速度更快。
(2) 哈希能对信息进行加密处理,使得数据传播更为安全。
 
哈希算法解决了什么生活问题?
看似深奥的数学函数,又或是计算机程序的哈希算法,其实跟我们的生活息息相关。就拿每年双十一的快递来说,实际上,哈希算法原理提高了快递入库出库的速度。为什么呢?
 
双十一一过,大家剁手后,一定收快递收到手软,手机短信抖个不停。这个时间段,双十一快递员可能没时间挨家挨户送上门,而是选择往驿站一扔。当驿站将快递入库后,你的手机会收到这样一条信息——

【XX收快】您的XX快递已到(原菜鸟驿站)65号店取货吗A10-8-9856,请9点至21点取货,电话xxx-xxxxxxxx)

哈希算法——理解区块链的关键一环

大家重点看看这个取货码:A10-8-9856。这可不是一堆乱码。这串数值,就是驿站员能快速找到你快递的关键。
 
A10指的是货架编码,8指的是第8层,9856指的是订单后四位。因此每个驿站小哥只需要瞄一眼,就能瞬间知道你的快递所在位了。
 
因此,哈希算法最核心的用处,就是高速存取。在区块链技术中,它才真正大展身手。以下是它在区块中的具体作用:
(1) 快速验证。只需要验证摘要,就能比较两个数据是否相等。
(2) 防止篡改。只需要传递数据的摘要即可传递该数据,并防止在传递过程中被篡改。
(3) 用于POW共识算法工作量证明。目前比特币和以太坊,都使用POW共识机制。
 
哈希算法有千千万万种,其中,“安全哈希算法”(SHA 256)是保护数字信息,最安全的方式之一。它是由美国国安局设计、美国国家标准与技术研究院发布的一套哈希算法。其摘要长度是256bits,因此被称为“SHA256”。它们都在网络数据和区块链技术应用中,有着重大作用,也是理解区块链的重要一环。