【问题标题】:Difference between users in hyperledger fabric and participants in hyperledger composer超级账本结构中的用户和超级账本作曲家中的参与者之间的区别
【发布时间】:2018-03-11 10:12:57
【问题描述】:
您好,我是 HyperLedger Fabric 和 composer 的新手。我对两个术语感到困惑。一个是 HyperLedger Fabric 中的用户,另一个是 HyperLedger Composer 中的参与者。我们有一组 用户(包括一个 管理员 strong>) 以及 crypto-config.yaml 文件中的同行。
-
管理员用户的角色和职责是什么?
- crypto-config 文件中其他用户的角色和职责是什么?
- 据说可以在hyperledger fabric network上部署使用hyperledger composer构建的business network。business network包含什么fabric network 包含什么?
- fabric 中的 chaincode 和 composer 中的 事务逻辑(用 javascript 编写)之间的区别?
【问题讨论】:
标签:
hyperledger-fabric
hyperledger-composer
【解决方案1】:
- 管理员凭据用于在 composer 中创建 PeerAdmin 卡,而 PeerAdmin 卡又负责使用您的 bna 文件和问题身份在结构上启动 composer。
- 用户只是一组额外的凭据,因此您最初将拥有一些凭据来使用网络。稍后您可以使用结构 CA 发布新用户。
- 业务网络不过是使用 composer 对结构进行的一种抽象。业务网络使用bna文件部署,包含模型文件、事务逻辑文件、ACL文件或查询文件。 Fabric 网络只不过是一组相互通信的对等点。
- Chaincode 是您直接部署在 Fabric 上的智能合约,而 Composer 中使用的交易逻辑是业务网卡的一部分,通过 Composer 部署在 Fabric 上。您不能在 Fabric 上部署独立的事务逻辑,它使用带有 bna 文件的 composer 进行部署,而您可以直接部署链代码。
【解决方案2】:
据我所知,超级账本作曲家的参与者与超级账本结构中的用户相同。但是,在 hyperledger fabric 教程中,它们主要用于测试模式。因此,您所做的示例正在使用 cryptogen 工具。此工具根据您的 crypto-config.yaml 中的“用户”创建固定数量的凭据。例如,在关于商业票据1 的示例中,cryptogen 为 Admin 和 User1 创建了 2 个凭据。然后,Isabella 使用 User1 凭证(您可以在 addtoWallet.js 的代码中查看详细信息)。在代码中,Isabella 从 User1 复制凭证以进行交易。
Hyperledger composer 看起来像是在 Hyperledger 结构之上运行的抽象。当它允许轻松创建凭据时,它更加灵活。当您创建参与者并授予他们访问业务网络的权限时,您正在为他们生成凭据。