私有(private)以太坊 maxpeer

标签 private ethereum

步骤

  1. 我创建了一个私有(private)节点并使用 --maxpeer 为 1(网络 id =1223123341)
  2. 通过admin.addPeer(enode of user X)成功添加用户的X节点。 (相同的网络 ID 和起源)

根据我的理解,maxpeer 会将可以从网络连接的节点限制为仅 1 个节点(用户的 X 节点)

问题 - 如果用户的 X 节点将其 --maxpeer 更新为 5 并将网络 ID 和创世文件提供给其他节点,是否意味着现在可以有 5 个节点可以连接到该网络?谁控制私有(private)网络中的 maxpeer(例如网络 id =1223123341)

最佳答案

如果您想避免 51% 攻击,您应该考虑运行许可链。您可以通过将工作量证明或权益网络的创世区 block 保持私有(private)来实现这一点,但您必须与网络中的任何参与者共享它,并且您不知道这是否会发生。可能会在某个时候泄露。如果确实如此,则无法阻止其他用户参与。

另一种选择是使用权威证明网络。 Geth 和 Parity support那。这仅允许严格定义的节点来密封区 block ,其他人只能使用网络,但不能更改当局定义的规则集。

注意:我为 Parity 工作。

关于私有(private)以太坊 maxpeer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49922140/

相关文章:

python - python类中私有(private)变量的实际实现

c - 为什么我不能将 "private"函数声明为静态的,而我根本不能将它放在头文件中?

android - 公共(public)或私有(private),Android变量真的很重要吗

python - 通过属性与通过文档的只读属性

node.js - Solana 程序发送多个lamport 传输并发出事件

blockchain - Chainlink 是否将 Oracle 对交易的响应存储在区 block 链上的某个位置?

blockchain - Ethereum Web3.js 无效的 JSON RPC 响应 : ""

javascript - Solidity 事件未被调用

javascript - 如何使用 web3.js 1.0 认证和发送合约方法

java - 'public static final' 还是带有 setter/getter 的 'private static final'?