我是区块链的新手,只是对比特币PoW计划有基本的了解。
在阅读Hyperledger Fabric https://hyperledger-fabric.readthedocs.io/en//latest/key_concepts.html的关键概念之后,我在理解设置方面有些困难。
在成员资格部分 here中,它表示 “私钥密钥存储区: 对等或订购者节点的本地MSP。” 但是组织可以有多个对等节点。那么,哪些节点负责私钥?我的理解是,私有只能存储在一个地方。
对于整个 Peer部分(请参阅this link),似乎表明Peer节点仅根据背书策略来验证背书交易。共识算法呢? (例如PoW,PoS,PoET之类的东西)
我知道Fabric实现了 Kafka (请参见Hyperledger Architecture, Volume 1)。但是后来,我也在arXiv中找到了令我更加困惑的论文A Byzantine Fault-Tolerant Ordering Service for the Hyperledger Fabric Blockchain Platform。本文似乎建议订购者节点也参与拜占庭容错(BFT)。但是,我对订购者节点的理解是,它们仅负责订购已认可的交易并将其广播到所有对等节点(请参见this link)。
现在,我很困惑Hyperledger Fabric网络如何验证已认可的交易。默认的共识算法是什么?它如何适应官方网站中所述的对等部分的图片?
谢谢。
答案 0 :(得分:2)
那么,哪些节点负责私钥?我的 理解是私有应该只存储在一个地方。
每个节点都有自己的私钥,可以安全地存储在自己的文件系统或只能访问的硬件设备中。
似乎暗示对等节点仅验证认可 根据签注政策进行交易。关于 共识算法? (例如PoW,PoS,PoET之类的东西)
共识是根据交易的顺序而不是其内容达成的。 背书策略规定网络是否认为交易有效。
本文似乎暗示订购者节点也参与其中 拜占庭容错(BFT)。但是,我的理解 订购者节点是它们仅负责订购 认可交易并将其广播到所有对等节点
是的,没错-当前的Fabric实现没有BFT排序器。但是,共识是可插入的,并且如果您实现自己的订购者,则只需将基于Kafka的订购者与BFT订购者进行交换即可。
现在,我很困惑Hyperledger Fabric网络如何验证 认可交易。什么是默认共识算法,以及如何 是否适合于《对等》部分的图片,如 官方网站?
它通过两种方式验证它们:
背书策略-每个事务都有一个或多个链码(数据库中的命名空间)的目标。每个此类名称空间都有一个链码,并具有自己的认可策略。如果交易是由同行签署的,从而符合背书政策,则该交易被视为通过背书政策的交易。
MVCC(多版本并发控制)-一种事务,在执行过程中读取密钥,记录其版本,然后在提交时,对等方检查版本是否未更改,因此数据的因果关系仍然存在完好无损。