2

我正在使用 Hyperledger Fabric SDK for node.js 来注册用户。我正在使用代码在结构中进行部署。它使用 FileKeyValueStore(使用文件来存储键值)来存储客户端的用户凭证。
我想使用 CouchDBKeyValueStore 将用户密钥存储在 CouchDB 数据库实例中。我需要在用于凭据存储的客户端连接配置文件配置文件和代码中进行哪些更改。任何指向示例代码的链接也将有所帮助。

4

1 回答 1

3

连接配置文件中没有内置支持使用CouchDBKeyValueStore,但您仍然可以将连接配置文件用于 Fabric 网络配置的其余部分。然后,您需要使用客户端 API 来配置商店。就像是

const Client = require('fabric-client');
const CDBKVS = require('fabric-client/lib/impl/CouchDBKeyValueStore.js');

var client = Client.loadFromConfig('test/fixtures/network.yaml');

// Set the state store
let stateStore = await new CDBKVS({url: 'https://<USERNAME>:<PASSWORD>@<URL>', name: '<DB_NAME>'})
client.setStateStore(stateStore);

// Set the crypto store
const crypto = Client.newCryptoSuite();
let cryptoKS = Client.newCryptoKeyStore(
    CDBKVS,
    {
      url: 'https://<USERNAME>:<PASSWORD>@<URL>.cloudant.com',
      name: '<DB_NAME>'
    }
);
crypto.setCryptoKeyStore(cryptoKS);
client.setCryptoSuite(crypto);

官方文档参考
使用 Fabric Node SDK 在 IBM Cloudant 中存储 Hyperledger Fabric 证书和密钥

于 2019-01-22T13:30:15.133 回答