传统的银行,政府是中心化的,互联网就是一个著名的去中心化的场所。分布式共识有很多用途,尤其是在维护数据库数据方面。

分布式共识协议:在一个有N个节点的系统中,每一个节点都有一个输入值,其中一些节点具有故障,甚至是恶意的,一个分布式共识协议有以下两个属性:

输入值的中止须经过所有诚实节点来确定。

这个输入值必须由诚实节点来生成。


比特币的每一个节点并没有一个稳定的,长期的身份,这也是与传统分布式共识算法的不同之处。身份缺失的原因是,没有一个中央权威机构来发放身份,并保证它们没有制造节点。制造节点就是所谓的“女巫攻击”现象。女巫就是恶意黑客制作的不同节点,这些节点看起来像是对应 不同的身份的人,其实是由一个人在幕后控制。另一个原因是化名制,也就是比特币想表达的一个目标,即使可以为每个节点建立唯一真实的身份,比特币也不想那样做。


比特币共识算法(简化版)

区块链-第二章 去中心化-普林斯顿大学课程

假设随机选择一个节点,这些节点都不会受到女巫攻击的影响。

1.新的交易被广播到所有节点上。

2.每个节点都将新的交易放进一个区块。

3.在每个回合,一个随机的节点可以广播它的区块。

4.其它节点可以选择接受这个区块,前提是如果区块里的交易都是正当的。

5.节点们可以把以上区块的哈希值放进自己的区块,表示对新区块的认可。

因此在这种条件下是无法窃取比特币的,拒绝服务攻击实现的可能性也比较小(诚实交易可以等待下一个区块,并写入其中)。

比特币中一个常见的攻击是双重支付攻击:

如果同一笔钱(数字货币)被重复支付两次,就是双重支付问题。

假设爱丽丝在网上向鲍勃购买一件商品,爱丽丝在她的地址向鲍勃的地址发起一笔比特币交易,并向整个网络广播这笔交易。假设某个诚实节点来制造下一个区块,并把这个交易放入区块中。此时就有了一个由诚实节点发起,包含代表爱丽丝向鲍勃支付这笔交易在内的区块了。

区块链-第二章 去中心化-普林斯顿大学课程

当看到这笔交易被放入区块链后,鲍勃以为爱丽丝已经向他付款,就将商品发送给爱丽丝。假设下一个回合被随机选中的节点恰巧被爱丽丝所控制,她可以选择忽略前面那个包含她支付给鲍勃的那笔交易的区块,而产生一个包含指向之前区块指针的区块。不仅这样,在这个区块中,她可以放进一笔交易,把她支付给鲍勃的币转到一个被她控制的地址中。

区块链-第二章 去中心化-普林斯顿大学课程

如何知道这个双重支付攻击是否成功呢?这取决于最后哪个区块会被纳入长期的区块链。爱丽丝可以通过贿赂下一个可能的区块增大这种可能性,因此双重支付攻击时有可能失败的,不是绝对成功。从鲍勃的角度看,为了预防双重支付攻击,鲍勃应该等待交易被写入最长的区块链中(长度尽量长)再向爱丽丝发送商品,一般等待时间是6个确认(一小时)。


2.4奖励机制与工作量证明

区块链的奖励机制有两种,第一种是造币交易(币基交易),另一种是交易费。

区块链-第二章 去中心化-普林斯顿大学课程

区块链-第二章 去中心化-普林斯顿大学课程区块链-第二章 去中心化-普林斯顿大学课程

1.币基交易(造币交易)

  币基交易每四年减半,奖励会越来越低。

2. 交易费(transactionfees)。 

  如果某笔交易的输出值小于输入值,那么差额就是交易费,该交易费将被增加到该区块的激励中。当区块中的交易太多的时候,矿工会丢弃交易费少的交易。


工作量证明的核心理念是,我们把随机选取节点改为根节点占有某种资源的比例来选取节点,我们希望这种资源是没有人可以垄断的。比如说,如果这个资源是计算能力,那我们称之为工作量证明系统。或者这个资源可以是某种币的拥有量,我们称之为权益证明。比特币是通过哈希函数解谜来证明工作量的。其实质就是找到一个符合条件的临时随机数

区块链-第二章 去中心化-普林斯顿大学课程

挖矿成本,挖矿收益

区块链-第二章 去中心化-普林斯顿大学课程

比特币中一个常见的理论是51%攻击,如果人们知道现实中有人掌控了51%的计算力,人们就不会继续信任比特币,因此在实际过程中,这是不可能发生的。


相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-16
  • 2021-12-14
  • 2021-12-17
  • 2021-09-06
猜你喜欢
  • 2021-07-17
  • 2021-11-08
  • 2021-09-29
  • 2021-06-05
  • 2022-12-23
  • 2021-04-19
相关资源
相似解决方案