“区块链”是近两年诞生于计算机科学领域的新概念。哈希函数是区块链技术不可或缺的一部分,可用于多种用途。它是一种数学函数,它接受任何给定长度的输入并产生固定长度的输出。输出通常称为哈希值,(哈希)摘要或哈希。
有很多哈希函数,就像多个在线的“计算器”。 计算器允许您同时使用不同种类的算法对您喜欢的任何输入进行哈希运算。 输入的大小可以从单个数字到整个文件,但输出的大小将始终相同。
加密哈希函数必须满足以下一组标准才能在区块链中使用:
单向性-必须很容易计算给定输入的输出,但不可能计算给定输出的输入。 当我们在本章后面讨论加密货币挖掘时,这将是一个不可或缺的部分。
伪随机-输入的变化将在输出中产生不可预见的变化。 如果输入“2”的散列值是“4”,则输入“3”的散列最好不是6。
抗冲突-找到哈希函数的两个输入导致相同的输出应该很难(不能读取)。
确定性-相同的输入总是需要产生相同的输出。
哈希算法目前最常用的哈希算法是SHA-256。 SHA是Secure Hash Algorithm的首字母缩写。该数字表示以比特为单位的输出长度,例如SHA系列中有四种不同的输出长度:224,256,384或512位。与区块链技术相关的另一种算法是RIPEMD系列。 RIPEMD160经常用于许多加密货币中,因为您可能已经猜到产生160位的输出。
哈希值在加密货币和区块链中用于多种用途。最显着的用途是将块链接在一起,从而创建区块链。我们将哈希值称为数据指纹,因为它具有抗冲突性。如果您要将文件发送给其他人,则可以在发送文件之前对文件进行哈希处理时包含哈希摘要。收件人可以在收到文件后计算文件的哈希值,并将其与您提供的哈希值进行比较,以便检查文件的完整性。
输入的每组数据可以通过它生成的唯一哈希轻松识别。找到哈希函数的两个输入几乎是不可能的,这会导致相同的输出(导致冲突)。地球上的所有超级计算机需要数千年的时间才能产生冲突。这是因为没有办法“计算”冲突。找到一个的唯一方法是通过蛮力方法,在那里你尝试不同的输入,直到你偶然发生冲突。
总结:哈希函数是区块链技术的第一个基石。文件的哈希就像指纹。通过比较它们的哈希值很容易检测两个文件是否相同。哈希将“区块”连结在一起。如果不包含前一个块的哈希,则无法更改过去的数据。如果您尝试更改数据,引用或链接将不可行。
Utomarket是一家面向全球的创新数字货币交易平台,目前已上线最火热的比特币交易区。拥有200多种交易方式,在Utomarket平台你想怎么交易就怎么交易!
网友评论