我可以在没有 ca-server 的情况下将 rest api 部署到 Hyperledger Fabric 吗?

Can I deploy a rest api to Hyperledger Fabric without ca-server?

我已成功按照此存储库的说明进行操作 fabric-network-on-swarm and created a swarm network and successfully install and instantiate my own chaincode that I had already created with convector

我还基于此存储库创建了一个 convector-rest-api

在我的设置中,我使用 cryptogen 创建了证书,但我找不到不使用 fabric-ca-server & [= 将其余的 api 注入我的容器的方法14=]

-- 已编辑 --

(1) 我可以像这样创建自己的 network-profile.yaml 吗?:

name: "Network"
version: "1.0"

channels:
  mychannel:
    orderers:
      - orderer.example.com
    peers:
      peer0.org1.example.com:
        endorsingPeer: true
        chaincodeQuery: true
        ledgerQuery: true
        eventSource: true

organizations:
  Org1:
    mspid: Org1MSP
    peers:
      - peer0.org1.example.com
    adminPrivateKey:
      path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/keystore/9022d671ceedbb24af3ea69b5a8136cc64203df6b9920e26f48123fcfcb1d2e9_sk
    signedCert:
      path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/signcerts/Admin@org1.example.com-cert.pem


orderers:
  orderer.example.com:
    url: grpcs://localhost:7050
    grpcOptions:
      ssl-target-name-override: orderer.example.com
      grpc-max-send-message-length: 4194304
    tlsCACerts:
      path: test/fixtures/channel/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tlscacerts/example.com-cert.pem

peers:
  peer0.org1.example.com:
    url: grpcs://localhost:7051
    grpcOptions:
      ssl-target-name-override: peer0.org1.example.com
      grpc.keepalive_time_ms: 600000
    tlsCACerts:
      path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tlscacerts/org1.example.com-cert.pem

没有添加关于我的信息 certificateAuthorities?

(2) 我使用 crytogenorderer 和我的 peer 生成加密材料。 我应该使用哪个证书作为我的 keyStore 来连接我的 api?

如果您还想注册身份和颁发证书,则需要 fabric-ca。但是,如果您使用自己的 CA 作为 cryptogen,则不需要在 API 处使用 fabric-ca。取而代之的是,您应该定义将用于连接的证书,以及区块链网络的 url。您在以下 link.

处有一个示例

--- 已编辑 ---

已添加以下答案以回应@StPaulis 提出的两个新问题。

  1. 是的,您可以创建自己的 network-profile.yaml。更重要的是,你必须做到。
  2. 您应该使用的凭据是与您为拥有同级的组织生成的用户之一相关的凭据,例如,admin 密钥库和 signcert。