本文主要是介绍从零开始搭建以太坊区块链,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近区块链技术很火,以太坊是区块链技术的2.0应用,以其智能合约的功能给区块链增加了无限可能,今天来说下怎么从零开始搭建以太坊。
(本文开发环境是Mac/Linux, 以太坊客户端是Go-ethereum,简称Geth)
安装Geth前,要装Go环境,点击Go官网下载
Mac 中用Homebrew安装Geth:
brew tap ethereum/ethereum brew install ethereum
或者在github上clone下源码,然后直接make
git clone https://github.com/ethereum/go-ethereum
cd go-ethereum
make geth
添加环境变量,然后检查是否安装成功
geth version
环境安装完毕,开始搭建区块链
新建文件夹,存放你的区块链数据。文件夹里面新建一个叫genesis.json的配置文件,以创建自己的创世块。
配置文件的内容:
{"config": {"chainId": 10, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "coinbase" : "0x0000000000000000000000000000000000000000", "difficulty" : "0x020000", "extraData" : "", "gasLimit" : "0x2fefd8", "nonce" : "0x0000000000000042", "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", "timestamp" : "0x00", "alloc" : {} }
初始化,创建创世区块
cd 你的文件夹
geth --datadir data init genesis.json
此处,--datadir是保存数据的目录,我们放在当前文件夹下一个叫data的目录下;
init 是初始化的配置。
启动节点
geth --datadir data --networkid 1108 console
此处,--networkid是表示此链的网络id为1108,以太坊的公网id是1;
console表示进入js的控制台。
此时应当进入js的控制台中。
基本命令
查看账户
> eth.accounts []
创建账户
> personal.newAccount()
查看账户余额 > eth.getBalance(eth.accounts[0]) 0
开始挖矿 > miner.start()
停止挖矿
> miner.stop()
第一次挖矿要等待一段时间,直至DAG文件生成完毕。。。
后续,以太坊钱包的开发。。
这篇关于从零开始搭建以太坊区块链的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!