首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在授权的私有链证明中添加更多的授权节点

如何在授权的私有链证明中添加更多的授权节点
EN

Ethereum用户
提问于 2018-02-09 11:29:56
回答 4查看 2K关注 0票数 1

场景:我正在运行一个拥有一些授权节点的私有链。整个网络运行良好。

  • 如何在网络中添加更多的授权节点。而不是在成因文件中定义的。
  • 尝试1我修改了网络中所有节点的成因文件并重新启动它们。他们都同意新的权威。它已经被网络所接受。
  • 问题现在,我添加了一个新的非授权节点与更新的成因文件。它不能正确同步,而是在错误:NotProposer(不匹配{预期:00ad89.,查找:0068.(})
  • 可能的解决方案--我改变了成因,删除了先前添加的一个授权,并尝试同步它。它正确地同步到添加权限的块。然后停止同步。然后,我再次修改成因,以添加该权限,使其同步到最新的块。

我不确定这是否是在网络中添加授权节点的正确方式?

信息:我运行光环共识引擎使用平价。

EN

回答 4

Ethereum用户

回答已采纳

发布于 2018-04-13 03:59:29

我在成因中指定了授权地址,所以为了改变这一点,我需要分叉我的链。并指定新的验证器/当局将在其中生效的块:

古老的创世是这样的:

代码语言:javascript
运行
复制
"engine": {
    "authorityRound": {
        "params": {
            "stepDuration": "5",
            "validators": {
                "list": [
                    "0x0.........8c9606a754bb5aa561a9ec6c283695",
                    "0x0.........91ed16e1ede42c6b2e3f5801701e05",
                    "0x0.........0b08407ee70e974009af14b650ab08",
                    "0x0.........0b4c529b06622f944e7f0007568256",
                    "0x0.........c237037bd59a5bf36cc15f097a18a1"
                ]
            },
            "maximumUncleCountTransition": 9000,
            "maximumUncleCount": 0
        }
    }
}

现在我想在这个列表中添加更多的地址。因此,在新的创生中,我可以使用multi列表。它应该包含新的验证器何时生效的信息。新的创世会是这样的:

代码语言:javascript
运行
复制
"engine": {
    "authorityRound": {
        "params": {
            "stepDuration": "5",
            "validators": {
                "multi": {
                    "0": {
                        "list": [
                            "0x0.........8c9606a754bb5aa561a9ec6c283695",
                            "0x0.........91ed16e1ede42c6b2e3f5801701e05",
                            "0x0.........0b08407ee70e974009af14b650ab08",
                            "0x0.........3b4c529b06622f944e7f0007568256",
                            "0x0.........c237037bd59a5bf36cc15f097a18a1"
                        ]
                    },
                    "414437": {
                        "list": [
                            "0x0.........8c9606a754bb5aa561a9ec6c283695",
                            "0x0.........91ed16e1ede42c6b2e3f5801701e05",
                            "0x0.........0b08407ee70e974009af14b650ab08",
                            "0x0.........3b4c529b06622f944e7f0007568256",
                            "0x0.........c237037bd59a5bf36cc15f097a18a1",
                            "0x0.........d18c1521383a798b151c2b252ed774"
                        ]
                    },
                    "432727": {
                        "list": [
                            "0x0.........8c9606a754bb5aa561a9ec6c283695",
                            "0x0.........91ed16e1ede42c6b2e3f5801701e05",
                            "0x0.........0b08407ee70e974009af14b650ab08",
                            "0x0.........0b4c529b06622f944e7f0007568256",
                            "0x0.........9237037bd59a5bf36cc15f097a18a1",
                            "0x0.........818c1521383a798b151c2b252ed774",
                            "0x0.........253452bb06ebc3657ce438150aaeb6"
                        ]
                    }
                }
            },
            "maximumUncleCountTransition": 9000,
            "maximumUncleCount": 0
        }
    }
}
票数 0
EN

Ethereum用户

发布于 2018-04-17 15:37:49

OP声明他们使用的是奇偶,我一开始就忽略了这一点。但是对于一般的信息,下面是PoA网络上的geth用户的过程。

使用

代码语言:javascript
运行
复制
clique.propose('....')

必须为新节点创建一个帐户。

代码语言:javascript
运行
复制
geth --datadir ... new account

然后添加clique.propose(..)到大多数节点。尽力确保安全。

票数 3
EN

Ethereum用户

发布于 2018-04-12 13:42:34

你可以试一试https://github.com/paritytech/parity-deploy。通过跑步:

代码语言:javascript
运行
复制
$ ./parity-deploy.sh --config aura

您应该从dockerCompose.yml输出中看到权威链证明所需的配置。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/39080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档