Ubuntu下以太坊私链搭建

Setp 1 环境搭建

  • Geth客户端的安装
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum

Setp 2 创世区块的建立与修改

在目录中新建一个eth文件夹,在其中创建一个genesis.json文件存放创世区块的配置

{
  "config": {
        //创建的区块链的ID,以太坊主链ID是1.
        "chainId": 21,
        //homesteadBlock为0表示使用ethereum homestead release,Homestead是第二个重要的以太坊版本
        "homesteadBlock": 0,
        //eip155Block为0表示,该块支持EIP(ethereum改进建议)155.EIP描述了以太坊平台的标准,包括核心    
        //协议规范,客户端API和合同标准
        "eip155Block": 0,
        //eip158Block为0表示,该块支持EIP(ethereum改进建议)158
        "eip158Block": 0
    },
  //用来预置账号以及账号的以太币数量,应该也就是所谓的预挖
  //我这里不需要预挖,所以给了个空对象
  //如果需要可以这样加
  //"alloc": {
  //"0x0000000000000000000000000000000000000001": {"balance": "111111111"},
  //"0x0000000000000000000000000000000000000002": {"balance": "222222222"}
  //}
  "alloc"      : {},
  //币基地址,也就是默认的钱包地址,因为我没有地址,所以全0,为空
  //后面运行Geth后创建新账户时,如果Geth发现没有币基地址,会默认将第一个账户的地址设置为币基地址
  //默认矿工账号,挖矿成功时会默认吧所得的挖矿奖励存入这个帐号
  "coinbase"   : "0x0000000000000000000000000000000000000000",
  //挖矿难度,你可以随便控制哦,这里设置的难度比较小,因为我喜欢钱来得快
  "difficulty" : "0x4000",
  //附加信息,随便填个文本或不填也行,类似中本聪在比特币创世块中写的报纸新闻
  "extraData"  : "",
  //gas最高限制,以太坊运行交易,合约等所消耗的gas最高限制,限制区块能包含交易信息的总和,这里 
  //设置为最高
  "gasLimit"   : "0xffffffff",
  //64位随机数,用于挖矿,注意他和mixhash的设置需要满足以太坊黄皮书中的要求
  //直接用我这个也可以
  "nonce"      : "0x0000000000000042",
  //由上一个区块的一部分生成的Hash,和Nonce组合用于找到满足POW算法的条件
  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
  //上一个区块的Hash值,因为是创世块,石头里蹦出来的,没有在它前面的,所以是0
  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
  //创世块的时间戳,这里给0就好
  "timestamp"  : "0x00"
}

同时在eth目录下创建一个data文件用于存放区块链数据

geth --datadir eth/data --networkid 20181110 --port 16333 --rpcport 8564 init genesis.json哦

--datadir 选择区块数据存放的位置
--networkid 表示制定私有链的网络id为20181110.以太坊公网id是1,如果不指定默认也是1
--port --rpcport 端口号 注意之后再启动其他节点端口号不能重复
init 表示选择创世区块的数据文件

Setp 3 启动区块链

geth --datadir eth/data --networkid 20181110 --port 16333 --rpcport 8564 console
进入Javascricp控制台

Setp 4 基本操作

  • 创建账户personal.newAccount(''password'')账户创建完成之后会显示一个地址

    创建账户

  • 查看账户列表eth.accounts

  • 挖矿

eth.coinbase//首先设置挖矿默认账户(获得挖矿钱的账户)
personal.unlockAccount(eth.accounts[0],''password'',time) //将账户解锁 时间可以设置长一些
miner.start(x) //开启挖矿 x代表启用的线程
miner.stop() //停止挖矿
  • 查看账户余额
    eth.getBalance(''account_address'')
  • 转账
    web3.eth.sendTransaction({from:'A_address',to:'B_address',value:web3.toWei(x)})
    这时查询B账户余额并不能查到,因为交易信息还在交易池中,没有被区块确认
    txpool.status //查看交易池中的信息
    交易池中的信息

    在启动挖矿之后B就能收到转账的钱

Setp 5 多节点接入

在eth目录下新建一个data1文件 加载创世区块并链接如之前的私链网络

geth --datadir eth/data1 --networkid 20181110 --port 16334 --rpcport 8565 init genesis.json

networkid一定要相同,因为要连入一个相同的私链网络,但是port rpcport不能一样
之后启动方式同之前一样
查看B的节点信息
admin.nodeInfo.enode

节点B节点信息.png

之后在节点A的控制台中添加B节点信息
admin.addPeer(''node_B'')

静态添加节点

在/node1/geth/ 下创建static-nodes.json文件,将需要加入的节点的enode信息加入 ','分隔

["enode://f4642fa65af50cfdea8fa7414a5def7bb7991478b768e296f5e4a54e8b995de10
2e0ceae2e826f293c481b5325f89be6d207b003382e18a8ecba66fb
 af6416c0@172.16.29.11:30303"]

之后重启节点,输入net.peerCount就可以查看节点已经连入网络中

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,776评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,527评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,361评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,430评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,511评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,544评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,561评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,315评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,763评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,070评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,235评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,911评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,554评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,173评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,424评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,106评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,103评论 2 352

推荐阅读更多精彩内容