主页 > imtoken安卓版钱包 > 区块链学习(三)Windows下搭建以太坊私链环境
区块链学习(三)Windows下搭建以太坊私链环境
虽然在Windows下搭建以太坊区块链开发环境可能会出现各种未知错误,但大家还是要积极探索。
一:安装geth客户端
Windows 需要 64 位系统。 从官网下载编译好的win64客户端。 下载解压后只有一个Geth.exe要价。 只需运行并安装。 下载地址如下:
安装完成后,使用cmd命令打开命令行,进入你安装geth的目录,输入geth –help命令。 如果如下图输出了很多geth的信息,说明安装成功。 当前的geth命令只能在geth对应的目录下使用。 如果想在任意目录下使用geth命令,只需将安装geth的目录路径添加到系统环境变量path即可。
二:配置自己的创建文件:
配置自己的创世块的目的是为了区分公链。 在同一个网络中,创世块必须相同,否则无法连接。 将名为genesis.json的初始创世块文件放在刚才的Geth安装目录下
文件内容为:
{
“随机数”:“0x0000000000000042”以太坊区块链信息存储在哪里,
“混合哈希”:“0x0000000000000000000000000000000000000000000000000000000000000000”,
“难度”:“0x4000”,
“分配”:{},
“币库”:“0x0000000000000000000000000000000000000000”,
“时间戳”:“0x00”,
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "PICC创世块",
“gasLimit”:“0xffffffff”
}
三:启动私有节点
关闭后这里也用这个方法启动
进入安装Geth的目录,前提是已经放置了配置的genesis.json文件,执行以下命令:
geth --datadir "%cd%\chain" initgenesis.json
创建数据存储地址并初始化创世块
Geth --identity "PICCetherum" --rpc --rpccorsdomain "*" --datadir "%cd%\chain" --port "30303" --rpcapi "db,eth,net,web3" --networkid 95518 控制台
当你看到如下图,就说明启动成功了。
启动节点后,进入geth命令行模式,根据提示输入personal.newAccount()并输入密码,就会为你创建一个新账户。
(打开geth控制台的命令:geth -datadir "%cd%\chain" console(在你的geth目录下))
四:下载安装图形化钱包:
下载链接:
找到Ethereum-Wallet-win64-xxx.zip,下载并安装。 按照以上步骤后(不要关闭命令行启动节点)
在运行这个钱包的前提下,运行Ethereum-Wallet.exe,即启动成功。 如果区块链正常,会在右上角显示“PRIVATE-NET”,点击“LAUNCH APPLICATION”进入图形界面。
五:连接其他节点:
首先你需要知道自己的节点信息,在Geth命令行界面输入命令以太坊区块链信息存储在哪里,注意大小写
管理节点信息
系统会显示
enode:“enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b30.d7302@0.302”
在
enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d7403@0.0.0
是自己节点的信息,注意把“0.0.0.0”换成自己的IP。 要将此信息发送到其他节点,请在其他节点的命令行中输入:
admin.addPeer('enode://1e3c1727cd3bee9f25edeb5dbb3b880e03e41f8eec99566557f3ee0422734a8fcad17c161aa93d61bdbfb28ed152c143c7eb501db58bc63502a104a84b62d742@192.168.1.101:30303')
如果添加成功,输入admin.peers会显示新添加的节点。
六:
命令开始挖矿:
miner.start()
结束挖矿:
矿工。 停止()
注意:geth的一些操作命令必须在geth命令行模式下执行,即在节点启动后执行。