DigiCurrency 板


LINE

图文版:http://bit.ly/2MwWY7G Line@:https://line.me/R/ti/p/%40mibinews *非常建议各位阅读图文版,纯文字很难懂... 大家也许还对节点如何挖矿运作、如何执行交易…等等,感到难以理解。身体力行也许是可以让人最快理解的方式,就让我们来试着建立一个私人以太坊,更进一步了解这个生态圈的运作方式 看完这篇文章你可以了解到以下几点: 1) 如何建立一个私人的以太坊(建立於AWS linux) 2) 如何用挖矿赚取回报 3) 帐号之间如何进行汇款交易 *了解以上项目只需要花你15分钟的时间* 第一步:登入 AWS 帐号,并启动一台EC2 主机 重点1:选择Ubuntu OS 作为安装的 linux 版本 重点2:Instance Type 选择至少 t2.medium 以上规格(相关文章指出此规格以上比较能让以太坊正常运作,在这里先不讨论主机规格会对节点造成的影响) 重点3:设置正确的TCP port (节点之间预设互相Peering 的Port 是 30303,故要设定一port range 或单一port 皆可) 重点4:储存好 key pair 并 launch instance 第二步:安装以太坊节点 重点1:开启你电脑里的Terminal 软体(中文是"终端机")并使用上一步骤产生的key pair 登入aws 主机(本登入步骤只适用Mac 使用者,如果你是Windows 使用者,建议使用PuTTY 软体) 使用Terminal 进入存放key pair 的指令可用: cd 以我自己为例:cd /Users/ryanhu/Documents/Ethereum 重点2:安装节点所需的相关软体 输入以下 4个指令 *此处安装的是PPA(Personal Package Archive) 版本以太坊节点。有开发测试所需要的软体,且预设不会与整个以太坊同步,可大大降低安装时间* $ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa:ethereum/ethereum $ sudo apt-get update $ sudo apt-get install ethereum 输入以下指令以产生一 Genesis.json 档案(此档案用於初始化节点) $ sudo vim Genesis.json 复制贴上下方json 文字於 Genesis.json 里并存档(相关设定参数暂不讨论,会再另起文章详细说明,此时只需先记住此节点 chainId 设定是 885(你可变更为任意数字)) *复制好json 文字後可用 :i 指令(分号+i+enter)让vim 模式变成编辑模式,此时再用ctrl + v 即可贴上* *贴上後再用:wq 指令(分号+w+q+enter)存档并离开vim 编辑模式* { "config": { "chainId": 885, "homesteadBlock": 0, "eip155Block": 0, "eip158Block": 0 }, "nonce": "0x0000000000000042", "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000", "difficulty": "0x200", "alloc": {}, "coinbase": "0x0000000000000000000000000000000000000000", "timestamp": "0x00", "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", "gasLimit": "0xffffffff", "alloc": { } } 使用geth 指令及 Genesis.json 档案,开始初始化节点 $ sudo geth init Genesis.json 第三步:开始测试节点 重点1:进入geth console 模式 如果此时你不是管理者身份,无法使用指令,会出现permission denied 的错误讯息,所以请先用以下指令切换成管理者身份 $ sudo -s 用geth console 指令进入节点的指令模式。nodiscover 表示不搜寻其它节点与不与其它节点沟通 $ geth --nodiscover console 重点2:替此节点新增第一个帐号 > personal.newAccount() 输入此指令後,会被要求替此帐号设定密码。密码设定完成後,即会产生第一组的public address,也就是所谓的创始帐号 用此指令查看一下第一组address 里有多少ether > web3.fromWei(eth.getBalance(eth.accounts[0]), "ether") 虽然一开始创始帐号里是没有钱的,但是我们仍然还是有2种方式可以让此帐号里有ether: 在设定Genesis.json 时,指定一笔金额给创始帐号(之後的文章会详细解说) 自己挖矿(本教学的其中一个目的,故我们一开始先不给创始帐号任何ether) 重点3:开始挖矿啦! 为了让挖矿过程中的每个步骤都一目了然,我们先用以下指令离开指令模式 > exit 然後使用以下指令重新进入指令模式。此指令的用意在於让geth 的每一步骤都输出到 process.log 这个档案里 $ geth --nodiscover console 2>> process.log 这时侯再请打开另一个Terminal 视窗,然後同样登入此aws instance,并输入以下指令。此指令可让你随时查看最新的log $ tail -f process.log 於指令视窗输入以下指令,开始挖矿! > miner.start() 此时可於log 视窗看出正在为创世区块产生DAG(Directed Acyclic Graph 演算法,也就是以太坊目前所使用的按术) 等待几分钟後,节点就会开始进行挖矿 经过几分钟的挖矿,一但有区块被挖取完毕,此时用指令再次查看帐号余额会发现已经有ether 在内 挖矿测试完毕。此时可用以下指令让节点停止挖矿 > miner.stop() 第四步:新增另一个节点,用於测试帐号之间的交易 重点1:重覆以上的第一步(登入 AWS 帐号,并启动一台EC2 主机)及第二步(安装以太坊节点) *於第二步安装节点时,Genesis.json 里的 chain id 仍需指定为885。故於此教学,直接复制第一个节点的Genesis.json 的内容即可* 重点2:也在第2个节点里创立一个新的帐号 重点3:让此2节点互相关联 (Peering) 可以分别在两个节点视窗输入以下指令,查看目前有哪些节点与自己Peering > admin.peers 可以看得出来2个节点的结果均显示为空,没有任何的节点与之相关联 开始关联2个节点 用以下指令在 “第1个节点” 取得节点资料 > admin.nodeInfo.enode *enode 指的就是 Ethereum node* 以我的例子来说,第1个节点的资料长这样 “enode://ddbae8da7bbcc5002341e919d05a88707dc15ea13ed5638c1297d8c6f744bb2232f7e0900833f0f2646ee7a97db011af83e8df3203fadec550779813dcb3a102@[::]:30303?discport=0” 此时请打开 “第2个节点” 的视窗,并依照你自己的节点资料,输入如下指令 > admin.addPeer("enode://ddbae8da7bbcc5002341e919d05a88707dc15ea13ed5638c1297d8c6f744bb2232f7e0900833f0f2646ee7a97db011af83e8df3203fadec550779813dcb3a102@123.456.789.888:30303?discport=0") *把[::] 换成第1个节点的IP,port 用 30303。此处范例我的IP是123.456.789.888* *此指令的用意,是要告诉第2个节点让它去Peering 第1个节点* *可以在aws instance 的页面找到第1个节点的IP* 此时再分别去2个节点视窗输入以下指令,可以看出目前2个节点已互相关联(只需要作1次,让Node 2 peering Node 1 即可) > admin.peers 重点4:开始让2个节点互相转帐吧 目前只有第1个节点有ether 所以我们先打开节点1 的视窗,然後再次输入以下指令确认一下ether 金额 > web3.fromWei(eth.getBalance(eth.coinbase), "ether") 输入以下指令解锁创始帐号 (需先输入密码解锁帐号,否则无法转帐) > personal.unlockAccount(eth.coinbase) 输入以下指令让Node 1 的创始帐号转帐400 ether 给Node 2 的创始帐号 (请更换成你自己Node 2的创始帐号) > eth.sendTransaction({from: eth.coinbase, to: "0x504008e1d457B7DAa4F247F51e7Bcc1F209E017e", value: web3.toWei(400, "ether")}) 忘了自己Node 2的创始帐号是什麽吗?进到节点2 後,可以输入以下指令查询 > eth.coinbase 还记得我们刚才有开了个可以监看所有步骤的log 视窗吗?打开它,你可以看到转帐的指令有确实送出 但此时仍然尚未转帐成功,可以到节点2 去查看ether 余额,仍然是为0 为什麽呢?因为目前2个节点都没有启动矿工挖矿,所以交易转帐不会被确认,节点2 自然也就收不到应该有的ether 再次用以下指令让节点开始挖矿吧(此时不论用节点1 或节点2 启动挖矿都能够确认完成交易,但为了证明ether 是由节点1 转帐过去,故我们仍然是由节点1 来进行挖矿) > miner.start() 过一点时间後 (我大概等不到30秒) 再去查看节点2 的余额 有!钱!了! 以上就是本次的教学文章,有任何问题欢迎提出批评指教,也请持续支持关注密币电报 :) Line@:https://line.me/R/ti/p/%40mibinews --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.160.20.181
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DigiCurrency/M.1535101336.A.8CE.html ※ 编辑: dodoshan (1.160.20.181), 08/24/2018 17:05:18
1F:推 DarkerDuck: 推~~ 08/24 17:06
2F:推 Fice: 推 08/24 17:06
3F:→ DarkerDuck: 不过你图文版连结有问题 08/24 17:06
※ 编辑: dodoshan (1.160.20.181), 08/24/2018 17:07:31 ※ 编辑: dodoshan (1.160.20.181), 08/24/2018 17:11:16
4F:→ dodoshan: 感谢版大~已经修正好了,原文标题过长哈哈 08/24 17:12
5F:→ DarkerDuck: 本版也欢迎优文放BTC,ETH等加密货币打赏地址 08/24 17:13
6F:推 love010431: 推 08/24 18:49
7F:推 kvnjung: 推! 08/24 19:10
8F:推 Lun0103: 推 08/24 19:20
9F:推 Allen0835690: 推推 08/24 19:20
10F:推 aabb927: 推 08/24 19:58
11F:推 justben: 推~ 08/24 20:33
12F:推 now99: 推~ 08/24 20:47
13F:推 justinoqo: 推 08/24 21:28
14F:推 kugwa: 狂耶 私下测试网路懒人包 08/24 21:44
15F:推 ketao: 推 这真的要看图文 08/24 23:27
16F:推 j0hcehqf: 进阶模拟如何高gas引诱矿工优先处理进行ddos 08/25 03:53







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP