摘要(Abstract)

一.拜占庭容错技术(Byzantine Fault Tolerance,BFT) 二.PBFT:Practical Byzantine Fault Tolerance,实用拜占庭容错算法。 三.Raft协议。 1.Leader Election  2.Log Replication 四.POW:Proof of Work,工作证明。 五.POS:Proof of Stake,股权证明。 六.DPOS:Delegated Proof of Stake,委任权益证明 七.Ripple共识算法。 1、0确认 例如A共有1个比特币,并先后支付给B和C各一个比特币购买商品。若B和C尚未等该笔交易写入新的区块(比特币每10分钟产生一个新的区块,包含前一区块信息和这十分钟所发生的交易),就提供商品,那么B能收到比特币,C不能收到,受到欺诈。 这个问题会对交易的及时性产生一定影响,需要收款方等待一定时间,完成确认后进行交易就能避免这种情况发生。 2、算力攻击 区块链存在一个特性,当同时产生多个正确区块时,产生支链。矿工按自己受到区块广播的先后顺序,把先到达的区块作为上一区块进行计算。经过一段时间后,最长的支链被确认成为主链,其他被抛弃。根据这一特性,当A支付一笔比特币后,若能更改交易记录,并使错误记录成为主链后,就能完成欺诈。 为了解决这一问题,许多数字货币采用了POW,以太坊正在往POS与DPOS过渡。 POW是Proof of Work的缩写,即工作证明,是中本聪受到Adam Back的哈希现金(Hashcash)算法的启发。哈希现金主要用于垃圾邮件的过滤,让发邮件的人完成一个难以计算却容易验证的问题,在内容后添加后缀,使计算的hash值前指定位数为0。因为后缀对hash值的影响难以预料,只能通过不断试错的方式进行。对于普通的邮件发送者,发送少量的邮件只需让计算机进行几秒的计算,对于垃圾邮件发送者,大量的计算会耗费大量的算力。对于区块链来说,每个区块的产生也需要指定该区块头hash值的0的位数,0位越多,计算难度越高,难度会根据全网算力动态调整。

主题(Topic)

项目(Project)


全部项目