不变性在区块链中意味着什么?

恒定一词已成为区块链的代名词。词典中对不变性的定义是“不变性”。这一术语所指的是区块链的特征,也就是任何写到区块链中的数据都不能被改变。
怎样才能更好的理解它?我们可以把它和谷歌的电子表格相比较。其中包含可在任何时候添加、编辑或删除的行和列。如果你在区块链中输入任何数据,你都不能改变这些数据,除非你达成一致意见。所以,尽管区块链中的数据并非100%不可变,但需要对其进行更改却很复杂。

不变性在区块链中意味着什么?
不变性在区块链中意味着什么?
既然区块链不能完全触碰,为什么又叫不可变?为避免混淆和误解,我们需要讨论两个与不可变性密切相关的词——可篡改性和可读性。
如果某事物被篡改了,每个人都会注意到每一个微小的改变和修正。另外一方面,防篡改意味着物体是不可接触的。找出防篡改的东西是不可能的,因为几乎任何东西都可以随时更改。但是有些事情是很难改变的。
一个例子就是牙膏。如果有人把牙膏从牙膏管挤出来,不管你怎么努力,还是很难把牙膏管恢复到原来的样子。
而这正是防篡改的关键。尽管你可以触摸或者改变一些东西,但是这很难做到,因为已经发生的变化非常明显。同样的情况也发生在区块链上;因此,我们可以说区块链是防篡改的,而非篡改的。所以任何存储在区块链中的数据都被视为合法和安全。
块链的不变性如何运作?
现在我们已经确定了区块链是不可变的,因为如果篡改了它,证据就会显现出来,接下来的问题是:区块链在何种程度上是不可变的?
要了解不变量的工作原理,我们必须讨论散列。hash是一组数学运算,用来创建数字签名(又称校验和)。其工作方式与您的真实签名相似,但您将数字签名与任何数字数据相连接,而非纸张。
很多现代的编程语言都有各种各样的hash函数。安全散列算法2或SHA-2就是其中之一。该hash函数包含更多类型的实现,其中最常用的就是SHA-256。试着输入一组字节,哈希函数会生成一个唯一的校验值。
举个例子,让我们用Python的三行代码来访问SHA-256和其他SHA-2实现。我们将用该算法输入字符串”thismagic”。
>importhashlib。
>h=hashlib.sha256(‘thisismagic…’)
h.hexdigest()
b3c693fd281422bbcabb5f207ae2是‘49240b3ccc693fbb2822bbcabb5fb207ae2’。
该hashlib将提供一个包含64个字符的字符串,既不多也不少。不管你的输入是大还是小,它都会产生相同数目的字符的校验和。要说明这一点,让我们输入一个更长的string:
h=hashlib.sha256(‘humptydumptysatonawall,humptydumptyhadagreatfall’)
h.hexdigest()
’518e3f99fb2b26b4613c8597b371d11543是一条直线。
若计算出校验和,则总数为64个字符,但校验和是唯一的。唯一性是散列函数最显著的特性之一。所以,即使你计算两个看起来相同的文件,当你计算它们的数字签名或校验和时,你也会发现它们之间有什么区别。
假如你在这个句子里加一个句号,你会得到另一个结果。计算量:h=hashlib。Sha256(thismagic…)
h.hexdigest()”6c3e6636db1eb2fa8fcf8d4fdbf33bff4129cb985c24848ef25311d506de73″
它通过在字符串中添加额外的字符(句点)来生成不同的散列输出。hash输出的另一个有趣的特点是“计算上不可能”,它返回并确定哪些输入会影响这个唯一的输出。
甚至当您让有经验的开发人员确定所创建的输入值时,他们会告诉您这不可能。相反,如果你让同一个开发人员给你一个来自“thismagic..”字符串的SHA-256签名,他会给你同样的值。
在区块链上,事实安全有效吗?
块链是由连接的数据块组成,形成一个链式。每一个块都包含多个事务或事实。该软件会计算每部分的校验和。输入计算得到的数据包含大量信息,包括前一块和当前块的校验和。所有这些因素都会包括在新块的计算中,因此重写区块链几乎是不可能的。
每当有新的事务出现时,它将直接进入事务池,等待写入区块链。比特币节点将处理每笔交易,并创建一个新的区块,如果交易足够多,它将被添加到链中。在区块链中,这些将成为永久记录。
在区块链中,校验和格式以零开始。每当记录校验和被添加到区块链中时,hash输出就增加了更多的零。如果某人想要改变区块链的历史,并且添加一个新的交易,他必须返回到Block1,计算一个全新的Block1散列输出。这一过程需要大量的计算能力、时间、资金和精力。

     点击查看更多首码项目
广告合作 首码项目 严选项目
在线投稿                                Q群:572861413

本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

原创文章,发布者:首码对接项目,转载请注明出处:https://www.biyungu.com/2059.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年 11月 4日 上午9:33
下一篇 2020年 11月 4日 上午9:42

   版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请勿盲目下载注册。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系管理qq61721503 

   特别提醒:币云谷首码网作为信息共享平台无法对信息的真实性及准确性做出判断,不承担任何财产损失和法律责任,若您不同意该提示,请关闭网页且不要在本站拓展任何合作,否则造成的任何损失由您个人承担,凡是涉及任何投资和高回报信息请勿相信。

相关推荐