如果需要本地导入的卡连接到业务网络,如何为公共演示托管区块链应用程序?

时间:2018-01-29 22:45:42

标签: hyperledger-fabric hyperledger hyperledger-composer

我有一个本地的Node.js应用程序已准备就绪,可以与我的云Kubernetes集群上的Fabric区块链进行对话。

据我了解,这是因为:

  1. 我有一张卡
  2. 终端composer import card 中的
  3. 在Node.js this.bizNetworkConnection.connect(NAME_OF_LOCALLY_IMPORTED_CARD)
  4. 所以我很困惑如何在云上为公众主持这个应用程序,任何人都可以查看它。听起来我必须在云计算机中执行以下步骤才能连接到我的业务网络:

    1. 下载卡
    2. 安装Composer
    3. 导入卡
    4. 我觉得必须有一种更简单的方法来做到这一点。我错过了什么?如果没有,似乎我只能通过VPS解决方案来托管这个应用程序,在那里我可以安装任何我想要的文件添加到本地文件系统。

2 个答案:

答案 0 :(得分:1)

在生产方案中,您的应用程序可能会管理卡并将其存储给用户,并管理用户与其卡之间的映射。这是因为在大多数情况下,您的应用程序不仅会访问Fabric上的资源,还会访问其他数据源和集成点,因此应用程序需要更广泛地识别用户。

正如你正确地说,你不希望用户安装Composer并管理他们自己的卡。

答案 1 :(得分:1)

如果您的节点JS应用程序(用于您的公共演示)已经能够进行交互(通过API导入和连接),那么它将成功导入到该节点上的cardstore钱包。因此,您可以让'joe public'访问Node js app,使其处于可用的任何公共URL,并且'it'与Fabric交互(您的用户与NodeJS应用程序交互)。在这种情况下,您的用户无需下载任何卡。

因此,NodeJS应用程序可以使用该商业网卡(作为其演示)与您在K8中部署到Fabric的业务网络进行交互。

如果您希望查看每次登录的不同可追踪历史记录,出于演示目的,那么显然您必须在Composer中为该业务网络发布不同的身份(并映射到参与者)。