2.3挖矿算法

版权声明:忠于祖国,忠于人民 https://blog.csdn.net/boss2967/article/details/83063526

2.3 ψ挖矿算法分析

什么是挖矿算法?当然是给你一把镐头去山西黑煤窑挖矿咯。 这都不懂吗?

1. PoW挖矿算法及分析

PoW(Proof of Work),即工作证明。

你获得多少货币,取决于你挖矿贡献的有效工作。即根据你的工作证明来执行货币的分配。

挖矿算法就是通过是通过一个Hash函数找到一个满足当前难度的Nonce(包含在区块头里面)的值,Hash函数输入数据的长度是任意的,将产生一个固定且绝不雷同的值,可将其视为输出的数字指纹。

对于特定输入,Hash的结果每次都不一样,任何实现相同Hash函数的人都可以计算和验证。加密Hash函数的主要特征就是不同的输入几乎不可能出现相同的数字指纹。因此,相对于随机的选择输入,有意地选择输入去找一个特定的Hash值,这几乎是不可能的,否则就破解了所使用的Hash算法,如SHA-256等。矿工用一些交易来构建候选区块,他会计算这个区块头Hash的值,看其是否小于当前目标值,如果这个值小于目标值,矿工就会修改这个Nonce的值,然后再试一次。通常来说一个矿工会做成千上万次Hash运算,从而得到一个合适的Nonce的值,使得区块头Hash满足当前难度。这也是PoW(工作量证明)算法的由来。

PoW要求出示一定的证明表明工作量,证明可以是直接记录也可以通过概率表示,其中对于由小概率事件累计而成的工作,出示结果等同于证明了工作量(因为不太可能直接得到小概率结果)。在比特币和其他类比特币的系统中,PoW系统是以合乎要求的Hash作为工作结果的。由于矿工需要一定量的计算才能取得合法的计算结果,因此得到合法的计算结果就可以证明完成了一定量的计算。

2. PoS股权证明算法及分析

PoS(Proof of Stake),即股权证明。

根据你持有货币的量和时间,给你发利息的一个制度。
在股权
证明模式下,有一个名词叫币龄,每个币每天产生1币龄,例如你持有100个币,总共持有了30天,那么,此时你的币龄就为3000,这个时候,如果你发现了一个PoS区块,你的币龄就会被清空为0。你每被清空365币龄,你将会从区块中获得0.05个币的利息(可以理解为年利率5%),那么在这个案例中,利息=3000×5%/365=0.41个币。

比特币每年的挖矿产量都在不断减半,我们可以预计,随着比特币产量的不断降低,矿工人数也会越
来越少,这样就会导致整个比特币网络的稳定性出现问题。PoS的解决方案是鼓励大家都去打开钱包客户端程序,因为只有这样才可以发现PoS区块,才会获得利息,这也增加了网络的健壮性。

当矿工人数降低时,比特币很可能会被一些高算力的人或团队进行51%攻击,如果采用PoS体系,你即便拥有了全网51%的算力,也未必能够进行51%攻击,因为这还要求攻击者持有全球51%的货币量,而这是很难达到的。

上比特币是一个货币紧缩的体系,因为总存在钱包永久丢失的可能,PoS采用类似年利率的方式在一定程度上是可以缓解这个问题的。

3. PoS股权证明算法及分析

股份授权证明机制(DPoS)是一种新的保障加密货币网络安全的算法,由比特股bitshares提出。
DPoS机制是让每一个持有BTS(比特股发行的一种加密货币)的人对为整个系统资源当代表的人进行投票,而获得票
数最多的101个代表将进行交易打包计算。对此,可以理解为有101个矿池,这101个矿池彼此的权利是完全对等的。那些握着BTS选票的人可以随时通过投票更换这些代表(矿池),但如果他们提供的算力不稳定,计算机宕机或试图利用手中的权力作恶,那将会立刻被愤怒的选民们踢出整个系统,而后备代表可以随时顶上去。从某种角度来看,DPoS有点像美国的议会制度,只不过不是四年一次选举,而是时刻都在选举中。

猜你喜欢

转载自blog.csdn.net/boss2967/article/details/83063526
2.3