Hyperledger Fabric 中的共识和背书有什么区别?
What is the difference between consensus and endorsement in Hyperledger Fabric?
背书是背书节点执行交易并就结果达成一致的过程。它与 Fabric 中的共识有何不同?
Hyperledger Fabric 和许多其他区块链平台之间的一个主要区别是事务的生命周期。
在其他平台,一笔交易的生命周期通常是订单-执行,其中:
顺序: 交易按某种顺序添加到账本中并传播给所有节点。
执行: 交易在所有节点上按顺序执行(例如使用智能合约代码)。
而在 Hyperledger Fabric 中,交易的生命周期是不同的,因为它是一个 Execute-order-validate 模型:
执行: 事务以任何顺序执行(使用链码),甚至可能并行执行。
订单: 当足够多的节点就交易结果达成一致时,它就会被添加到账本中并传播给所有节点。这一步是首先对交易进行排序的地方——直到交易被添加到账本中。
验证: 每个节点按顺序验证并应用账本的交易。现在交易已经排序,节点可以检查较早的交易是否使较晚的交易无效。例如,这可以防止一件商品被出售两次(称为双花)。
Hyperledger Fabric 中的背书基本上允许用户围绕链代码的执行定义策略。这些背书策略定义了哪些节点需要在交易结果被添加到账本之前就交易结果达成一致。
现在让我们看看背书是如何工作的:
Fabric 从交易提案开始。它是一组用于触发特定链代码的信息。交易提案被发送给一些同行进行背书。一个背书节点执行链代码,它(如果成功)为账本产生一个实际的交易。然后,背书节点签署交易并将其 returns 交给提议者。这是execute-order-validate中的Execute步骤。
一旦提案的创建者收到足够的签名来满足背书政策,它就可以提交要添加到分类帐中的交易(和签名)。这是订单步骤。
共识或验证是最后一步,所有对等方验证整个交易过程之间的世界状态是否有任何变化,然后仅验证那些有效的交易并将其他交易标记为无效。
背书是背书节点执行交易并就结果达成一致的过程。它与 Fabric 中的共识有何不同?
Hyperledger Fabric 和许多其他区块链平台之间的一个主要区别是事务的生命周期。
在其他平台,一笔交易的生命周期通常是订单-执行,其中:
顺序: 交易按某种顺序添加到账本中并传播给所有节点。
执行: 交易在所有节点上按顺序执行(例如使用智能合约代码)。
而在 Hyperledger Fabric 中,交易的生命周期是不同的,因为它是一个 Execute-order-validate 模型:
执行: 事务以任何顺序执行(使用链码),甚至可能并行执行。
订单: 当足够多的节点就交易结果达成一致时,它就会被添加到账本中并传播给所有节点。这一步是首先对交易进行排序的地方——直到交易被添加到账本中。
验证: 每个节点按顺序验证并应用账本的交易。现在交易已经排序,节点可以检查较早的交易是否使较晚的交易无效。例如,这可以防止一件商品被出售两次(称为双花)。
Hyperledger Fabric 中的背书基本上允许用户围绕链代码的执行定义策略。这些背书策略定义了哪些节点需要在交易结果被添加到账本之前就交易结果达成一致。
现在让我们看看背书是如何工作的:
Fabric 从交易提案开始。它是一组用于触发特定链代码的信息。交易提案被发送给一些同行进行背书。一个背书节点执行链代码,它(如果成功)为账本产生一个实际的交易。然后,背书节点签署交易并将其 returns 交给提议者。这是execute-order-validate中的Execute步骤。
一旦提案的创建者收到足够的签名来满足背书政策,它就可以提交要添加到分类帐中的交易(和签名)。这是订单步骤。
共识或验证是最后一步,所有对等方验证整个交易过程之间的世界状态是否有任何变化,然后仅验证那些有效的交易并将其他交易标记为无效。