以太坊创世区块私有网络

10

我发现那个页面也很难理解。 - darkace
5个回答

8
{
    "nonce": "0x0000000000000042",
    "difficulty": "0x000000100",
    "alloc": {

    },
    "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "coinbase": "0x0000000000000000000000000000000000000000",
    "timestamp": "0x00",
    "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "gasLimit": "0x16388"
}

这对我有用。它基本上是一个空的创世块,没有任何初始块销售。 - philipkd

5
你可以直接使用这里生成的文件,并修改账户和余额。
另外,将gas限制设置为更高的数字,例如0x2dc6c0(3百万),并将难度下降到0xb

3
您可以创建任何您喜欢的创世块,只要它符合黄皮书4.3.4区块头有效性的要求。
创世块不指示矿工在哪个区块链上工作。这是通过连接到正确的点对点网络或者如果您正在使用具有多个运行区块链的网络上的发现机制,则使用网络ID来定义的。
创世块描述了该特定块的参数,并根据矿工算法进行设置。当然,任何非法行为都将被共识机制拒绝。
总之,您可以为所有自定义区块链使用相同的创世块。
必须正确验证的数学值是nonce(工作证明)、mixhash(Fowler-Noll-Vo简化DAG值集)和时间戳(创建时间)。此示例中的极客值是从原始Frontier发布的创世块中复制的。parentHash指向链中的父块,而创世块是唯一允许和需要0的块。alloc允许“预填”以太帐户,但这里不需要,因为我们可以非常快速地挖掘以太币。
难度定义了矿工(哈希)算法找到有效块所需满足的条件。在测试网络上,通常保持较小,以便每次迭代都能找到一个块。这对于测试是有用的,因为需要在区块链上执行交易。块生成频率是区块链的响应时间。
gasLimit是交易可以燃烧的Gas的上限。它被继承到下一个块中。extraData是32个字节的自由文本,您可以在其中将智能内容永久保存在区块链上 :) coinbase是获得挖掘和交易执行奖励(以以太币计)的地址,对于此块而言,它可以为0。因为它将根据发现块的矿工的coinbase(并添加交易)为每个新块设置。
我在这里详细记录了一些内容。
希望这可以帮助您 :)

2
{
"config": {
           "chainId":2010,
           "homesteadBlock":0,
           "eip155Block":0,
           "eip158Block":0
           },
"gasLimit": "0x8000000",     
"difficulty": "0x400",
"alloc": {}
}

只有上述属性在Geth版本1.9 (go1.9)中被接受。


-1

具体来说,这篇简短的文章 很好地解释了私有网络的创世块构建。

我想在这里提到的一件事是,创世块唯一的区别就是它没有对前一个块的引用。


虽然这理论上回答了问题,但最好在此处包含答案的基本部分,并提供参考链接。 - q9f

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接