版权声明
首发自微信公众号:新个体
作者:飞帅
✎写在前面:
这里是以太坊开发系列课程,我将带你从技术开发的角度理解以太坊,深入区块链底层,以最清晰的视角与区块链零距离亲密接触。
在这里,我将带你挖矿,开发自己的代币,编写智能合约还有其他有趣的Dapp应用!
02、以太坊windows下的开发环境搭建(https://www.jianshu.com/p/e25e804399ec)
本期内容:
搭建以太坊网络
使用mist钱包
挖矿生成以太币
首先来一张挖矿效果图,可以看到账号中ETH的增加
一、搭建以太坊网络
智能合约是运行在以太坊网络中的,所以做智能合约的开发就必须搭建一个以太坊网络。我们通常编写完一个智能合约,首先需要将合约发布的一个测试的以太坊网络中进行测试,测试没问题之后可以发布到以太坊主网络中去。
以太坊的主网网络目前已经很庞大,搭建生产环境的以太坊网络就是要成为网络的一个节点。这需要下载大量的节点数据,并且部署以太坊智能合约和智能合约的运行都需要消耗gas。对于我们开发而言完全没有必要去搭建一个以太坊节点连接到真实的以太坊主网环境中。
这里搭建两种以太坊网络进行智能合约的开发测试:
❈
1、以太坊测试网络
2、以太坊本地私有网络
❈
1.1、以太坊测试网络
以太坊官方提供了一个测试网络testnet用于开发测试使用,以太坊节点网站https://www.ethernodes.org/network/2可以看到测试网络的一些信息。
这是测试网络的全球算力分布图:
下面开始搭建私有网络:
打开window终端:
输入命令:
geth --testnet --syncmode "fast" --rpc --rpcapi db,eth,net,web3,personal --cache=256 --rpcport 8545 --rpcaddr 127.0.0.1 --rpccorsdomain "*"
如果你依照开头的前置文章安装过geth,那么终端就会开始同步以太坊测试网络的区块数据,这个过程可能很漫长。
1小时之后进入目录:
C:\Users\你的用户名\AppData\Roaming\Ethereum\geth\chaindata
你能看到同步区块数据:
同步完所有的区块数据大概需要2到3天时间!
虽然以太坊测试网络数据没有主网那么大,但是下载数据和挖矿还是很不方便。为了更好的开发和测试智能合约,我们通常搭建自己的以太坊私有网络
1.2、搭建以太坊本地私有网络
使用geth命令行工具构建本地私有测试网络需要指定以下参数信息:
自定义Genesis文件
自定义数据目录
自定义网络ID
1、Genesis文件是一个json文件,描述了创世区块的信息:
新建一个gen.json文件,复制如下内容:
{
"nonce": "0x0000000000000014",
"timestamp": "0x00",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"extraData": "0x00",
"gasLimit": "0x8000000",
"difficulty": "0x400",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x3333333333333333333333333333333333333333",
"alloc": {
},
"config": {
"chainId": 1,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
}
}
2、指定一个目录用来存放区块数据,比如 E:\bc_data\eth_private
3、网络id可以随便指定,这里指定10
在终端在输入下面命令初始化私有网络:
geth --identity "private_net_node" --rpc --rpccorsdomain "*" --datadir "E:\bc_data\eth_private" --rpcapi "db,eth,net,web3" --networkid 10 init "./gen.json"
出现以上界面,表示初始化网络成功!
启动私有网络:
geth --datadir "E:\bc_data\eth_private" --identity "private_net_node" --rpccorsdomain "*" --networkid 10 console
私有网络启动成功,结果如下!
二、使用Mist钱包
启动私有网络后打开Mist钱包,出现如下界面:
注意右上角出现Private-net,说明连接到了刚才启动私有网络。
Mist钱包中我们先新建一个账号
点击新增账号,输入密码即可创建账号,如下图!
三、挖矿生成ETH
终端中输入命令:miner.start() 即可开始挖矿!
在Mist钱包上可以看到账号中ETH金额的变化!
下期内容预告:
1、开发第一个智能合约
2、智能合约的部署
3、智能合约的执行
领取专属 10元无门槛券
私享最新 技术干货