区块链中不变性是什么意思?

不变性一词已经成为了区块链的同义词。字典将不变性定义为“不可变性”。该词指的是区块链的特征,即写入区块链的任何数据都不能被更改或修改。
如何更好地理解它呢?我们可以将其与谷歌电子表格进行比较。后者具有行和列,您可以随时添加、编辑或删除这些行和列。而当您在区块链中输入任何数据时,除非达成一致协议,否则您不能改动这些数据。因此,虽然区块链中的数据不是100%不可变的,但是需要更改它是非常复杂的。

区块链中不变性是什么意思?

如果区块链非完全不可触摸,为什么它被称为不可变?为了避免混淆和误解,我们需要讨论两个与不可变性密切相关的单词——防篡改和篡改明显。

当某些东西被篡改明显时,每个人都会注意到每一个小变化和修改。另一方面,防篡改意味着物体确实是无法触及的。要找到防篡改的东西是不可能的,因为几乎所有的东西都容易发生变化。然而,有些东西极难被改变。

牙膏就是一个例子。当有人从牙膏管里挤出牙膏时,无论你多么努力地想把管子恢复到原来的状态,都是困难的。

这就是防篡改的意义所在。虽然你可以触摸或改变一些东西,但这很难做到,因为已经做过的改变是非常明显的。区块链也是一样; 因此,我们可以说区块链是防篡改而不是篡改明显。因此,存储在区块链中的任何数据都被认为是安全合法的。

区块链中不变性是如何工作?

既然我们已经确定了区块链是不可变的,因为如果被篡改它会出现很明显的证据,那么下一个问题是: 区块链在多大程度上是不可变的?

为了理解不变性是如何工作的,我们必须讨论哈希。哈希是一组创建数字签名(也称为校验和)的数学操作。它的工作原理类似于您的真实签名,但是您将数字签名附加到任何数字数据上,而不是纸上。

大多数现代编程语言都有各种散列函数。其中之一是安全哈希算法2或SHA-2。在这个哈希函数下,有更多类型的实现,其中最流行的是SHA-256。尝试输入一组字节,哈希函数将产生唯一的校验和。

作为一个例子,让我们使用这三行Python代码,它可以访问SHA-256和其他SHA-2实现。使用这个算法,我们将输入字符串“this is magic”。

>>> import hashlib
>>> h = hashlib.sha256(‘this is magic…’)
>>> h.hexdigest()
‘49240b3cc693fd281422bbcabb5f207ae2

这个hashlib将提供一个由64个字符组成的字符串——不多也不少。无论您的输入是大是小,它都将生成具有相同字符数的校验和。为了证明这一点,让我们输入一个更长的字符串:

>>> h = hashlib.sha256(‘humpty dumpty sat on a wall, humpty dumpty had a great fall’)
>>> h.hexdigest()
‘518e3f99fb2b26b4613c8597b371d11543

如果计算校验和,总共是64个字符,但是校验和是惟一的。惟一性是哈希函数最显著的属性之一。因此,即使您计算两个看起来相同的文件,当您计算它们的数字签名或校验和时,您也会发现是否有任何不同。即使变化很小而且您看不到它,但是哈希不会说谎,它会告诉您差异。

在第一个哈希输入“this is magic…”中,校验和是“49240b3cc693fd281422bbcabb5f207ae2a390003534989fb55080799ee08d8c”。

如果你在句子中再加一个句号,就会得到另一个结果。计算:

>>> h = hashlib。sha256(this is magic.... ')
> > > h.hexdigest ()
“6 c3e6636db1eb2fa8fcf8d4fdbf33bff4129ccb985c24848ef25311d506dde73”

通过向字符串添加一个额外的字符(句点),它产生了一个不同的哈希输出。哈希输出的另一个迷人的特性是“计算上不可能”返回并确定是哪种输入影响了这个惟一的输出。

即使你要求经验丰富的开发人员找出创建的输入值,他们也会告诉你这是不可能的。另一方面,如果你要求同一个开发人员从“this is magic ...”字符串中给你一个SHA-256签名,他将为你提供相同的值。

区块链上的事实有多安全有效?

区块链由链接数据块组成,创建一个链。每个块由多个事务或事实组成。软件将计算每个块的校验和。馈入计算的数据包含大量信息,其中包括前一个块和当前块的校验和。这些因素都将包含在新块的计算中,这就是为什么重写区块链几乎是不可能的。

每次有一个新事务时,它都会直接进入一个事务池,等待被写入区块链。如果有足够的交易,比特币节点将处理每笔交易以创建一个新的块,然后将其添加到链中。这些将成为区块链中的永久记录。

区块链中的校验和格式以零开头。每次记录校验和并将其添加到区块链时,都会向散列输出添加更多的零。如果有人想要更改区块链的历史记录并添加一个新的事务,那么他必须回到Block 1并计算一个全新的Block 1散列输出。这样的过程将需要大量的计算能力以及时间、金钱和精力。

24小时热点

热点专题

免费的行情软件app网站在国外有哪些?

区块链看行情的软件,简而言之,就是一类能够实时提供数字货币行 ...

2382721

波场区块链浏览器

2024年最新十大不收费看盘软件排名公布

随着股市交易的普及和技术的发展,投资者对高效、可靠且免费的看 ...

1132523

波场区块链浏览器

Bitfinex(香港B网)

Bitfinex交易平台目前仍处于试运营阶段,该平台由iFi ...

727339

Hi元宇宙

OEX全球站交易所介绍

OEX(www.oex.com)隶属于OEX Interna ...

643654

Cointelegraph Bitcoin

挖矿app十大排名,挖矿软件推荐

区块链技术自比特币诞生以来,已经在全球成为最热门的一项技术, ...

577399

波场区块链浏览器

FSN币,Fusion

FUSION是一个公开的区块链,通过提供跨链、跨组织和跨数据 ...

500268

ImToken 多链钱包

区块链免费看行情的网站有哪些?

区块链行情网站,简单来说,就是提供数字货币实时价格,交易量, ...

498285

区块链圈小菜鸡

1U等于多少人民币?U币怎么兑换人民币?

U币(如USDT)是一种基于区块链技术的稳定币,其价值与美元 ...

489022

区块链圈小菜鸡

全球币圈十大交易所排名有哪些?最新2024年币圈十大交易所排行榜

在加密货币市场中,交易所是投资者进行数字资产买卖的关键平台。 ...

455023

区块链圈小菜鸡

2024年人气最高的免费看行情的软件大全

区块链看行情的软件是指那些能够提供实时数字货币行情、市场动态 ...

454369

波场区块链浏览器