超级账本中的共识是什么?

4
在下面的链接中,有一段话如下所示:

http://www.coindesk.com/stellar-ripple-hyperledger-rivals-bitcoin-proof-work/

“每个节点都发布一个公钥。通过节点传递的任何消息都会由节点签名以验证其格式。一旦达到足够数量的相同响应,那么您可以确认这是有效的交易。”

我的理解:

一旦进行了交易,每个节点都会发布一个公钥。当通过节点传递的消息被节点签名以验证其格式后,如果达到了足够数量的相同响应,则可以认为这是一个有效的交易。

3个回答

3
Hyperledger是一个旨在创建区块链解决方案的模块化方法的项目集。它具有分层架构,包括单独的共识层。其目标是您应该能够根据业务需求切换共识策略。
这张表来自于Hyperledger体系结构第1卷,为您提供了各个子项目中共识方法的示例。

enter image description here


1
您的答案已经过时了。您引用的论文是v1.0之前的版本。Hyperledger Fabric已经不再使用智能合约,整个架构也发生了变化。 - Chris Sharp
3
你能否在回复中详细一些?Fabric确实支持智能合约。请参见下面来自Hyperledger网站的内容。 - DottoreM
2
链码(智能合约和数字资产) Hyperledger Fabric是否支持智能合约逻辑? A. 是的。我们称之为Chaincode。这是我们对智能合约方法/算法的解释,具有附加功能。Chaincode是部署在网络上的编程代码,在共识过程中由链验证器一起执行和验证。开发人员可以使用chaincode开发业务合同、资产定义和集体管理的分散应用程序。 - DottoreM

3
共识是区块链中节点决定将交易块添加到区块链的机制。有许多共识机制 - 例如,比特币使用称为工作量证明的共识机制,以太坊使用称为权益证明的共识机制。共识可以在分类帐级别(所有节点都必须同意)或交易级别(只有交易节点必须同意)上实现。在Hyperledger的情况下,共识是在交易级别上进行的,这意味着并非所有节点都需要参与共识机制。只有两个交易方才能参与并达成共识。关于基于PBFT(实用拜占庭容错)的Hyperledger Fabric共识的详细技术解释在此链接中:

http://hyperledger-fabric.readthedocs.io/en/release/txflow.html

在这里可以找到一个不太技术性的解释: 这也谈到了Hyperledger Fabric节点扮演的不同角色

https://medium.com/@philippsandner/comparison-of-ethereum-hyperledger-fabric-and-corda-21c1bb9442f6


0
在这种共识类型中:
  • 进行交易,即某人从其他人那里购买某物。
  • 希望将此交易成为区块链上合法块的人将发送一个加密哈希。

  • 哈希是一种函数,它会混淆其输入并创建一个输出。

  • 没有简单的方法来解决原始输入,因此同行将尝试将随机数放入函数中以找到创建哈希的输入。

  • 在足够多的同行独立解决问题后,交易被认为是合法的,交易进入分类账。

在比特币模型中,这意味着比特币立即转移到另一方的账户中。

验证交易所需的同行数量通常由拜占庭容错算法计算。您可以在下面的链接中阅读完整的论文,但基本上意味着系统需要:

  n = 2f + 1 peers to agree where n is the total number of peers 
  and f is the number of failing peers. 

例如,如果您有4个同行,则根据算法,在达成共识之前必须有其中三个同意。
以下是使用4个同行的示例:
 n = 4
 4 = 2f + 1 
 3 = 2f
 1.5 = f
 total failures can only be 1
 n - 1 = 4 - 1 = 3 peers must agree

与算法论文一起附带的还有另一个幻灯片,可能有助于理解它,并提供了一个关于比特币模型的视频链接,应该会有所帮助。

http://pmg.csail.mit.edu/papers/osdi99.pdf

http://www.cs.utah.edu/~stutsman/cs6963/public/pbft.pdf

https://www.youtube.com/watch?v=GMKgB3zZ1so


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接