📜  区块链如何运作?

📅  最后修改于: 2021-10-19 04:32:32             🧑  作者: Mango

先决条件——区块链技术简介 |组 1、组 2
一个blockchain只不过是持有其被用来使权力下放在互联网上一些严重的性能块链。去中心化意味着没有人对网络拥有完全的权力或控制权,而是将权力分配给使用它的用户,在区块链的情况下,分配给矿工,即用户。

  • 区块链提供了不变性(理论上可以改变内容,但由于所需的计算能力,大多数时候实际上是不可能的,除非有一个错误,它发生在以太坊上一次并导致硬分叉,从而创建了两个版本的它,以及两种货币,以太坊和以太坊经典)。
  • 区块链提供透明度和信任。区块链是共享的,因此它允许系统透明,每个人都可以验证其中存在的数据。
  • 区块链是安全的。著名且可靠的区块链使用世界各地密码专家认可和使用的密码功能。然而,这可能会随着量子计算的进步而改变。
  • 区块链具有高可用性,因为该系统基于 p2p 网络中的数千个对等点。

以最基本的方式,我们可以将区块链视为链表。列表中的每个下一项都依赖于前一项,除了第一个块,也称为创世块,它被硬编码到区块链中。

所以假设我们有一个由 10 个区块组成的链,所以第 10 个区块依赖于第 9 个区块,第 9 个区块依赖于第 8 个区块,依此类推。因此,在某种程度上,第 10 个区块也依赖于所有先前的区块和创世区块。因此,如果有人试图更改第二个块上的数据,那么他也必须更改所有后面的块上的数据,否则区块链将变得无效,因为后面的块依赖于第二个块中的数据,并且第二个块已更改,但后面的块没有更改。因此,随着块的添加,不变性增加,我们将在后面看到,更改块是一项昂贵的操作。

此外,要在区块链中添加/更改区块,人们必须出示一些证据。为了避免将大量块添加到区块链中,引入了难度的概念。要添加一个块,我们必须计算该块的哈希值。散列拥有某些属性,这使得计算散列很耗时。例如,有人可能会很难拒绝。散列开头的零。因此,通过随机改变随机数(存在任意数据以便保持哈希的属性),我们必须找到包含属性的块的哈希。

一定时间后会调整难度,以保持平均恒定的出块率。

挖掘一个区块——
挖掘区块是指添加区块链网络中存在的区块。矿工从交易池中选择一组交易,然后挖掘区块,或者可以说,计算哈希值以将区块添加到网络中。如果两个或多个矿工同时开采同一个区块,则选择难度更大的区块。其他的被称为陈旧块。挖矿通常用区块链货币奖励矿工。