从零开始搭建以太坊区块链

最近区块链技术很火,以太坊是区块链技术的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-ethereummake 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文件生成完毕。。。


后续,以太坊钱包的开发。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容