超聚合中的PBFT算法

Sau*_*abh 29 mining blockchain hyperledger corda

任何人都可以详细解释PBFT算法而不给出相同的任何链接.以及它如何在hyperledger中工作.所以,一旦交易发送到blockchain:

(1).谁验证了交易?

(2).如何在交易中达成共识?

(3).交易如何承诺区块链?

Ser*_*ich 22

"Hyperledger"是Linux基金会下的区块链联盟.目前,Hyperledger下至少有4种不同的区块链框架实现:

  • 面料(IBM)
  • Corda(R3)
  • 伊吕波
  • 锯齿湖(英特尔)

在Fabric v0.6中:

所有验证对等体都保持彼此的开放连接.您可以将交易提交给其中任何一个,此交易将被广播给网络中的其他同行.同伴之一被选为"领导者".在生成新块时:

  1. 领导者命令应该包括在块中的事务候选者,并将该有序事务列表广播到网络中的所有其他验证对等体.
  2. 当每个验证对等方都收到有序的事务列表时,每个验证对等方执行以下操作:
    1. 它开始逐个执行有序事务.
    2. 一旦执行了所有事务,它就会计算新创建的bloc的哈希码(哈希码包括已执行事务的哈希值和世界的最终状态).
    3. 然后,它将其答案(生成的哈希码)广播到网络中的其他对等方,并开始计算它们的响应.
    4. 如果它看到所有验证对等体中有2/3具有相同的哈希码,则它会将新块提交到其分类帐的本地副本.

在Fabric v1.0中:

此版本仍在开发中.在v1中没有"领导者",单独的服务" Orderer "负责一个块中的交易顺序.这项服务是可插拔的,并宣布将有3种不同的选择:

  1. Solo - 单个流程负责订购
  2. Kafka orderer - 利用Kafka pubsub系统执行订购
  3. PBFT - 尚未实施.

在Corda:

不使用PBFT.此实现使用另一种架构方法.

  • 以太坊使用"工作证明"作为一致性算法.有很多关于这个概念的好文章:https://en.bitcoin.it/wiki/Proof_of_work (2认同)
  • 谢尔盖:[描述PBFT算法的Castro-Liskov论文](http://dl.acm.org/citation.cfm?id=571640)是最好的参考. (2认同)
  • @Kostas仍然很好奇步骤2-5究竟出了什么问题,你有时间准备你的答案吗? (2认同)