错误:无法导入标识。错误:未指定privateKey或不是字符串

问题描述 投票:0回答:2

我使用之前请求的管理卡创建了我的网络,但是当我想将此卡导入卡存储时它出错:

Failed to import identity. Error: privateKey not specified or not a string

和导入失败。

我的操作是:1。创建PeerAdmin卡:

composer card create -p ./santai/byfn-network-test.json -u PeerAdmin -c ./santai/[email protected] -k ./santai/689f471246b0e180384660285aff48dcc5e12b9fd6bed4e5a47cce7ce367310f_sk -r PeerAdmin -r ChannelAdmin - f [email protected]

  1. 将PeerAdmin卡导入卡片商店: composer card import -f [email protected] --card PeerAdmin @ chembeango-network-test
  2. 身份要求:

作曲家身份请求-c PeerAdmin @ chembeango-network-test -u test -s t789456 -d test

  1. 启动网络

composer network start -c PeerAdmin @ chembeango-network-test -n chembeango-test-network -V 0.0.1 -o endorsementPolicyFile =。/ endorsement-policy.json -A test -C test / test-pub.pem

  1. 导入管理卡 作曲家卡片导入-f [email protected]

我检查了我的私人信息,它是:

-----BEGIN PRIVATE KEY-----
MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGPwysYDw6+TLcgiv
QOHt7vhm3j5A9muqwmIKutoxdhGhRANCAASDNP95hp3tpLda5qGD2LTSfpjD4x4t
mqYlov5eIQhG1Nq7BXdn0fJYtpPB5T5odaoheUU0xDcC4BXAmqb9LYif
-----END PRIVATE KEY-----

我将我的卡片放到一个zip文件中,然后解压缩它,结构是:

 extracting: connection.json
 extracting: metadata.json
   creating: credentials/
 extracting: credentials/certificate

我没有找到priv键,这是问题吗?

hyperledger-composer
2个回答
0
投票

你是对的,自动为你创建的卡不包含私钥!

您需要删除自动生成的卡并自己创建一个包含证书和密钥的新卡。所以你需要2个与这些类似的命令 - 我建议使用'test2',这样就没有混淆了:

composer card create -p ./santai/byfn-network-test.json -u test -c test/test-pub.pem -k test/test-priv.pem -f test2.card -n chembeango-test-network

composer card import -f test2.card -c test2@chembeango

(如果您在composer network start命令中指定用户名和密码,则自动生成的卡在单个组织环境中正常工作,但如果您首先请求身份,然后在启动命令上使用证书,则生成的卡不包含私钥)


0
投票

我解决了这个问题。我的业务是:

  1. 将测试版权限添加到credentials文件夹中,
  2. 将其改名为PrivateKey
  3. 我将这些文件压缩为zip文件。
  4. 将此zip文件重命名为card
  5. 将卡片导入卡片商店。有用!
© www.soinside.com 2019 - 2024. All rights reserved.