-
Notifications
You must be signed in to change notification settings - Fork 2
/
共识机制(链芝士)
54 lines (46 loc) · 5.95 KB
/
共识机制(链芝士)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
工作量证明(Proof of Work)是最广为人知的共识机制是比特币正在使用的机制。
比特币对PoW 简要的解释如下:基于工作量证明,计算能力用于保护区块链并创建新块,“矿工”使用挖矿设备来计算下一个区块的哈希值。
哈希是加密算法的一个词,它重复一个不可逆的,可重复的数字和字母串,每个区块都包含头数据和交易。
当矿工节点在网络内接收到新交易时,他们将其包含在实际区块中并继续进行哈希运算。
找到正确解决方案的第一个矿工(即目标哈希)将获得比特币的区块奖励(实际奖励为12.5 BTC/块)。
大约每10分钟生成一个新块,由于随着时间的推移难度水平不断提高,矿工需要大量的计算处理能力,而现在挖矿已成为一项高耗电活动。
当然,比特币的高耗能机制最近引起了很多批评,已经涌现出一些替代方案,如 PoS(权益证明) ,PoB(燃烧证明)以及 PoC(容量证明),
其中最常用的是 PoS (权益证明)。
如果其他共识机制能够达到与PoW相同的安全标准,但同样也会引起争议。
PoS (权益证明) 是 PoW之后另一个众所周知的共识机制。
PoS是区块链实现分布式共识的另一种方法。针对 PoS,下一个区块的选择有两种方式:“随机区块选择”和“基于区块年龄的选择”。
顾名思义,“随机块选择” 通过最低哈希值+用户权益占比大小(例如NXT)的组合的公式随机选择下一个区块的锻造者。
而“基于年龄的区块选择”,是以基础目标值(base target) ,目标值(target value) 以及累计难度值来确定谁来锻造下一个区块。
其中基础目标值从前一个区块的基础目标值乘以本区块生成距离上一区块的时间(秒)衍生而来。
目标值由基础目标值,距离上一个区块生成的时间以及账户的有效权益值相乘而得,相关公式为 T=T_b * S * B_e
其中 T 表示新的目标值,T_b 表示基础目标值,S 是距离上一个区块生成的时间,B_e是账户的有效权益值。
累计难度值从基础目标值衍生而来,D_cb = D_pb + 2**64/T_b,其中 D_cb 是当前区块的难度值,D_pb表示上一个区块的难度值,T_b表示基础目标值。
针对区块链中区块的锻造机制,实质上它是生成区块的一种方式,它的相关工作机理如下:
每个区块包含两个字段,即 BlockSignature 和 GenerationSignature。
前者基于生成区块帐户的私钥对区块数据进行签名来获取,并且几乎与锻造过程无关,后者基于前一个区块的生成签名以及公钥的 SHA256 运算,
即 SHA256(GenerationSignatureOfPreviousBlock + PublicKeyOfAccount)。哈希的前 8 个字节以 little-endian 给出无符号的 64 位数,
这个数字称之为 “hit” 。每个账户都有一个 EffectiveBalance , EffectiveBalance 乘以基础目标值,即 BaseTarget
(它调整每个区块,试图将区块生成速率保持在1分钟)
以及自上一个区块以来经过的秒数,结果值称为“目标” (Target)。
如果“hit”小于“target”,则节点会接受区块并将其附加到区块链,这是锻造的重要组成部分
Peercoin 是第一个实施“ Age_based Selection ”的加密货币。
仅凭账户余额来选择下一个区块的锻造者并不是理智的行为,因为在这种情况下,具有最高余额的人可能一直阻止签署区块,形成集权。
与PoW相比,PoS中没有任何区块奖励,区块的锻造者仅获得他们签署的区块的交易费用。
优势是 PoS 的耗能远低于PoW,因此锻造者没有像 PoW 矿工那样大量的能源开支,参与和运行节点的人越多,系统就越去中心化。
权益证明 - Casper(以太坊)
众所周知,以太坊计划将一种名为“Casper”的新PoS协议作为其区块链的新共识系统,目的是摆脱能源密集型的 PoW 挖矿。
而以太坊转型必须慎之又慎,以不至于落入危险境地,因此必须考虑安全措施,以便能够实施PoS。
基于 Casper,验证者将其部分 ETH 作为抵押品并开始验证区块。
然后根据赌注按比例获得奖励,但如果恶意行事,将失去 ETH 作为惩罚。
这是Casper与其他PoS协议之间的主要区别之一 - 恶意行为受到惩罚,潜在的攻击者可能会失去一些东西,这是他们的顾虑之一。
委托证明
“委托证明”(DPoS)是一种非常有趣的 PoS 替代方案。使用 DPoS,并非每个人都可以直接参与新区块的创建/锻造,除非他们得到社区投票的支持。
让我们看一下 Lisk 的例子,以便更好地理解DPoS的工作原理:使用Lisk(区块链应用平台),每个人都可以作为代表注册以换取一些费用。
但这并不意味着能够直接参与新区块的创建过程。要成为活跃的锻造者,用户需要由社区投票(所有Lisk用户都可以投票给他们的信任代表,
并根据他们的帐户余额持有一定的投票权重)。然后,只允许前101名投票最多的代表伪造新的区块。
每个积极锻造的代表都可以选择他将与选民分享的锻造 Lisk 的百分比,这会激励社区用户投票。
DPoS的优势是一个更民主和有效的系统,以达成共识。与平均块时间为10分钟的比特币相比,Lisk当前的出块时间仅为10秒,以验证具有交易的新块。
在这个系统中可能需要考虑的一个缺点是,大多数高级代表组成了大团体,并迫使选民投票给整个团体以获得全额奖励。如果选民没有这样做,他将获得较小比例的奖励,
因为没有投票给整个团体。这一程序的结果只会带来经济激励,但并不真正意义上支持民主制度。
其他相关的证明还有 PoI (重要性证明),燃烧证明(PoB),PoA(权威证明),PoET(经过时间证明),PoC(能力证明),等等...
希望这篇文章,能给大家基础的共识机制认识