当前位置: 首页 > 知识库问答 >
问题:

查询链码时Hyperledger崩溃

陆洲
2023-03-14

我使用的是Hyperledger Fabric V1.0,在尝试使用以下git存储库中的示例项目fabcar时遇到错误:git clone https://github.com/Hyperledger/Fabric-samples.git

我可以使用以下shell脚本启动所有容器:

./startFabric.sh

创建了对等项和通道,但当我使用命令时

node query.js

它会崩溃,出现以下错误:创建客户端并设置钱包位置

设置钱包路径,并将用户PeerAdmin与应用程序检查用户已注册相关联,并在network Make query Assigning transaction_id中设置查询URL:27D48DE27350BBEEB3ADAE69EC5E783D3AF1C42AF03230877F71C3343BFBC905错误:[client-utils.js]:SendPeersProposition-Promise被拒绝:错误:无法反序列化创建者标识,err提供的标识无效,Verify()返回X509:由未知授权机构签署的证书(可能是由于“X509:尝试验证候选授权证书“ca.org1.example.com”时“ECDSA验证失败”),位于/home/eres_admin/hyperledger/fabric-samples/fabcar/node_modules/grpc/src/node/src/client.js:554:15从查询返回查询结果计数=1从查询返回错误={错误:无法反序列化创建者标识,错误为提供的标识无效,在/home/eres_admin/hyperledger/fabric-samples/fabcar/node_modules/grpc/src/node/src/src/src/src/src/src/src/src/client返回X509:由未知机构签署的证书(可能是由于“X509:ECDSA验证失败”)。js:554:15代码:2,Metadata:Metadata{_internal_repr:{}}}响应错误为:无法反序列化创建者标识,错误为提供的标识无效,错误为提供的标识无效

我使用的是节点版本6.11.4,我是否需要使用任何其他版本,或者错误是由于其他原因造成的。

共有1个答案

朱高超
2023-03-14

TL;DR可能是您使用的docker compose已经对CA密钥的名称进行了harcoded编码,但是您重新生成了加密材料,从而更改了密钥和文件名。

我遇到了完全相同的错误,并发现发生此错误的原因是basic-network/docker-compose.yaml硬编码了CA密钥。如果您重新生成加密材料(例如,在basic-network中,您确实生成了.sh),那么密钥文件名就会更改。因此CA无法找到密钥。

重新生成加密材料后,应更改fabric_ca_server_ca_keyfile

...
services:
  ca.example.com:
    image: hyperledger/fabric-ca
    environment:
      - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server
      - FABRIC_CA_SERVER_CA_NAME=ca.example.com
      - FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem
      - FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/4239aa0dcd76daeeb8ba0cda701851d14504d31aad1b2ddddbac6a57365e497c_sk
...

在此之后,query.js就可以正常工作了。

 类似资料:
  • 问题内容: 当我选择2个条件时,mysql总是崩溃。对我来说,这个问题很奇怪: 就是为了这张桌子 这只发生在我的笔记本上。我们有具有相同版本mysql和相同sql的测试服务器(linux)可以 仅在任何一种情况下都不会发生 我尝试删除并重新创建表,转储数据,问题仍然存在 我尝试重新安装相同版本的mysql,并在笔记本中再次发生 有人说mysql 5.6可以,我没有尝试 Mysql版本是5.7.17

  • 我已经与2个组织建立了超分类账结构网络,并在对等上安装了V1.1版本的fabcar链码,我保留了区块链的存储。 接下来,我在fabcar上添加了更多的方法,试图将现有的fabcar升级到V1.2,但我面临着错误。 错误:无法组装事务,err建议响应不成功,错误代码500,msg无法获得链码的包(FABCAR:1.2) 我正在使用下面的命令升级chaincode

  • 问题内容: 任务: 我正在将数据库从MS Access迁移到Maximizer。为此,我必须在MS ACCESS中获取64个表并将它们合并为一个表。输出必须为TAB或CSV文件的形式。然后将其导入到Maximizer中。 问题: Access无法执行看起来如此复杂的查询,因为每次运行查询时它都会崩溃。 替代方案: 我已经考虑了一些替代方案,并希望在其中选择最耗时的方案,同时还要利用任何机会学习新知

  • 问题内容: 我正在尝试遵循此示例Hyperledger Fabric代码:https : //github.com/hyperledger/education/tree/master/LFS171x/fabric- material 最初,我用go文件chaincode / tuna-app / test.go替换了chaincode / tuna-app / tuna- chaincode.go