2

我在 4 台基于 vagrant ubuntu 的机器上设置了 4 个节点。我已经使用以下命令生成了这些节点所需的密钥:init_indy_node VAL1 0.0.0.0 9701 0.0.0.0 9702 111111111111111111111111111N1. 根据文档,有一个名为的脚本generate_indy_pool_transactions,它生成具有预定义节点名称的密钥,即 Node1、Node2,并生成始终相同的密钥。

我想用我生成的密钥创建我的自定义网络。我找不到任何文件来生成创世交易文件。

有没有办法生成这个文件,以便我可以引导我的网络?

欢迎任何建议/意见。

4

2 回答 2

2

genesis_from_files.py欢迎您尝试以下脚本:https : //github.com/sovrin-foundation/steward-tools/tree/master/create_genesis

如 start-nodes.md 所述,为了设置池,需要执行以下操作:

  • 在配置文件中设置网络名称
  • 生成密钥(init_indy_node 脚本可用于此)
  • 提供创世交易文件,这将是初始池的基础

Indy 没有任何 genesis 文件,因为这取决于基于 Indy 的网络(例如 Sovrin genesis)。

Indy 有一个generate_indy_pool_transactions脚本,它应该只用于测试目的。它根据节点名称生成键(因此,如果在那里传递相同的节点名称,那么键每次都相同)。

因此,关于如何在 Indy 中创建创世文件有以下选项:

  • 手动创建它们。
  • 为 Indy 创建生成脚本做出贡献(我认为 generate_indy_pool_transactions 中的逻辑可以用于此)。
  • 运行 generate_indy_pool_transactions(这将生成密钥和创世文件),然后正确地重新初始化密钥并修改 generate_indy_pool_transactions 中的创世文件以指向正确的密钥。
  • 使用其他帮助脚本,例如 Sovrin Foundation 的脚本:https ://github.com/sovrin-foundation/steward-tools/tree/master/create_genesis (Sovrin 现在是主要的 Indy 部署)。
于 2020-01-27T07:37:09.440 回答
-1

要使用参与者生成的密钥创建自定义网络并生成 pool_transactions_genesis 和 domain_transactions_genesis 文件,您必须使用 indy-plenum。

您可以在以下教程中找到详细信息:

https://taseen-junaid.medium.com/hyperledger-indy-custom-network-with-indy-node-plenum-protocol-ledger-85fd10eb5bf5

您可以在以下链接中找到该教程的代码库:

https://github.com/Ta-SeenJunaid/Hyperledger-Indy-Tutorial

于 2020-11-04T02:25:17.130 回答