📜  区块链哈希函数

📅  最后修改于: 2022-05-13 01:56:18.507000             🧑  作者: Mango

区块链哈希函数

区块链是一个不断增长的分类账,以安全、按时间顺序和不可变的方式永久记录所有已发生的交易。为了使数据安全,区块链使用哈希函数。

散列:
简单来说,散列意味着获取任意长度的输入字符串并给出固定长度的输出。固定长度的输出称为等效散列或简称散列。

加密哈希函数的类型:

  • 安全散列算法(SHA-2 和 SHA-3)
  • RACE Integrity Primitives 评估消息摘要 (RIPEMD)
  • 消息摘要算法 5 (MD5)
  • 布莱克2

SHA-256:
SHA-256 是所有加密哈希函数中最著名的,因为它广泛用于区块链技术。 SHA-256 哈希算法由美国国家安全局 (NSA) 于 2001 年开发。

哈希过程:
对于这个哈希函数,我们可以使用 Anders Brownworth Hash Program,这是一个由 Anders Brownworth 开发的程序。

如果我们在数据部分键入任何字符,我们将在哈希部分观察其对应的加密哈希。

输入中的微小变化会改变哈希:
如果我们对输入做一个小的改变,产生的等效散列将完全不同。

将大写“T”更改为小“t”完全改变了等效哈希。

从等效哈希中确定原始字符串非常困难,但并非不可能。从哈希中确定原始字符串的唯一方法是使用“蛮力”。蛮力基本上意味着我们必须采用随机输入,对它们进行散列并将它们与目标散列进行比较。

基本上可以有三种情况:

  1. 最佳情况:
    我们在第一次尝试时就得到了答案。这种情况发生的几率是天文数字。
  2. 平均情况:
    对于 SHA-256,我们在 2^256/2 = 2^255 次后得到答案。换句话说,它是一个巨大的数字。
  3. 最坏的情况:
    我们在数据末尾得到答案。