0

我在我的 mac 上安装了 fabric composer 0.72,我能够按照这个线程将它连接到 Bluemix 上的我的区块链(Fabric 的 v.61)。

Fabric-composer-integration-with-bluemix-blockchain-service

现在我正在尝试构建一个 ubuntu (16.04) docker 容器并在那里运行 composer-rest-server。当我尝试从我的 docker 容器连接到我的区块链服务时(使用我在我的 mac 上使用的相同 ID,WebAppAdmin)我收到一个错误:

Discovering types from business network definition ...
Connection fails: Error: Identity or token does not match.
It will be retried for the next request.
{ Error: Identity or token does not match.
     at /home/composer/.nvm/versions/node/v6.10.3/lib/node_modules  /composer-rest-server/node_modules/grpc/src/node/src/client.js:417:17 code: 2, metadata: Metadata { _internal_repr: {} } }

我尝试将证书从我的 mac 复制到我的 docker 容器:

/home/composer/.composer-credentials/member.WebAppAdmin

但是当我这样做时,我得到了一个不同的错误,上面写着“签名不验证”。我做了一些额外的测试,我发现如果我使用了一个以前没有在 composer 中使用过的 id(即 user_type1_0),那么我可以连接,并且我可以在我的 .composer-credentials 目录中看到一个新证书。

我尝试删除该容器并构建一个新容器(我做了其他事情)我无法再次使用相同的用户 ID。

有人知道安全性和这些证书应该如何工作吗?似乎与证书生成/验证有关的东西与客户端(即硬件地址)相关联,这样如果我尝试在另一台机器上重新使用 id,证书或密钥或其他东西不匹配. 我有办法让事情顺利进行,但如果我不能使用来自不同机器的相同 ID,这似乎不是正确的方法。

谢谢!

4

2 回答 2

0

嗨,我尝试通过在 unix 机器上运行区块链来重新创建它,然后我将连接配置文件和证书复制到我的 mac,然后编辑我的连接配置文件以更新 IP 地址和密钥存储。然后我做了一个composer network ping,效果很好。

我正在使用composer v0.7.4,所以你可以试试吗?

于 2017-06-06T12:18:42.247 回答
0

我也遇到过这个问题,并得出结论

在包括 Bluemix 的云环境中使用 composer 部署网络时存在不一致的行为。问题不在于作曲家,而在于织物 0.6。

我假设这个问题也间接与将已知错误跟踪到结构 0.6 中有关,这些错误不会在结构 0.6 中修复。

错误:

"

投掷者;// 未处理的“错误”事件 ^

ClientDuplexStream 的 ClientDuplexStream._emitStatusIfDone (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19) 出错._readsDone (/home/ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8) 在 readCallback (/home /ubuntu/.nvm/versions/node/v6.9.5/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)

"

到目前为止,我们已经了解到以下三个 JIRA 是根本原因,本质上是云网络层在一段时间不活动后终止了空闲的事件集线器连接,而 Fabric SDK 无法处理这个问题。

https://jira.hyperledger.org/browse/FAB-4002 FAB-3310

https://jira.hyperledger.org/browse/FAB-3310

或 FAB-2787

结论:

  • 没有其他方法可以使用 Bluemix 或任何具有 fabric 0.6 的云环境来解决此问题
  • 您可能不会在 Fabric 1.0 中遇到此问题,但仍有可能,因为上述所有缺陷尚未修复。
于 2017-06-06T07:10:09.390 回答