ETH搭建联盟链的方法

1 背景

4年前的时候做区块链项目总喜欢自己造轮子,但是代码基本功不好,为了代码能跑起来删去了大量细节和简化了很多内容。最后只成了一个简单的玩具。我目标是在国内建立一个应用程度高的联盟链平台,在实现目标之前先站在巨人的肩膀上,利用以太坊做链端的部署。

2 步骤

使用git clone拉取eth源码仓库,按照文档步骤编译启动。截止到文档编辑日期,使用的版本为geth version 1.13.12

创建一个新目录,然后创建一个genesis.json文件,具体参数不细说,按照需要配置。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
  "config": {
    "chainId": 6452,
    "homesteadBlock": 0,
    "eip150Block": 0,
    "eip155Block": 0,
    "eip158Block": 0,
    "byzantiumBlock": 0,
    "constantinopleBlock": 0,
    "petersburgBlock": 0,
    "istanbulBlock": 0,
    "berlinBlock": 0,
    "londonBlock": 0,
    "clique": {
      "period": 15,
      "epoch": 30000
    }
  },
  "difficulty": "0x1",
  "gasLimit": "0x989680",
  "extradata": "0x0000000000000000000000000000000000000000000000000000000000000000ee0b440ff5594029c8260fadccb712cdf021484e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
  "alloc": {
    "0xeE0B440Ff5594029C8260FADCcb712CDF021484e": {
      "balance": "50000000000000000000"
    }
  }
}

geth --datadir ./data init genesis.json 初始化节点

geth –datadir ./data –networkid 6452 –port 6452 –nodiscover –http –http.api “eth,net,web3,personal,miner” –mine –miner.etherbase “0xeE0B440Ff5594029C8260FADCcb712CDF021484e” –allow-insecure-unlock –unlock “0xeE0B440Ff5594029C8260FADCcb712CDF021484e”

0%